Update zh-tw for Auto Identifcation Feature (#1923)

* Add localization strings for the new auto identification feature
This commit is contained in:
Still Hsu 2021-10-29 08:46:40 +08:00 committed by GitHub
parent c6a326ca64
commit 07a1cdd9f7
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
6 changed files with 77 additions and 27 deletions

View file

@ -77,12 +77,12 @@ const FieldOptionsEditor: React.FC<IFieldOptionsEditor> = ({
if (!editing) { if (!editing) {
if (strategy === undefined) { if (strategy === undefined) {
return intl.formatMessage({ id: "use_default" }); return intl.formatMessage({ id: "actions.use_default" });
} }
const f = strategies.find((s) => s[1] === strategy); const f = strategies.find((s) => s[1] === strategy);
return intl.formatMessage({ return intl.formatMessage({
id: `config.tasks.identify.field_strategies.${f![0].toLowerCase()}`, id: `actions.${f![0].toLowerCase()}`,
}); });
} }
@ -104,7 +104,7 @@ const FieldOptionsEditor: React.FC<IFieldOptionsEditor> = ({
}) })
} }
disabled={!editing} disabled={!editing}
label={intl.formatMessage({ id: "use_default" })} label={intl.formatMessage({ id: "actions.use_default" })}
/> />
) : undefined} ) : undefined}
{strategies.map((f) => ( {strategies.map((f) => (
@ -121,7 +121,7 @@ const FieldOptionsEditor: React.FC<IFieldOptionsEditor> = ({
} }
disabled={!editing} disabled={!editing}
label={intl.formatMessage({ label={intl.formatMessage({
id: `config.tasks.identify.field_strategies.${f[0].toLowerCase()}`, id: `actions.${f[0].toLowerCase()}`,
})} })}
/> />
))} ))}
@ -145,7 +145,7 @@ const FieldOptionsEditor: React.FC<IFieldOptionsEditor> = ({
if (!editing) { if (!editing) {
if (value === undefined && allowSetDefault) { if (value === undefined && allowSetDefault) {
return intl.formatMessage({ id: "use_default" }); return intl.formatMessage({ id: "actions.use_default" });
} }
if (value) { if (value) {
return <Icon icon="check" className="text-success" />; return <Icon icon="check" className="text-success" />;
@ -311,9 +311,15 @@ export const FieldOptionsList: React.FC<IFieldOptionsList> = ({
<Table responsive className="field-options-table"> <Table responsive className="field-options-table">
<thead> <thead>
<tr> <tr>
<th className="w-25">Field</th> <th className="w-25">
<th className="w-25">Strategy</th> <FormattedMessage id="config.tasks.identify.field" />
<th className="w-25">Create missing</th> </th>
<th className="w-25">
<FormattedMessage id="config.tasks.identify.strategy" />
</th>
<th className="w-25">
<FormattedMessage id="config.tasks.identify.create_missing" />
</th>
{/* eslint-disable-next-line jsx-a11y/control-has-associated-label */} {/* eslint-disable-next-line jsx-a11y/control-has-associated-label */}
<th className="w-25" /> <th className="w-25" />
</tr> </tr>

View file

@ -56,6 +56,7 @@ export const SourcesEditor: React.FC<ISourceEditor> = ({
{ {
count: 1, count: 1,
singularEntity: source?.displayName, singularEntity: source?.displayName,
pluralEntity: source?.displayName,
} }
)} )}
accept={{ accept={{

View file

@ -55,7 +55,7 @@ export const ThreeStateBoolean: React.FC<IThreeStateBoolean> = ({
); );
return ( return (
<span> <span>
{intl.formatMessage({ id: "use_default" })} {intl.formatMessage({ id: "actions.use_default" })}
{defaultVal} {defaultVal}
</span> </span>
); );

View file

@ -135,7 +135,7 @@ export const DeleteGalleriesDialog: React.FC<IDeleteGalleryDialogProps> = (
id="delete-file" id="delete-file"
checked={deleteFile} checked={deleteFile}
label={intl.formatMessage({ label={intl.formatMessage({
id: "actions.delete_gallery_files", id: "dialogs.delete_gallery_files",
})} })}
onChange={() => setDeleteFile(!deleteFile)} onChange={() => setDeleteFile(!deleteFile)}
/> />

View file

@ -21,7 +21,6 @@
"create_marker": "Create Marker", "create_marker": "Create Marker",
"created_entity": "Created {entity_type}: {entity_name}", "created_entity": "Created {entity_type}: {entity_name}",
"delete": "Delete", "delete": "Delete",
"delete_gallery_files": "Delete gallery folder/zip file and any images not attached to any other gallery.",
"delete_entity": "Delete {entityType}", "delete_entity": "Delete {entityType}",
"delete_file": "Delete file", "delete_file": "Delete file",
"delete_generated_supporting_files": "Delete generated supporting files", "delete_generated_supporting_files": "Delete generated supporting files",
@ -94,7 +93,9 @@
"open_random": "Open Random", "open_random": "Open Random",
"next_action": "Next", "next_action": "Next",
"previous_action": "Back", "previous_action": "Back",
"finish": "Finish" "finish": "Finish",
"use_default": "Use default",
"ignore": "Ignore"
}, },
"actions_name": "Actions", "actions_name": "Actions",
"age": "Age", "age": "Age",
@ -316,11 +317,6 @@
"explicit_set_description": "The following options will be used where not overridden in the source-specific options.", "explicit_set_description": "The following options will be used where not overridden in the source-specific options.",
"field_behaviour": "{strategy} {field}", "field_behaviour": "{strategy} {field}",
"field_options": "Field Options", "field_options": "Field Options",
"field_strategies": {
"ignore": "Ignore",
"merge": "Merge",
"overwrite": "Overwrite"
},
"identifying_scenes": "Identifying {num} {scene}", "identifying_scenes": "Identifying {num} {scene}",
"identifying_from_paths": "Identifying scenes from the following paths", "identifying_from_paths": "Identifying scenes from the following paths",
"include_male_performers": "Include male performers", "include_male_performers": "Include male performers",
@ -328,7 +324,9 @@
"set_organized": "Set organised flag", "set_organized": "Set organised flag",
"source_options": "{source} Options", "source_options": "{source} Options",
"source": "Source", "source": "Source",
"sources": "Sources" "sources": "Sources",
"field": "Field",
"strategy": "Strategy"
}, },
"import_from_exported_json": "Import from exported JSON in the metadata directory. Wipes the existing database.", "import_from_exported_json": "Import from exported JSON in the metadata directory. Wipes the existing database.",
"incremental_import": "Incremental import from a supplied export zip file.", "incremental_import": "Incremental import from a supplied export zip file.",
@ -465,7 +463,8 @@
"performers": "{count, plural, one {Performer} other {Performers}}", "performers": "{count, plural, one {Performer} other {Performers}}",
"scenes": "{count, plural, one {Scene} other {Scenes}}", "scenes": "{count, plural, one {Scene} other {Scenes}}",
"studios": "{count, plural, one {Studio} other {Studios}}", "studios": "{count, plural, one {Studio} other {Studios}}",
"tags": "{count, plural, one {Tag} other {Tags}}" "tags": "{count, plural, one {Tag} other {Tags}}",
"files": "{count, plural, one {File} other {Files}}"
}, },
"country": "Country", "country": "Country",
"cover_image": "Cover Image", "cover_image": "Cover Image",
@ -566,7 +565,8 @@
"scrape_results_scraped": "Scraped", "scrape_results_scraped": "Scraped",
"set_image_url_title": "Image URL", "set_image_url_title": "Image URL",
"unsaved_changes": "Unsaved changes. Are you sure you want to leave?", "unsaved_changes": "Unsaved changes. Are you sure you want to leave?",
"aliases_must_be_unique": "aliases must be unique" "aliases_must_be_unique": "aliases must be unique",
"delete_gallery_files": "Delete gallery folder/zip file and any images not attached to any other gallery."
}, },
"dimensions": "Dimensions", "dimensions": "Dimensions",
"director": "Director", "director": "Director",
@ -745,7 +745,6 @@
"up-dir": "Up a directory", "up-dir": "Up a directory",
"updated_at": "Updated At", "updated_at": "Updated At",
"url": "URL", "url": "URL",
"use_default": "Use default",
"weight": "Weight", "weight": "Weight",
"years_old": "years old", "years_old": "years old",
"stats": { "stats": {

View file

@ -90,7 +90,12 @@
"clear": "清除", "clear": "清除",
"next_action": "下一步", "next_action": "下一步",
"previous_action": "上一步", "previous_action": "上一步",
"finish": "完成" "finish": "完成",
"scrape": "爬取",
"identify": "辨認",
"save_delete_settings": "當刪除項目時,使用下列設定",
"use_default": "使用預設選項",
"ignore": "忽略"
}, },
"actions_name": "動作", "actions_name": "動作",
"age": "年齡", "age": "年齡",
@ -267,7 +272,8 @@
"supported_types": "支援類型", "supported_types": "支援類型",
"supported_urls": "支援網址", "supported_urls": "支援網址",
"excluded_tag_patterns_head": "排除符合正則表達式的標籤", "excluded_tag_patterns_head": "排除符合正則表達式的標籤",
"excluded_tag_patterns_desc": "自爬蟲結果中,排除符合以下正則表達式的標籤" "excluded_tag_patterns_desc": "自爬蟲結果中,排除符合以下正則表達式的標籤",
"scraper": "爬蟲"
}, },
"stashbox": { "stashbox": {
"add_instance": "新增 Stash-box 端點", "add_instance": "新增 Stash-box 端點",
@ -304,7 +310,27 @@
"plugin_tasks": "插件排程", "plugin_tasks": "插件排程",
"scan_for_content_desc": "掃描新內容,並將其新增到資料庫中。", "scan_for_content_desc": "掃描新內容,並將其新增到資料庫中。",
"set_name_date_details_from_metadata_if_present": "使用多媒體檔案中內建的標題、日期、詳細資訊(如果適用的話)", "set_name_date_details_from_metadata_if_present": "使用多媒體檔案中內建的標題、日期、詳細資訊(如果適用的話)",
"generate_thumbnails_during_scan": "掃描圖片時,順便產生縮圖。" "generate_thumbnails_during_scan": "掃描圖片時,順便產生縮圖。",
"identify": {
"create_missing": "新增尚有的欄位",
"set_organized": "設為『已整理』",
"source": "來源",
"include_male_performers": "包含男優",
"identifying_from_paths": "辨認下列路徑中的短片",
"set_cover_images": "設定封面",
"identifying_scenes": "辨認{num}{scene}中",
"heading": "自動辨識檔案",
"and_create_missing": "及建立尚有欄位",
"default_options": "預設選項",
"description": "自動套用 Stash-box 及爬蟲搜尋結果套用至短片資料中。",
"field": "欄位",
"field_options": "欄位選項",
"source_options": "{source} 選項",
"explicit_set_description": "當尚未指定來源選項時,將會使用下列設定。",
"sources": "來源",
"strategy": "方法",
"field_behaviour": "{strategy}{field}"
}
}, },
"tools": { "tools": {
"scene_duplicate_checker": "短片相近性檢查工具", "scene_duplicate_checker": "短片相近性檢查工具",
@ -405,6 +431,14 @@
"description": "關閉下拉選單建立物件功能", "description": "關閉下拉選單建立物件功能",
"heading": "關閉下拉選單建立" "heading": "關閉下拉選單建立"
} }
},
"delete_options": {
"options": {
"delete_file": "將『刪除檔案』設為預設選項",
"delete_generated_supporting_files": "將『刪除已生成的資訊檔案』設為預設選項"
},
"description": "刪除圖片、圖庫、及短片時的預設設定",
"heading": "刪除選項"
} }
}, },
"plugins": { "plugins": {
@ -421,7 +455,8 @@
"performers": "演員", "performers": "演員",
"scenes": "短片", "scenes": "短片",
"studios": "工作室", "studios": "工作室",
"tags": "標籤" "tags": "標籤",
"files": "檔案"
}, },
"country": "國家", "country": "國家",
"cover_image": "封面圖片", "cover_image": "封面圖片",
@ -513,7 +548,10 @@
"zoom": "放大" "zoom": "放大"
} }
}, },
"aliases_must_be_unique": "別名不可重複" "aliases_must_be_unique": "別名不可重複",
"delete_galleries_extra": "…及其他不在圖庫內的圖片檔案。",
"delete_alert": "以下{count, plural, one {{singularEntity}} other {{pluralEntity}}}將被永久刪除:",
"delete_gallery_files": "刪除所有不在任一圖庫內的圖庫資料夾、壓縮檔、及圖檔"
}, },
"dimensions": "解析度", "dimensions": "解析度",
"director": "導演", "director": "導演",
@ -776,5 +814,11 @@
"backup_database_path_leave_empty_to_disable_backup": "備份資料庫路徑(留空以關閉備份):", "backup_database_path_leave_empty_to_disable_backup": "備份資料庫路徑(留空以關閉備份):",
"perform_schema_migration": "執行架構遷移" "perform_schema_migration": "執行架構遷移"
} }
} },
"all": "所有",
"false": "否",
"true": "是",
"stash_ids": "Stash IDs",
"file": "檔案",
"files": "檔案"
} }