2023-10-10 19:50:27 +08:00

1240 lines
50 KiB
XML

<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE TS>
<TS version="2.1" language="en_US">
<context>
<name>ChartAndScoreInput</name>
<message>
<location filename="../../designer/components/chartAndScoreInput.ui" line="20"/>
<source>selectChart</source>
<translation>Select a Chart</translation>
</message>
<message>
<location filename="../../designer/components/chartAndScoreInput.ui" line="44"/>
<source>editScore</source>
<translation>Edit Score</translation>
</message>
</context>
<context>
<name>ChartSelector</name>
<message>
<location filename="../../designer/components/chartSelector.ui" line="26"/>
<source>songIdSelector.title</source>
<translation>Select a Song</translation>
</message>
<message>
<location filename="../../designer/components/chartSelector.ui" line="71"/>
<source>resetButton</source>
<translation>Reset</translation>
</message>
</context>
<context>
<name>DB30TableModel</name>
<message>
<location filename="../../extends/shared/models/tables/b30.py" line="21"/>
<source>horizontalHeader.id</source>
<translation>ID</translation>
</message>
<message>
<location filename="../../extends/shared/models/tables/b30.py" line="22"/>
<source>horizontalHeader.chart</source>
<translation>Chart</translation>
</message>
<message>
<location filename="../../extends/shared/models/tables/b30.py" line="23"/>
<source>horizontalHeader.score</source>
<translation>Score</translation>
</message>
<message>
<location filename="../../extends/shared/models/tables/b30.py" line="24"/>
<source>horizontalHeader.potential</source>
<translation>Potential</translation>
</message>
</context>
<context>
<name>DatabaseChecker</name>
<message>
<location filename="../../startup/databaseChecker.ui" line="23"/>
<location filename="../../startup/databaseChecker_ui.py" line="162"/>
<source>dbPathLabel</source>
<translation>Database path</translation>
</message>
<message>
<location filename="../../startup/databaseChecker.ui" line="33"/>
<location filename="../../startup/databaseChecker_ui.py" line="165"/>
<source>dbFilenameLabel</source>
<translation>Database filename</translation>
</message>
<message>
<location filename="../../startup/databaseChecker.ui" line="64"/>
<location filename="../../startup/databaseChecker_ui.py" line="168"/>
<source>confirmDbPathButton</source>
<translation>Confirm</translation>
</message>
<message>
<location filename="../../startup/databaseChecker.ui" line="117"/>
<location filename="../../startup/databaseChecker_ui.py" line="177"/>
<source>dbVersionLabel</source>
<translation>Database version</translation>
</message>
<message>
<location filename="../../startup/databaseChecker.ui" line="93"/>
<location filename="../../startup/databaseChecker_ui.py" line="171"/>
<source>dbCheckConnLabel</source>
<translation>Database connection</translation>
</message>
<message>
<location filename="../../startup/databaseChecker.ui" line="110"/>
<location filename="../../startup/databaseChecker_ui.py" line="174"/>
<source>continueButton</source>
<translation>Continue</translation>
</message>
<message>
<location filename="../../startup/databaseChecker.py" line="117"/>
<source>dialog.tryInitExistingDatabase</source>
<translation>The existing database doesn&apos;t seem to be initialized properly, try initialize again?</translation>
</message>
<message>
<location filename="../../startup/databaseChecker.py" line="133"/>
<source>dialog.confirmNewDatabase</source>
<translation>Database file does not exist. Create now?</translation>
</message>
</context>
<context>
<name>DbScoreTableModel</name>
<message>
<location filename="../../extends/shared/models/tables/score.py" line="22"/>
<source>horizontalHeader.id</source>
<translation>ID</translation>
</message>
<message>
<location filename="../../extends/shared/models/tables/score.py" line="23"/>
<source>horizontalHeader.chart</source>
<translation>Chart</translation>
</message>
<message>
<location filename="../../extends/shared/models/tables/score.py" line="24"/>
<source>horizontalHeader.score</source>
<translation>Score</translation>
</message>
<message>
<location filename="../../extends/shared/models/tables/score.py" line="25"/>
<source>horizontalHeader.potential</source>
<translation>Potential</translation>
</message>
</context>
<context>
<name>DbTableViewer</name>
<message>
<location filename="../../designer/components/dbTableViewer.ui" line="20"/>
<source>actions</source>
<translation>Actions</translation>
</message>
<message>
<location filename="../../designer/components/dbTableViewer.ui" line="26"/>
<source>actions.removeSelected</source>
<translation>Remove Selected</translation>
</message>
<message>
<location filename="../../designer/components/dbTableViewer.ui" line="46"/>
<source>actions.refresh</source>
<translation>Refresh</translation>
</message>
<message>
<location filename="../../designer/components/dbTableViewer.ui" line="81"/>
<source>view</source>
<translation>View</translation>
</message>
<message>
<location filename="../../designer/components/dbTableViewer.ui" line="89"/>
<source>view.sort.label</source>
<translation>Sort By</translation>
</message>
<message>
<location filename="../../designer/components/dbTableViewer.ui" line="106"/>
<source>view.sort.descendingCheckBox</source>
<translation>Descending</translation>
</message>
<message>
<location filename="../../designer/components/dbTableViewer.ui" line="126"/>
<source>view.filter.label</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../../designer/components/dbTableViewer.ui" line="146"/>
<source>view.filter.configureButton</source>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>FileSelector</name>
<message>
<location filename="../../designer/components/fileSelector.ui" line="45"/>
<source>selectButton</source>
<translation>Select...</translation>
</message>
</context>
<context>
<name>MainWindow</name>
<message>
<location filename="../../designer/mainwindow.ui" line="25"/>
<source>tab.overview</source>
<translation>Overview</translation>
</message>
<message>
<location filename="../../designer/mainwindow.ui" line="30"/>
<source>tab.input</source>
<translation>Input</translation>
</message>
<message>
<location filename="../../designer/mainwindow.ui" line="35"/>
<source>tab.db</source>
<translation>Database</translation>
</message>
<message>
<location filename="../../designer/mainwindow.ui" line="40"/>
<source>tab.ocr</source>
<translation>OCR</translation>
</message>
<message>
<location filename="../../designer/mainwindow.ui" line="45"/>
<source>tab.tools</source>
<translation>Tools</translation>
</message>
<message>
<location filename="../../designer/mainwindow.ui" line="50"/>
<source>tab.settings</source>
<translation>Settings</translation>
</message>
<message>
<location filename="../../designer/mainwindow.ui" line="55"/>
<source>tab.about</source>
<translation>About</translation>
</message>
</context>
<context>
<name>OcrQueue</name>
<message>
<location filename="../../designer/components/ocrQueue.ui" line="22"/>
<source>queue.title</source>
<translation>Queue</translation>
</message>
<message>
<location filename="../../designer/components/ocrQueue.ui" line="28"/>
<source>iccOptionsGroupBox</source>
<translation>ICC Profile Options</translation>
</message>
<message>
<location filename="../../designer/components/ocrQueue.ui" line="34"/>
<source>icc.ignore</source>
<translation>Ignore</translation>
</message>
<message>
<location filename="../../designer/components/ocrQueue.ui" line="41"/>
<source>icc.usePIL</source>
<translation>Use PIL</translation>
</message>
<message>
<location filename="../../designer/components/ocrQueue.ui" line="51"/>
<source>icc.tryFix</source>
<translation>Try fix</translation>
</message>
<message>
<location filename="../../designer/components/ocrQueue.ui" line="61"/>
<source>queue.addImageButton</source>
<translation>Add Image</translation>
</message>
<message>
<location filename="../../designer/components/ocrQueue.ui" line="71"/>
<source>queue.removeSelected</source>
<translation>Remove Selected</translation>
</message>
<message>
<location filename="../../designer/components/ocrQueue.ui" line="81"/>
<source>queue.removeAll</source>
<translation>Remove All</translation>
</message>
<message>
<location filename="../../designer/components/ocrQueue.ui" line="101"/>
<source>queue.startOcrButton</source>
<translation>Start OCR</translation>
</message>
<message>
<location filename="../../designer/components/ocrQueue.ui" line="153"/>
<source>results</source>
<translation>Results</translation>
</message>
<message>
<location filename="../../designer/components/ocrQueue.ui" line="162"/>
<source>results.acceptSelectedButton</source>
<translation>Accept Selected</translation>
</message>
<message>
<location filename="../../designer/components/ocrQueue.ui" line="169"/>
<source>results.acceptAllButton</source>
<translation>Accept All</translation>
</message>
<message>
<location filename="../../designer/components/ocrQueue.ui" line="189"/>
<source>results.ignoreValidate</source>
<translation>Ignore
validation</translation>
</message>
</context>
<context>
<name>OcrTableModel</name>
<message>
<location filename="../../extends/components/ocrQueue.py" line="347"/>
<source>horizontalHeader.title.select</source>
<translation>Select</translation>
</message>
<message>
<location filename="../../extends/components/ocrQueue.py" line="348"/>
<source>horizontalHeader.title.imagePreview</source>
<translation>Image Preview</translation>
</message>
<message>
<location filename="../../extends/components/ocrQueue.py" line="349"/>
<source>horizontalHeader.title.chart</source>
<translation>Chart</translation>
</message>
<message>
<location filename="../../extends/components/ocrQueue.py" line="350"/>
<source>horizontalHeader.title.score</source>
<translation>Score</translation>
</message>
</context>
<context>
<name>ResettableItem</name>
<message>
<location filename="../../designer/components/settings/resettableItem.ui" line="32"/>
<source>resetButton</source>
<translation>Reset</translation>
</message>
</context>
<context>
<name>ScoreEditor</name>
<message>
<location filename="../../designer/components/scoreEditor.ui" line="139"/>
<location filename="../../designer/components/scoreEditor.ui" line="178"/>
<location filename="../../designer/components/scoreEditor.ui" line="225"/>
<location filename="../../designer/components/scoreEditor.ui" line="258"/>
<location filename="../../designer/components/scoreEditor.ui" line="285"/>
<location filename="../../designer/components/scoreEditor.ui" line="292"/>
<location filename="../../designer/components/scoreEditor.ui" line="318"/>
<location filename="../../designer/components/scoreEditor.ui" line="328"/>
<source>setNone</source>
<translation>None</translation>
</message>
<message>
<location filename="../../designer/components/scoreEditor.ui" line="102"/>
<source>formLabel.date</source>
<translation>Time</translation>
</message>
<message>
<location filename="../../designer/components/scoreEditor.ui" line="268"/>
<source>formLabel.comment</source>
<translation>Comment</translation>
</message>
<message>
<location filename="../../designer/components/scoreEditor.ui" line="119"/>
<source>formLabel.preview</source>
<translation>Preview</translation>
</message>
<message>
<location filename="../../designer/components/scoreEditor.ui" line="20"/>
<source>formLabel.score</source>
<translation>Score</translation>
</message>
<message>
<location filename="../../designer/components/scoreEditor.ui" line="278"/>
<source>idAutoInsert</source>
<translation>(Auto insert)</translation>
</message>
<message>
<location filename="../../designer/components/scoreEditor.ui" line="112"/>
<source>warnIfIncomplete</source>
<translation>Warn if incomplete</translation>
</message>
<message>
<location filename="../../designer/components/scoreEditor.ui" line="218"/>
<source>commitButton</source>
<translation>Commit</translation>
</message>
<message>
<location filename="../../implements/components/scoreEditor.py" line="327"/>
<source>validate.ok</source>
<translation>OK</translation>
</message>
<message>
<location filename="../../implements/components/scoreEditor.py" line="65"/>
<source>confirmDialog.chartIncomplete.title</source>
<translation>No chart data</translation>
</message>
<message>
<location filename="../../implements/components/scoreEditor.py" line="66"/>
<source>confirmDialog.chartIncomplete.text</source>
<translation>Chart data incomplete, cannot verify score. Commit anyway?</translation>
</message>
<message>
<location filename="../../implements/components/scoreEditor.py" line="71"/>
<source>confirmDialog.scoreMismatch.title</source>
<translation>Score mismatch</translation>
</message>
<message>
<location filename="../../implements/components/scoreEditor.py" line="72"/>
<source>confirmDialog.scoreMismatch.text</source>
<translation>The entered score may not match the selected chart. Commit anyway?</translation>
</message>
<message>
<location filename="../../implements/components/scoreEditor.py" line="77"/>
<source>confirmDialog.emptyScore.title</source>
<translation>Empty score</translation>
</message>
<message>
<location filename="../../implements/components/scoreEditor.py" line="78"/>
<source>confirmDialog.emptyScore.text</source>
<translation>Score empty. Commit anyway?</translation>
</message>
<message>
<location filename="../../implements/components/scoreEditor.py" line="83"/>
<source>confirmDialog.scoreIncompleteForValidate.title</source>
<translation>Score incomplete</translation>
</message>
<message>
<location filename="../../implements/components/scoreEditor.py" line="84"/>
<source>confirmDialog.scoreIncompleteForValidate.text</source>
<translation>Cannot verify an incomplete score. Commit anyway?</translation>
</message>
<message>
<location filename="../../implements/components/scoreEditor.py" line="212"/>
<source>confirmDialog.chartNotSet.title</source>
<translation>Chart not set</translation>
</message>
<message>
<location filename="../../implements/components/scoreEditor.py" line="213"/>
<source>confirmDialog.chartNotSet.text</source>
<translation>Chart not set, cannot commit.</translation>
</message>
<message>
<location filename="../../implements/components/scoreEditor.py" line="221"/>
<source>confirmDialog.scoreIncomplete.title</source>
<translation>Score incomplete</translation>
</message>
<message>
<location filename="../../implements/components/scoreEditor.py" line="222"/>
<source>confirmDialog.scoreIncomplete.text</source>
<translation>Necessary score field missing, cannot commit.</translation>
</message>
<message>
<location filename="../../implements/components/scoreEditor.py" line="331"/>
<source>validate.chartNotSet</source>
<translation>Chart not set</translation>
</message>
<message>
<location filename="../../implements/components/scoreEditor.py" line="335"/>
<source>validate.chartIncomple</source>
<translation>No chart data, cannot verify</translation>
</message>
<message>
<location filename="../../implements/components/scoreEditor.py" line="339"/>
<source>validate.scoreMismatch</source>
<translation>Possible invalid score</translation>
</message>
<message>
<location filename="../../implements/components/scoreEditor.py" line="343"/>
<source>validate.scoreEmpty</source>
<translation>Empty score</translation>
</message>
<message>
<location filename="../../implements/components/scoreEditor.py" line="347"/>
<source>validate.scoreIncomplete</source>
<translation>Missing necessary score field</translation>
</message>
<message>
<location filename="../../implements/components/scoreEditor.py" line="353"/>
<source>validate.scoreIncompleteForValidate</source>
<translation>Score incomplete, cannot verify</translation>
</message>
<message>
<location filename="../../implements/components/scoreEditor.py" line="358"/>
<source>validate.unknownState</source>
<translation>Unknown</translation>
</message>
</context>
<context>
<name>Settings</name>
<message>
<location filename="../../implements/settings/settingsAndreal.py" line="79"/>
<source>andreal.title</source>
<translation>Andreal</translation>
</message>
<message>
<location filename="../../implements/settings/settingsAndreal.py" line="81"/>
<source>andreal.andrealFolder.label</source>
<translation>Andreal data folder</translation>
</message>
<message>
<location filename="../../implements/settings/settingsAndreal.py" line="82"/>
<location filename="../../implements/settings/settingsAndreal.py" line="85"/>
<location filename="../../implements/settings/settingsGeneral.py" line="107"/>
<location filename="../../implements/settings/settingsOcr.py" line="190"/>
<location filename="../../implements/settings/settingsOcr.py" line="193"/>
<location filename="../../implements/settings/settingsOcr.py" line="196"/>
<location filename="../../implements/settings/settingsOcr.py" line="199"/>
<location filename="../../implements/settings/settingsOcr.py" line="202"/>
<location filename="../../implements/settings/settingsOcr.py" line="205"/>
<source>resetButton</source>
<translation>Reset</translation>
</message>
<message>
<location filename="../../implements/settings/settingsAndreal.py" line="84"/>
<source>andreal.andrealExecutable.label</source>
<translation>Andreal executable</translation>
</message>
<message>
<location filename="../../implements/settings/settingsGeneral.py" line="78"/>
<source>general.dbUrlResetWarning</source>
<translation>Application will now delete this setting and exit. Reboot application manually to specify a new database file. Continue?</translation>
</message>
<message>
<location filename="../../implements/settings/settingsGeneral.py" line="101"/>
<source>general.title</source>
<translation>General</translation>
</message>
<message>
<location filename="../../implements/settings/settingsGeneral.py" line="103"/>
<source>general.language.label</source>
<translation>Language</translation>
</message>
<message>
<location filename="../../implements/settings/settingsGeneral.py" line="104"/>
<source>general.language.followSystem</source>
<translation>Follow system</translation>
</message>
<message>
<location filename="../../implements/settings/settingsGeneral.py" line="106"/>
<source>general.dbUrl.label</source>
<translation>Database URL</translation>
</message>
<message>
<location filename="../../implements/settings/settingsOcr.py" line="187"/>
<source>ocr.title</source>
<translation>OCR</translation>
</message>
<message>
<location filename="../../implements/settings/settingsOcr.py" line="189"/>
<source>ocr.devicesJson.label</source>
<translation>Default devices.json</translation>
</message>
<message>
<location filename="../../implements/settings/settingsOcr.py" line="192"/>
<source>ocr.deviceUuid.label</source>
<translation>Default device</translation>
</message>
<message>
<location filename="../../implements/settings/settingsOcr.py" line="195"/>
<source>ocr.knnModelFile.label</source>
<translation>Default KNearest model</translation>
</message>
<message>
<location filename="../../implements/settings/settingsOcr.py" line="198"/>
<source>ocr.b30KnnModelFile.label</source>
<translation>Default B30 KNearest model</translation>
</message>
<message>
<location filename="../../implements/settings/settingsOcr.py" line="201"/>
<source>ocr.siftDatabaseFile.label</source>
<translation>Default SIFT database file</translation>
</message>
<message>
<location filename="../../implements/settings/settingsOcr.py" line="204"/>
<source>ocr.phashDatabaseFile.label</source>
<translation>Default image PHash database</translation>
</message>
</context>
<context>
<name>SongIdSelector</name>
<message>
<location filename="../../designer/components/songIdSelector.ui" line="23"/>
<source>search.lineEdit.placeholder</source>
<translation>Search...</translation>
</message>
<message>
<location filename="../../designer/components/songIdSelector.ui" line="54"/>
<location filename="../../designer/components/songIdSelector.ui" line="94"/>
<source>previous</source>
<translation>Previous</translation>
</message>
<message>
<location filename="../../designer/components/songIdSelector.ui" line="77"/>
<location filename="../../designer/components/songIdSelector.ui" line="117"/>
<source>next</source>
<translation>Next</translation>
</message>
</context>
<context>
<name>TabAbout</name>
<message>
<location filename="../../designer/tabs/tabAbout.ui" line="79"/>
<source>About Qt</source>
<translation>About Qt</translation>
</message>
<message>
<location filename="../../designer/tabs/tabAbout.ui" line="86"/>
<source>Version Info</source>
<translation>Version Info</translation>
</message>
</context>
<context>
<name>TabDbEntry</name>
<message>
<location filename="../../designer/tabs/tabDbEntry.ui" line="24"/>
<source>tab.manage</source>
<translation>Manage</translation>
</message>
<message>
<location filename="../../implements/tabs/tabDbEntry.py" line="20"/>
<source>tab.scoreTableViewer</source>
<translation>Table [Score]</translation>
</message>
<message>
<location filename="../../implements/tabs/tabDbEntry.py" line="24"/>
<source>tab.b30TableViewer</source>
<translation>Table [B30]</translation>
</message>
</context>
<context>
<name>TabDb_Manage</name>
<message>
<location filename="../../designer/tabs/tabDb/tabDb_Manage.ui" line="23"/>
<source>syncArcSongDbButton</source>
<translation>Sync arcsong.db</translation>
</message>
<message>
<location filename="../../designer/tabs/tabDb/tabDb_Manage.ui" line="30"/>
<source>syncArcSongDb.description</source>
<translation>Update chart info</translation>
</message>
<message>
<location filename="../../designer/tabs/tabDb/tabDb_Manage.ui" line="37"/>
<source>importSt3Button</source>
<translation>Import Score Database</translation>
</message>
<message>
<location filename="../../designer/tabs/tabDb/tabDb_Manage.ui" line="44"/>
<source>importSt3.description</source>
<translation>Import your local score database</translation>
</message>
<message>
<location filename="../../designer/tabs/tabDb/tabDb_Manage.ui" line="58"/>
<source>exportScoresButton</source>
<translation>Export Scores</translation>
</message>
<message>
<location filename="../../designer/tabs/tabDb/tabDb_Manage.ui" line="65"/>
<source>exportScores.description</source>
<translation>Export all your scores to a JSON file</translation>
</message>
<message>
<location filename="../../designer/tabs/tabDb/tabDb_Manage.ui" line="79"/>
<source>importPacklistButton</source>
<translation>Import packlist</translation>
</message>
<message>
<location filename="../../designer/tabs/tabDb/tabDb_Manage.ui" line="86"/>
<source>importSonglistButton</source>
<translation>Import songlist</translation>
</message>
<message>
<location filename="../../designer/tabs/tabDb/tabDb_Manage.ui" line="93"/>
<source>importPacklist.description</source>
<translation>Import packlist file</translation>
</message>
<message>
<location filename="../../designer/tabs/tabDb/tabDb_Manage.ui" line="100"/>
<source>importSonglist.description</source>
<translation>Import songlist file</translation>
</message>
<message>
<location filename="../../designer/tabs/tabDb/tabDb_Manage.ui" line="107"/>
<source>exportArcsongJsonButton</source>
<translation>Export arcsong.json</translation>
</message>
<message>
<location filename="../../designer/tabs/tabDb/tabDb_Manage.ui" line="114"/>
<source>exportArcsongJson.description</source>
<translation>Export arcsong.json file</translation>
</message>
<message>
<location filename="../../designer/tabs/tabDb/tabDb_Manage.ui" line="121"/>
<source>importApkButton</source>
<translation>Import APK</translation>
</message>
<message>
<location filename="../../designer/tabs/tabDb/tabDb_Manage.ui" line="128"/>
<source>importApk.description</source>
<translation>Import packlist and songlist from .apk file</translation>
</message>
</context>
<context>
<name>TabOcrDisabled</name>
<message>
<location filename="../../designer/tabs/tabOcrDisabled.ui" line="81"/>
<source>ocrDisabled.title</source>
<translation>OCR disabled</translation>
</message>
</context>
<context>
<name>TabOcrEntry</name>
<message>
<location filename="../../designer/tabs/tabOcrEntry.ui" line="24"/>
<source>tab.device</source>
<translation>Screenshot</translation>
</message>
<message>
<location filename="../../designer/tabs/tabOcrEntry.ui" line="29"/>
<source>tab.b30</source>
<translation>B30</translation>
</message>
<message>
<location filename="../../designer/tabs/tabOcrEntry.ui" line="34"/>
<source>tab.buildPHashDatabase</source>
<translation>Build pHash Database</translation>
</message>
</context>
<context>
<name>TabOcr_B30</name>
<message>
<location filename="../../designer/tabs/tabOcr/tabOcr_B30.ui" line="20"/>
<source>b30type</source>
<translation>B30 Image Type</translation>
</message>
<message>
<location filename="../../designer/tabs/tabOcr/tabOcr_B30.ui" line="34"/>
<source>knnModelSelector.title</source>
<translation>Select KNearest Model</translation>
</message>
<message>
<location filename="../../designer/tabs/tabOcr/tabOcr_B30.ui" line="46"/>
<source>b30KnnModelSelector.title</source>
<translation>Select B30 Specialized KNearest Model</translation>
</message>
<message>
<location filename="../../designer/tabs/tabOcr/tabOcr_B30.ui" line="62"/>
<source>phashDatabaseSelector.title</source>
<translation>Select Image PHash Database</translation>
</message>
<message>
<location filename="../../designer/tabs/tabOcr/tabOcr_B30.ui" line="74"/>
<source>imageSelector.title</source>
<translation>Select Image</translation>
</message>
</context>
<context>
<name>TabOcr_BuildPHashDatabase</name>
<message>
<location filename="../../designer/tabs/tabOcr/tabOcr_BuildPHashDatabase.ui" line="33"/>
<source>folders.title</source>
<translation>Data Folders</translation>
</message>
<message>
<location filename="../../designer/tabs/tabOcr/tabOcr_BuildPHashDatabase.ui" line="41"/>
<source>folders.songDir</source>
<translation>Song jackets</translation>
</message>
<message>
<location filename="../../designer/tabs/tabOcr/tabOcr_BuildPHashDatabase.ui" line="62"/>
<source>folders.charIconDir</source>
<translation>Partner icons</translation>
</message>
<message>
<location filename="../../designer/tabs/tabOcr/tabOcr_BuildPHashDatabase.ui" line="84"/>
<source>options.title</source>
<translation>Options</translation>
</message>
<message>
<location filename="../../designer/tabs/tabOcr/tabOcr_BuildPHashDatabase.ui" line="157"/>
<source>options.preprocessCharIcon</source>
<translation>Preprocess partner icons</translation>
</message>
<message>
<location filename="../../designer/tabs/tabOcr/tabOcr_BuildPHashDatabase.ui" line="180"/>
<source>resetButton</source>
<translation>Reset</translation>
</message>
<message>
<location filename="../../designer/tabs/tabOcr/tabOcr_BuildPHashDatabase.ui" line="199"/>
<source>[Reading images] %v/%m - %p%</source>
<translation></translation>
</message>
<message>
<location filename="../../designer/tabs/tabOcr/tabOcr_BuildPHashDatabase.ui" line="215"/>
<source>[Calculate hashes] %v/%m - %p%</source>
<translation></translation>
</message>
<message>
<location filename="../../designer/tabs/tabOcr/tabOcr_BuildPHashDatabase.ui" line="237"/>
<source>buildButton</source>
<translation>Build</translation>
</message>
</context>
<context>
<name>TabOcr_Device</name>
<message>
<location filename="../../designer/tabs/tabOcr/tabOcr_Device.ui" line="20"/>
<source>openWizardButton</source>
<translation>Open Device Creation Wizard</translation>
</message>
<message>
<location filename="../../designer/tabs/tabOcr/tabOcr_Device.ui" line="27"/>
<source>options.title</source>
<translation>Options</translation>
</message>
<message>
<location filename="../../designer/tabs/tabOcr/tabOcr_Device.ui" line="35"/>
<source>options.usePreset</source>
<translation>Use preset</translation>
</message>
<message>
<location filename="../../designer/tabs/tabOcr/tabOcr_Device.ui" line="73"/>
<source>options.rois</source>
<translation>Rois</translation>
</message>
<message>
<location filename="../../designer/tabs/tabOcr/tabOcr_Device.ui" line="128"/>
<source>options.masker</source>
<translation>Masker</translation>
</message>
<message>
<location filename="../../designer/tabs/tabOcr/tabOcr_Device.ui" line="138"/>
<location filename="../../designer/tabs/tabOcr/tabOcr_Device.ui" line="145"/>
<source>options.useCustom</source>
<translation>Use custom options</translation>
</message>
<message>
<location filename="../../designer/tabs/tabOcr/tabOcr_Device.ui" line="203"/>
<source>dependencies.title</source>
<translation>OCR Dependencies</translation>
</message>
<message>
<location filename="../../designer/tabs/tabOcr/tabOcr_Device.ui" line="209"/>
<source>dependencies.knnModel</source>
<translation>KNearest model</translation>
</message>
<message>
<location filename="../../designer/tabs/tabOcr/tabOcr_Device.ui" line="246"/>
<source>dependencies.phashDatabase</source>
<translation>Image pHash database</translation>
</message>
</context>
<context>
<name>TabOverview</name>
<message>
<location filename="../../implements/tabs/tabOverview.py" line="43"/>
<source>databaseDescribeLabel {} {} {} {} {} {}</source>
<translation>There are {} packs, {} songs, {} difficulties, {} chart info ({} complete) and {} scores in database.</translation>
</message>
</context>
<context>
<name>TabToolsEntry</name>
<message>
<location filename="../../designer/tabs/tabToolsEntry.ui" line="24"/>
<source>tab.infoLookup</source>
<translation>Chart Info Lookup</translation>
</message>
<message>
<location filename="../../designer/tabs/tabToolsEntry.ui" line="29"/>
<source>tab.stepCalculator</source>
<translation>Step Calculator</translation>
</message>
<message>
<location filename="../../designer/tabs/tabToolsEntry.ui" line="34"/>
<source>tab.chartRecommend</source>
<translation>Chart Recommend</translation>
</message>
<message>
<location filename="../../designer/tabs/tabToolsEntry.ui" line="39"/>
<source>tab.andreal</source>
<translation>Andreal Image Generator</translation>
</message>
</context>
<context>
<name>TabTools_Andreal</name>
<message>
<location filename="../../designer/tabs/tabTools/tabTools_Andreal.ui" line="23"/>
<source>andrealFolder</source>
<translation>Andreal data folder</translation>
</message>
<message>
<location filename="../../designer/tabs/tabTools/tabTools_Andreal.ui" line="33"/>
<source>andrealExecutable</source>
<translation>Andreal executable</translation>
</message>
<message>
<location filename="../../designer/tabs/tabTools/tabTools_Andreal.ui" line="43"/>
<source>imageType</source>
<translation>Image type</translation>
</message>
<message>
<location filename="../../designer/tabs/tabTools/tabTools_Andreal.ui" line="102"/>
<source>imageTypeWhatIsThisButton</source>
<translation>What is /a?</translation>
</message>
<message>
<location filename="../../designer/tabs/tabTools/tabTools_Andreal.ui" line="112"/>
<source>chart</source>
<translation>Select a Chart</translation>
</message>
<message>
<location filename="../../designer/tabs/tabTools/tabTools_Andreal.ui" line="143"/>
<source>chart.selectButton</source>
<translation>Select...</translation>
</message>
<message>
<location filename="../../designer/tabs/tabTools/tabTools_Andreal.ui" line="160"/>
<source>imageVersion</source>
<translation>Image version</translation>
</message>
<message>
<location filename="../../designer/tabs/tabTools/tabTools_Andreal.ui" line="177"/>
<source>imageFormat</source>
<translation>Image format</translation>
</message>
<message>
<location filename="../../designer/tabs/tabTools/tabTools_Andreal.ui" line="225"/>
<source>jpgQuality</source>
<translation>JPG quality</translation>
</message>
<message>
<location filename="../../designer/tabs/tabTools/tabTools_Andreal.ui" line="294"/>
<source>exportJsonButton</source>
<translation>Export Request Data to JSON</translation>
</message>
<message>
<location filename="../../designer/tabs/tabTools/tabTools_Andreal.ui" line="301"/>
<source>generatePreviewButton</source>
<translation>Generate Preview</translation>
</message>
<message>
<location filename="../../designer/tabs/tabTools/tabTools_Andreal.ui" line="313"/>
<source>generateImageButton</source>
<translation>Generate</translation>
</message>
<message>
<location filename="../../implements/tabs/tabTools/tabTools_Andreal.py" line="138"/>
<source>imageWhatIsThisDialog.description</source>
<translation>Generate image of...&lt;ul&gt;&lt;li&gt;/a - the most recent score&lt;/li&gt;&lt;li&gt;/a b30 - best30 image&lt;/li&gt;&lt;li&gt;/a info - best score of the selected chart&lt;/li&gt;&lt;/ul&gt;</translation>
</message>
</context>
<context>
<name>TabTools_ChartRecommend</name>
<message>
<location filename="../../designer/tabs/tabTools/tabTools_ChartRecommend.ui" line="20"/>
<source>constantRangeFromPlayRating</source>
<translation>Chart Constant Range from Play Rating</translation>
</message>
<message>
<location filename="../../designer/tabs/tabTools/tabTools_ChartRecommend.ui" line="118"/>
<source>chartsByConstant</source>
<translation>Charts by Constant</translation>
</message>
<message>
<location filename="../../designer/tabs/tabTools/tabTools_ChartRecommend.ui" line="174"/>
<location filename="../../designer/tabs/tabTools/tabTools_ChartRecommend.ui" line="273"/>
<source>refreshButton</source>
<translation>Roll</translation>
</message>
<message>
<location filename="../../designer/tabs/tabTools/tabTools_ChartRecommend.ui" line="197"/>
<source>chartsRecommendFromPlayRating</source>
<translation>Chart from Play Rating Based on Best Score</translation>
</message>
</context>
<context>
<name>TabTools_InfoLookup</name>
<message>
<location filename="../../designer/tabs/tabTools/tabTools_InfoLookup.ui" line="22"/>
<source>langSelect.label</source>
<translation>Language</translation>
</message>
<message>
<location filename="../../designer/tabs/tabTools/tabTools_InfoLookup.ui" line="47"/>
<source>songSelect</source>
<translation>Select a Song</translation>
</message>
<message>
<location filename="../../designer/tabs/tabTools/tabTools_InfoLookup.ui" line="65"/>
<source>packInfo</source>
<translation>Pack Info</translation>
</message>
<message>
<location filename="../../designer/tabs/tabTools/tabTools_InfoLookup.ui" line="74"/>
<source>pack.description</source>
<translation>Description</translation>
</message>
<message>
<location filename="../../designer/tabs/tabTools/tabTools_InfoLookup.ui" line="94"/>
<source>pack.id</source>
<translation>ID</translation>
</message>
<message>
<location filename="../../designer/tabs/tabTools/tabTools_InfoLookup.ui" line="129"/>
<source>pack.name</source>
<translation>Name</translation>
</message>
<message>
<location filename="../../designer/tabs/tabTools/tabTools_InfoLookup.ui" line="157"/>
<source>songInfo</source>
<translation>Song Info</translation>
</message>
<message>
<location filename="../../designer/tabs/tabTools/tabTools_InfoLookup.ui" line="166"/>
<source>song.bgDayNight</source>
<translation>Background day/night</translation>
</message>
<message>
<location filename="../../designer/tabs/tabTools/tabTools_InfoLookup.ui" line="179"/>
<source>song.audioPreview</source>
<translation>Audio preview duration</translation>
</message>
<message>
<location filename="../../designer/tabs/tabTools/tabTools_InfoLookup.ui" line="206"/>
<source>song.artist</source>
<translation>Music by</translation>
</message>
<message>
<location filename="../../designer/tabs/tabTools/tabTools_InfoLookup.ui" line="233"/>
<source>song.bgSide</source>
<translation>Backgroud</translation>
</message>
<message>
<location filename="../../designer/tabs/tabTools/tabTools_InfoLookup.ui" line="246"/>
<source>song.id</source>
<translation>ID</translation>
</message>
<message>
<location filename="../../designer/tabs/tabTools/tabTools_InfoLookup.ui" line="259"/>
<source>song.addedIn</source>
<translation>Added in</translation>
</message>
<message>
<location filename="../../designer/tabs/tabTools/tabTools_InfoLookup.ui" line="443"/>
<source>difficulty.addedIn</source>
<translation>Added in</translation>
</message>
<message>
<location filename="../../designer/tabs/tabTools/tabTools_InfoLookup.ui" line="300"/>
<source>song.title</source>
<translation>Title</translation>
</message>
<message>
<location filename="../../designer/tabs/tabTools/tabTools_InfoLookup.ui" line="313"/>
<source>song.bpm</source>
<translation>BPM</translation>
</message>
<message>
<location filename="../../designer/tabs/tabTools/tabTools_InfoLookup.ui" line="326"/>
<source>song.source</source>
<translation>Source</translation>
</message>
<message>
<location filename="../../designer/tabs/tabTools/tabTools_InfoLookup.ui" line="355"/>
<source>chartSelect</source>
<translation>Select a Difficulty</translation>
</message>
<message>
<location filename="../../designer/tabs/tabTools/tabTools_InfoLookup.ui" line="379"/>
<source>chartInfo</source>
<translation>Chart Info</translation>
</message>
<message>
<location filename="../../designer/tabs/tabTools/tabTools_InfoLookup.ui" line="402"/>
<source>chart.constant</source>
<translation>Constant</translation>
</message>
<message>
<location filename="../../designer/tabs/tabTools/tabTools_InfoLookup.ui" line="415"/>
<source>chart.notes</source>
<translation>Notes</translation>
</message>
<message>
<location filename="../../designer/tabs/tabTools/tabTools_InfoLookup.ui" line="434"/>
<source>difficultyInfo</source>
<translation>Difficulty Info</translation>
</message>
<message>
<location filename="../../designer/tabs/tabTools/tabTools_InfoLookup.ui" line="484"/>
<source>difficulty.artist</source>
<translation>Music by</translation>
</message>
<message>
<location filename="../../designer/tabs/tabTools/tabTools_InfoLookup.ui" line="497"/>
<source>difficulty.rating</source>
<translation>Rating</translation>
</message>
<message>
<location filename="../../designer/tabs/tabTools/tabTools_InfoLookup.ui" line="510"/>
<source>difficulty.bg</source>
<translation>Background</translation>
</message>
<message>
<location filename="../../designer/tabs/tabTools/tabTools_InfoLookup.ui" line="544"/>
<source>difficulty.jacketOverride</source>
<translation>Jacket override</translation>
</message>
<message>
<location filename="../../designer/tabs/tabTools/tabTools_InfoLookup.ui" line="557"/>
<source>difficulty.chartDesigner</source>
<translation>Note Design</translation>
</message>
<message>
<location filename="../../designer/tabs/tabTools/tabTools_InfoLookup.ui" line="577"/>
<source>difficulty.audioOverride</source>
<translation>Audio Override</translation>
</message>
<message>
<location filename="../../designer/tabs/tabTools/tabTools_InfoLookup.ui" line="590"/>
<source>difficulty.bpm</source>
<translation>BPM</translation>
</message>
<message>
<location filename="../../designer/tabs/tabTools/tabTools_InfoLookup.ui" line="603"/>
<source>difficulty.bgInverse</source>
<translation>Background (inversed)</translation>
</message>
<message>
<location filename="../../designer/tabs/tabTools/tabTools_InfoLookup.ui" line="623"/>
<source>difficulty.jacketDesigner</source>
<translation>Illustration by</translation>
</message>
<message>
<location filename="../../designer/tabs/tabTools/tabTools_InfoLookup.ui" line="636"/>
<source>difficulty.jacketNight</source>
<translation>Jacket night</translation>
</message>
<message>
<location filename="../../designer/tabs/tabTools/tabTools_InfoLookup.ui" line="649"/>
<source>difficulty.title</source>
<translation>Title</translation>
</message>
<message>
<location filename="../../designer/tabs/tabTools/tabTools_InfoLookup.ui" line="695"/>
<source>playRatingCalculate</source>
<translation>Calculate Play Rating</translation>
</message>
</context>
<context>
<name>TabTools_StepCalculator</name>
<message>
<location filename="../../designer/tabs/tabTools/tabTools_StepCalculator.ui" line="97"/>
<source>legacyPlay.noOptions</source>
<translation>No options</translation>
</message>
<message>
<location filename="../../designer/tabs/tabTools/tabTools_StepCalculator.ui" line="147"/>
<source>legacyPlayPlus.useFragments</source>
<translation>Use Fragments</translation>
</message>
<message>
<location filename="../../designer/tabs/tabTools/tabTools_StepCalculator.ui" line="190"/>
<source>play.memoryBoost</source>
<translation>Memory boost</translation>
</message>
<message>
<location filename="../../designer/tabs/tabTools/tabTools_StepCalculator.ui" line="201"/>
<source>partner.title</source>
<translation>Partner</translation>
</message>
<message>
<location filename="../../designer/tabs/tabTools/tabTools_StepCalculator.ui" line="209"/>
<source>partner.stepValueLabel</source>
<translation>STEP value</translation>
</message>
<message>
<location filename="../../designer/tabs/tabTools/tabTools_StepCalculator.ui" line="243"/>
<source>partner.skill.title</source>
<translation>Partner Skill</translation>
</message>
<message>
<location filename="../../designer/tabs/tabTools/tabTools_StepCalculator.ui" line="260"/>
<source>partner.skill.stepBonus</source>
<translation>Step bonus</translation>
</message>
<message>
<location filename="../../designer/tabs/tabTools/tabTools_StepCalculator.ui" line="267"/>
<source>partner.skill.finalMultiplier</source>
<translation>Final multiplier</translation>
</message>
<message>
<location filename="../../designer/tabs/tabTools/tabTools_StepCalculator.ui" line="296"/>
<source>partner.skill.presets</source>
<translation>Preset Datas</translation>
</message>
<message>
<location filename="../../designer/tabs/tabTools/tabTools_StepCalculator.ui" line="302"/>
<source>partner.skill.presets.awakenedEto</source>
<translation>Eto (Awakened)</translation>
</message>
<message>
<location filename="../../designer/tabs/tabTools/tabTools_StepCalculator.ui" line="309"/>
<source>partner.skill.presets.awakenedIlith</source>
<translation>Ilith (Awakened)</translation>
</message>
<message>
<location filename="../../designer/tabs/tabTools/tabTools_StepCalculator.ui" line="316"/>
<source>partner.skill.presets.awakenedLuna</source>
<translation>Luna (Awakened)</translation>
</message>
<message>
<location filename="../../designer/tabs/tabTools/tabTools_StepCalculator.ui" line="323"/>
<source>partner.skill.presets.amaneBelowEx</source>
<translation>Amane (Below EX)</translation>
</message>
<message>
<location filename="../../designer/tabs/tabTools/tabTools_StepCalculator.ui" line="330"/>
<source>partner.skill.presets.maya</source>
<translation>Maya</translation>
</message>
<message>
<location filename="../../designer/tabs/tabTools/tabTools_StepCalculator.ui" line="358"/>
<source>calculate.toStep</source>
<translation>Calculate to Step</translation>
</message>
<message>
<location filename="../../designer/tabs/tabTools/tabTools_StepCalculator.ui" line="386"/>
<source>calculate.toStep.playResultLabel</source>
<translation>Play result</translation>
</message>
<message>
<location filename="../../designer/tabs/tabTools/tabTools_StepCalculator.ui" line="419"/>
<source>calculate.toStep.calculatePlayResultFromScoreButton</source>
<translation>Calculate from Score</translation>
</message>
<message>
<location filename="../../designer/tabs/tabTools/tabTools_StepCalculator.ui" line="399"/>
<source>calculate.toStep.resultLabel</source>
<translation>Result</translation>
</message>
<message>
<location filename="../../designer/tabs/tabTools/tabTools_StepCalculator.ui" line="20"/>
<source>detailedLogOutput</source>
<translation>Detailed log output</translation>
</message>
<message>
<location filename="../../designer/tabs/tabTools/tabTools_StepCalculator.ui" line="429"/>
<source>calculate.fromStep</source>
<translation>Calculate from Step</translation>
</message>
<message>
<location filename="../../designer/tabs/tabTools/tabTools_StepCalculator.ui" line="438"/>
<source>calculate.fromStep.targetStepLabel</source>
<translation>Target step value</translation>
</message>
<message>
<location filename="../../designer/tabs/tabTools/tabTools_StepCalculator.ui" line="461"/>
<source>calculate.fromStep.resultLabel</source>
<translation>Result (play rating)</translation>
</message>
</context>
</TS>