From 0afef8e1e3d6e207f5876cf020db1e1044831a3f Mon Sep 17 00:00:00 2001 From: fishjar Date: Wed, 12 Nov 2025 15:17:00 +0000 Subject: [PATCH] =?UTF-8?q?Deploying=20to=20gh-pages=20from=20@=20fishjar/?= =?UTF-8?q?kiss-translator@cc31a8004aaa35b4f9c5ee09182c939960e2c788=20?= =?UTF-8?q?=F0=9F=9A=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- _locales/de/messages.json | 20 +++++++++++ _locales/en/messages.json | 8 ++--- _locales/es/messages.json | 20 +++++++++++ _locales/fr/messages.json | 20 +++++++++++ _locales/ja/messages.json | 20 +++++++++++ _locales/ko/messages.json | 20 +++++++++++ _locales/zh_CN/messages.json | 2 +- _locales/zh_TW/messages.json | 20 +++++++++++ kiss-translator-ios-safari.user.js | 56 ++++++++++++++++++------------ kiss-translator.user.js | 56 ++++++++++++++++++------------ main.js | 14 +++++--- manifest.firefox.json | 2 +- manifest.json | 2 +- manifest.thunderbird.json | 2 +- options.js | 38 +++++++++++--------- version.txt | 2 +- 16 files changed, 227 insertions(+), 75 deletions(-) create mode 100644 _locales/de/messages.json create mode 100644 _locales/es/messages.json create mode 100644 _locales/fr/messages.json create mode 100644 _locales/ja/messages.json create mode 100644 _locales/ko/messages.json create mode 100644 _locales/zh_TW/messages.json diff --git a/_locales/de/messages.json b/_locales/de/messages.json new file mode 100644 index 0000000..9806be2 --- /dev/null +++ b/_locales/de/messages.json @@ -0,0 +1,20 @@ +{ + "app_name": { + "message": "KISS Übersetzer" + }, + "app_description": { + "message": "Eine einfache zweisprachige Übersetzungs-Erweiterung und Greasemonkey-Skript" + }, + "toggle_translate": { + "message": "Übersetzung umschalten" + }, + "toggle_style": { + "message": "Stile umschalten" + }, + "open_options": { + "message": "Einstellungen öffnen" + }, + "open_tranbox": { + "message": "Popup-Fenster öffnen" + } +} diff --git a/_locales/en/messages.json b/_locales/en/messages.json index 5e0509c..7aea41b 100644 --- a/_locales/en/messages.json +++ b/_locales/en/messages.json @@ -6,15 +6,15 @@ "message": "A simple bilingual translation extension & Greasemonkey script" }, "toggle_translate": { - "message": "Toggle Translate" + "message": "Toggle Translation" }, "toggle_style": { - "message": "Toggle Style" + "message": "Toggle Styles" }, "open_options": { - "message": "Open Options" + "message": "Open Setting" }, "open_tranbox": { - "message": "Translate Popup/Selected" + "message": "Open Popup Box" } } diff --git a/_locales/es/messages.json b/_locales/es/messages.json new file mode 100644 index 0000000..9242f2a --- /dev/null +++ b/_locales/es/messages.json @@ -0,0 +1,20 @@ +{ + "app_name": { + "message": "KISS Traductor" + }, + "app_description": { + "message": "Una sencilla extensión y script de Greasemonkey para traducción bilingüe" + }, + "toggle_translate": { + "message": "Alternar traducción" + }, + "toggle_style": { + "message": "Cambiar estilo" + }, + "open_options": { + "message": "Abrir configuración" + }, + "open_tranbox": { + "message": "Abrir ventana emergente" + } +} diff --git a/_locales/fr/messages.json b/_locales/fr/messages.json new file mode 100644 index 0000000..d293aba --- /dev/null +++ b/_locales/fr/messages.json @@ -0,0 +1,20 @@ +{ + "app_name": { + "message": "KISS Traducteur" + }, + "app_description": { + "message": "Une extension et un script Greasemonkey de traduction bilingue simple" + }, + "toggle_translate": { + "message": "Activer/désactiver la traduction" + }, + "toggle_style": { + "message": "Changer de style" + }, + "open_options": { + "message": "Ouvrir les paramètres" + }, + "open_tranbox": { + "message": "Ouvrir la fenêtre contextuelle" + } +} diff --git a/_locales/ja/messages.json b/_locales/ja/messages.json new file mode 100644 index 0000000..78a7617 --- /dev/null +++ b/_locales/ja/messages.json @@ -0,0 +1,20 @@ +{ + "app_name": { + "message": "シンプル翻訳" + }, + "app_description": { + "message": "シンプルなバイリンガル対訳翻訳拡張機能&Tampermonkeyスクリプト" + }, + "toggle_translate": { + "message": "翻訳の切り替え" + }, + "toggle_style": { + "message": "スタイル切り替え" + }, + "open_options": { + "message": "設定を開く" + }, + "open_tranbox": { + "message": "ポップアップを開く" + } +} \ No newline at end of file diff --git a/_locales/ko/messages.json b/_locales/ko/messages.json new file mode 100644 index 0000000..68355bc --- /dev/null +++ b/_locales/ko/messages.json @@ -0,0 +1,20 @@ +{ + "app_name": { + "message": "심플 번역" + }, + "app_description": { + "message": "심플한 이중 언어 대조 번역 확장 프로그램 & Tampermonkey 스크립트" + }, + "toggle_translate": { + "message": "번역 켜기" + }, + "toggle_style": { + "message": "스타일 전환" + }, + "open_options": { + "message": "설정 열기" + }, + "open_tranbox": { + "message": "팝업 열기" + } +} \ No newline at end of file diff --git a/_locales/zh_CN/messages.json b/_locales/zh_CN/messages.json index b2daa13..1505583 100644 --- a/_locales/zh_CN/messages.json +++ b/_locales/zh_CN/messages.json @@ -15,6 +15,6 @@ "message": "打开设置" }, "open_tranbox": { - "message": "翻译弹窗/选中文字" + "message": "打开弹窗" } } diff --git a/_locales/zh_TW/messages.json b/_locales/zh_TW/messages.json new file mode 100644 index 0000000..4a674db --- /dev/null +++ b/_locales/zh_TW/messages.json @@ -0,0 +1,20 @@ +{ + "app_name": { + "message": "簡約翻譯" + }, + "app_description": { + "message": "一個簡約的雙語對照翻譯擴充功能與 Tampermonkey 腳本" + }, + "toggle_translate": { + "message": "開啟翻譯" + }, + "toggle_style": { + "message": "切換樣式" + }, + "open_options": { + "message": "開啟設定" + }, + "open_tranbox": { + "message": "開啟彈出視窗" + } +} diff --git a/kiss-translator-ios-safari.user.js b/kiss-translator-ios-safari.user.js index 9e33531..60a0286 100644 --- a/kiss-translator-ios-safari.user.js +++ b/kiss-translator-ios-safari.user.js @@ -1,7 +1,7 @@ // ==UserScript== // @name KISS Translator // @namespace https://github.com/fishjar/kiss-translator -// @version 2.0.8 +// @version 2.0.9 // @description A simple bilingual translation extension & Greasemonkey script (一个简约的双语对照翻译扩展 & 油猴脚本) // @author Gabe // @homepageURL https://github.com/fishjar/kiss-translator @@ -29407,7 +29407,7 @@ __webpack_require__.d(base_namespaceObject, { }); ;// CONCATENATED MODULE: ./src/config/app.js -const APP_NAME="KISS Translator".trim().split(/\s+/).join("-");const APP_LCNAME=APP_NAME.toLowerCase();const APP_UPNAME=APP_NAME.toUpperCase();const APP_CONSTS={fabID:"".concat(APP_LCNAME,"-fab"),boxID:"".concat(APP_LCNAME,"-box"),popupID:"".concat(APP_LCNAME,"-popup")};const APP_VERSION="2.0.8".split(".");const THEME_LIGHT="light";const THEME_DARK="dark"; +const APP_NAME="KISS Translator".trim().split(/\s+/).join("-");const APP_LCNAME=APP_NAME.toLowerCase();const APP_UPNAME=APP_NAME.toUpperCase();const APP_CONSTS={fabID:"".concat(APP_LCNAME,"-fab"),boxID:"".concat(APP_LCNAME,"-box"),popupID:"".concat(APP_LCNAME,"-popup")};const APP_VERSION="2.0.9".split(".");const THEME_LIGHT="light";const THEME_DARK="dark"; ;// CONCATENATED MODULE: ./node_modules/.pnpm/@babel+runtime@7.24.4/node_modules/@babel/runtime/helpers/esm/typeof.js function _typeof(o) { "@babel/helpers - typeof"; @@ -29558,7 +29558,7 @@ temperature:0.0,maxTokens:20480,// think: false, // (OpenAI 兼容接口未支 // thinkIgnore: "qwen3,deepseek-r1", // (OpenAI 兼容接口未支持,暂时移除) isDisabled:false,// 是否不显示, region:""// Azure 专用 -};const defaultApiOpts={[OPT_TRANS_BUILTINAI]:defaultApi,[OPT_TRANS_GOOGLE]:_objectSpread2(_objectSpread2({},defaultApi),{},{url:"https://translate.googleapis.com/translate_a/single"}),[OPT_TRANS_GOOGLE_2]:_objectSpread2(_objectSpread2({},defaultApi),{},{url:"https://translate-pa.googleapis.com/v1/translateHtml",key:"AIzaSyATBXajvzQLTDHEQbcpq0Ihe0vWDHmO520",useBatchFetch:true}),[OPT_TRANS_MICROSOFT]:_objectSpread2(_objectSpread2({},defaultApi),{},{useBatchFetch:true}),[OPT_TRANS_AZUREAI]:_objectSpread2(_objectSpread2({},defaultApi),{},{url:"https://api.cognitive.microsofttranslator.com/translate?api-version=3.0",useBatchFetch:true}),[OPT_TRANS_BAIDU]:_objectSpread2({},defaultApi),[OPT_TRANS_TENCENT]:_objectSpread2(_objectSpread2({},defaultApi),{},{useBatchFetch:true}),[OPT_TRANS_VOLCENGINE]:_objectSpread2({},defaultApi),[OPT_TRANS_DEEPL]:_objectSpread2(_objectSpread2({},defaultApi),{},{url:"https://api-free.deepl.com/v2/translate",useBatchFetch:true}),[OPT_TRANS_DEEPLFREE]:_objectSpread2(_objectSpread2({},defaultApi),{},{fetchLimit:1}),[OPT_TRANS_DEEPLX]:_objectSpread2(_objectSpread2({},defaultApi),{},{url:"http://localhost:1188/translate"}),[OPT_TRANS_NIUTRANS]:_objectSpread2(_objectSpread2({},defaultApi),{},{url:"https://api.niutrans.com/NiuTransServer/translation",dictNo:"",memoryNo:""}),[OPT_TRANS_OPENAI]:_objectSpread2(_objectSpread2({},defaultApi),{},{url:"https://api.openai.com/v1/chat/completions",model:"gpt-4",useBatchFetch:true}),[OPT_TRANS_GEMINI]:_objectSpread2(_objectSpread2({},defaultApi),{},{url:"https://generativelanguage.googleapis.com/v1/models/".concat(INPUT_PLACE_MODEL,":generateContent?key=").concat(INPUT_PLACE_KEY),model:"gemini-2.5-flash",useBatchFetch:true}),[OPT_TRANS_GEMINI_2]:_objectSpread2(_objectSpread2({},defaultApi),{},{url:"https://generativelanguage.googleapis.com/v1beta/openai/chat/completions",model:"gemini-2.0-flash",useBatchFetch:true}),[OPT_TRANS_CLAUDE]:_objectSpread2(_objectSpread2({},defaultApi),{},{url:"https://api.anthropic.com/v1/messages",model:"claude-3-haiku-20240307",useBatchFetch:true}),[OPT_TRANS_CLOUDFLAREAI]:_objectSpread2(_objectSpread2({},defaultApi),{},{url:"https://api.cloudflare.com/client/v4/accounts/{{ACCOUNT_ID}}/ai/run/@cf/meta/m2m100-1.2b"}),[OPT_TRANS_OLLAMA]:_objectSpread2(_objectSpread2({},defaultApi),{},{url:"http://localhost:11434/v1/chat/completions",model:"llama3.1",useBatchFetch:true}),[OPT_TRANS_OPENROUTER]:_objectSpread2(_objectSpread2({},defaultApi),{},{url:"https://openrouter.ai/api/v1/chat/completions",model:"openai/gpt-4o",useBatchFetch:true}),[OPT_TRANS_CUSTOMIZE]:_objectSpread2(_objectSpread2({},defaultApi),{},{url:"https://translate.googleapis.com/translate_a/single?client=gtx&dj=1&dt=t&ie=UTF-8&q={{text}}&sl=en&tl=zh-CN",reqHook:defaultRequestHook,resHook:defaultResponseHook})};// 内置翻译接口列表(带参数) +};const defaultApiOpts={[OPT_TRANS_BUILTINAI]:defaultApi,[OPT_TRANS_GOOGLE]:_objectSpread2(_objectSpread2({},defaultApi),{},{url:"https://translate.googleapis.com/translate_a/single"}),[OPT_TRANS_GOOGLE_2]:_objectSpread2(_objectSpread2({},defaultApi),{},{url:"https://translate-pa.googleapis.com/v1/translateHtml",key:"AIzaSyATBXajvzQLTDHEQbcpq0Ihe0vWDHmO520",useBatchFetch:true}),[OPT_TRANS_MICROSOFT]:_objectSpread2(_objectSpread2({},defaultApi),{},{useBatchFetch:true}),[OPT_TRANS_AZUREAI]:_objectSpread2(_objectSpread2({},defaultApi),{},{url:"https://api.cognitive.microsofttranslator.com/translate?api-version=3.0",useBatchFetch:true}),[OPT_TRANS_BAIDU]:_objectSpread2({},defaultApi),[OPT_TRANS_TENCENT]:_objectSpread2(_objectSpread2({},defaultApi),{},{useBatchFetch:true}),[OPT_TRANS_VOLCENGINE]:_objectSpread2({},defaultApi),[OPT_TRANS_DEEPL]:_objectSpread2(_objectSpread2({},defaultApi),{},{url:"https://api-free.deepl.com/v2/translate",useBatchFetch:true}),[OPT_TRANS_DEEPLFREE]:_objectSpread2(_objectSpread2({},defaultApi),{},{fetchLimit:1}),[OPT_TRANS_DEEPLX]:_objectSpread2(_objectSpread2({},defaultApi),{},{url:"http://localhost:1188/translate"}),[OPT_TRANS_NIUTRANS]:_objectSpread2(_objectSpread2({},defaultApi),{},{url:"https://api.niutrans.com/NiuTransServer/translation",dictNo:"",memoryNo:""}),[OPT_TRANS_OPENAI]:_objectSpread2(_objectSpread2({},defaultApi),{},{url:"https://api.openai.com/v1/chat/completions",model:"gpt-4",useBatchFetch:true}),[OPT_TRANS_GEMINI]:_objectSpread2(_objectSpread2({},defaultApi),{},{url:"https://generativelanguage.googleapis.com/v1/models/".concat(INPUT_PLACE_MODEL,":generateContent?key=").concat(INPUT_PLACE_KEY),model:"gemini-2.5-flash",useBatchFetch:true}),[OPT_TRANS_GEMINI_2]:_objectSpread2(_objectSpread2({},defaultApi),{},{url:"https://generativelanguage.googleapis.com/v1beta/openai/chat/completions",model:"gemini-2.0-flash",useBatchFetch:true}),[OPT_TRANS_CLAUDE]:_objectSpread2(_objectSpread2({},defaultApi),{},{url:"https://api.anthropic.com/v1/messages",model:"claude-3-haiku-20240307",useBatchFetch:true}),[OPT_TRANS_CLOUDFLAREAI]:_objectSpread2(_objectSpread2({},defaultApi),{},{url:"https://api.cloudflare.com/client/v4/accounts/{{ACCOUNT_ID}}/ai/run/@cf/meta/m2m100-1.2b"}),[OPT_TRANS_OLLAMA]:_objectSpread2(_objectSpread2({},defaultApi),{},{url:"http://localhost:11434/v1/chat/completions",model:"llama3.1",useBatchFetch:true}),[OPT_TRANS_OPENROUTER]:_objectSpread2(_objectSpread2({},defaultApi),{},{url:"https://openrouter.ai/api/v1/chat/completions",model:"openai/gpt-4o",useBatchFetch:true}),[OPT_TRANS_CUSTOMIZE]:_objectSpread2(_objectSpread2({},defaultApi),{},{reqHook:defaultRequestHook,resHook:defaultResponseHook})};// 内置翻译接口列表(带参数) const DEFAULT_API_LIST=OPT_ALL_TRANS_TYPES.map(apiType=>_objectSpread2(_objectSpread2({},defaultApiOpts[apiType]),{},{apiSlug:apiType,apiName:apiType,apiType}));const DEFAULT_API_TYPE=OPT_TRANS_MICROSOFT;const DEFAULT_API_SETTING=DEFAULT_API_LIST.find(a=>a.apiType===DEFAULT_API_TYPE); ;// CONCATENATED MODULE: ./src/config/styles.js const OPT_STYLE_NONE="style_none";// 无 @@ -29795,7 +29795,13 @@ rootMargin:500,// 提前触发翻译 customStyles:DEFAULT_CUSTOM_STYLES// 自定义样式列表 }; ;// CONCATENATED MODULE: ./src/config/i18n.js -const UI_LANGS=(/* unused pure expression or super */ null && ([["en","English"],["zh","简体中文"],["zh_TW","繁體中文"]]));const customApiLangs="[\"en\", \"English - English\"],\n[\"zh-CN\", \"Simplified Chinese - \u7B80\u4F53\u4E2D\u6587\"],\n[\"zh-TW\", \"Traditional Chinese - \u7E41\u9AD4\u4E2D\u6587\"],\n[\"ar\", \"Arabic - \u0627\u0644\u0639\u0631\u0628\u064A\u0629\"],\n[\"bg\", \"Bulgarian - \u0411\u044A\u043B\u0433\u0430\u0440\u0441\u043A\u0438\"],\n[\"ca\", \"Catalan - Catal\xE0\"],\n[\"hr\", \"Croatian - Hrvatski\"],\n[\"cs\", \"Czech - \u010Ce\u0161tina\"],\n[\"da\", \"Danish - Dansk\"],\n[\"nl\", \"Dutch - Nederlands\"],\n[\"fi\", \"Finnish - Suomi\"],\n[\"fr\", \"French - Fran\xE7ais\"],\n[\"de\", \"German - Deutsch\"],\n[\"el\", \"Greek - \u0395\u03BB\u03BB\u03B7\u03BD\u03B9\u03BA\u03AC\"],\n[\"hi\", \"Hindi - \u0939\u093F\u0928\u094D\u0926\u0940\"],\n[\"hu\", \"Hungarian - Magyar\"],\n[\"id\", \"Indonesian - Indonesia\"],\n[\"it\", \"Italian - Italiano\"],\n[\"ja\", \"Japanese - \u65E5\u672C\u8A9E\"],\n[\"ko\", \"Korean - \uD55C\uAD6D\uC5B4\"],\n[\"ms\", \"Malay - Melayu\"],\n[\"mt\", \"Maltese - Malti\"],\n[\"nb\", \"Norwegian - Norsk Bokm\xE5l\"],\n[\"pl\", \"Polish - Polski\"],\n[\"pt\", \"Portuguese - Portugu\xEAs\"],\n[\"ro\", \"Romanian - Rom\xE2n\u0103\"],\n[\"ru\", \"Russian - \u0420\u0443\u0441\u0441\u043A\u0438\u0439\"],\n[\"sk\", \"Slovak - Sloven\u010Dina\"],\n[\"sl\", \"Slovenian - Sloven\u0161\u010Dina\"],\n[\"es\", \"Spanish - Espa\xF1ol\"],\n[\"sv\", \"Swedish - Svenska\"],\n[\"ta\", \"Tamil - \u0BA4\u0BAE\u0BBF\u0BB4\u0BCD\"],\n[\"te\", \"Telugu - \u0C24\u0C46\u0C32\u0C41\u0C17\u0C41\"],\n[\"th\", \"Thai - \u0E44\u0E17\u0E22\"],\n[\"tr\", \"Turkish - T\xFCrk\xE7e\"],\n[\"uk\", \"Ukrainian - \u0423\u043A\u0440\u0430\u0457\u043D\u0441\u044C\u043A\u0430\"],\n[\"vi\", \"Vietnamese - Ti\u1EBFng Vi\u1EC7t\"],\n";const customApiHelpZH="// \u8BF7\u6C42\u6570\u636E\u9ED8\u8BA4\u683C\u5F0F\n{\n \"url\": \"{{url}}\",\n \"method\": \"POST\",\n \"headers\": {\n \"Content-type\": \"application/json\",\n \"Authorization\": \"Bearer {{key}}\"\n },\n \"body\": {\n \"text\": \"{{text}}\", // \u5F85\u7FFB\u8BD1\u6587\u5B57\n \"from\": \"{{from}}\", // \u6587\u5B57\u7684\u8BED\u8A00\uFF08\u53EF\u80FD\u4E3A\u7A7A\uFF09\n \"to\": \"{{to}}\", // \u76EE\u6807\u8BED\u8A00\n },\n}\n\n\n// \u8FD4\u56DE\u6570\u636E\u9ED8\u8BA4\u683C\u5F0F\n{\n text: \"\", // \u7FFB\u8BD1\u540E\u7684\u6587\u5B57\n from: \"\", // \u8BC6\u522B\u7684\u6E90\u8BED\u8A00\n to: \"\", // \u76EE\u6807\u8BED\u8A00\uFF08\u53EF\u9009\uFF09\n}\n\n\n// Hook \u8303\u4F8B\n// URL\nhttps://translate.googleapis.com/translate_a/single?client=gtx&dj=1&dt=t&ie=UTF-8&q={{text}}&sl=en&tl=zh-CN\n\n// Request Hook\n(text, from, to, url, key) => [url, {\n headers: {\n \"Content-type\": \"application/json\",\n },\n method: \"GET\",\n body: null,\n}]\n\n// Response Hook\n// \u5176\u4E2D\u8FD4\u56DE\u6570\u7EC4\u7B2C\u4E00\u4E2A\u503C\u8868\u793A\u8BD1\u6587\u5B57\u7B26\u4E32\uFF0C\u7B2C\u4E8C\u4E2A\u503C\u4E3A\u5E03\u5C14\u503C\uFF0C\u8868\u793A\u539F\u6587\u8BED\u8A00\u4E0E\u76EE\u6807\u8BED\u8A00\u662F\u5426\u76F8\u540C\n(res, text, from, to) => [res.sentences.map((item) => item.trans).join(\" \"), to === res.src]\n\n\n// \u652F\u6301\u7684\u8BED\u8A00\u4EE3\u7801\u5982\u4E0B\n".concat(customApiLangs,"\n");const customApiHelpEN="// Default request\n{\n \"url\": \"{{url}}\",\n \"method\": \"POST\",\n \"headers\": {\n \"Content-type\": \"application/json\",\n \"Authorization\": \"Bearer {{key}}\"\n },\n \"body\": {\n \"text\": \"{{text}}\", // Text to be translated\n \"from\": \"{{from}}\", // The language of the text (may be empty)\n \"to\": \"{{to}}\", // Target language\n },\n}\n\n\n// Default response\n{\n text: \"\", // translated text\n from: \"\", // Recognized source language\n to: \"\", // Target language (optional)\n}\n\n\n/// Hook Example\n// URL\nhttps://translate.googleapis.com/translate_a/single?client=gtx&dj=1&dt=t&ie=UTF-8&q={{text}}&sl=en&tl=zh-CN\n\n// Request Hook\n(text, from, to, url, key) => [url, {\n headers: {\n \"Content-type\": \"application/json\",\n },\n method: \"GET\",\n body: null,\n}]\n\n// Response Hook\n// In the returned array, the first value is the translated string, while the second value is a boolean\n// that indicates whether the source language is the same as the target language.\n(res, text, from, to) => [res.sentences.map((item) => item.trans).join(\" \"), to === res.src]\n\n\n// The supported language codes are as follows\n".concat(customApiLangs,"\n");const requestHookHelperZH="1\u3001\u7B2C\u4E00\u4E2A\u53C2\u6570\u5305\u542B\u5982\u4E0B\u5B57\u6BB5\uFF1A'texts', 'from', 'to', 'url', 'key', 'model', 'systemPrompt', ...\n2\u3001\u8FD4\u56DE\u503C\u5FC5\u987B\u662F\u5305\u542B\u4EE5\u4E0B\u5B57\u6BB5\u7684\u5BF9\u8C61\uFF1A 'url', 'body', 'headers', 'method'\n3\u3001\u5982\u8FD4\u56DE\u7A7A\u503C\uFF0C\u5219hook\u51FD\u6570\u4E0D\u4F1A\u4EA7\u751F\u4EFB\u4F55\u6548\u679C\u3002\n\n// \u793A\u4F8B\nasync (args, { url, body, headers, userMsg, method } = {}) => {\n return { url, body, headers, userMsg, method };\n}";const requestHookHelperEN="1. The first parameter contains the following fields: 'texts', 'from', 'to', 'url', 'key', 'model', 'systemPrompt', ...\n2. The return value must be an object containing the following fields: 'url', 'body', 'headers', 'method'\n3. If a null value is returned, the hook function will have no effect.\n\n// Example\nasync (args, { url, body, headers, userMsg, method } = {}) => {\n return { url, body, headers, userMsg, method };\n}";const responsetHookHelperZH="1\u3001\u7B2C\u4E00\u4E2A\u53C2\u6570\u5305\u542B\u5982\u4E0B\u5B57\u6BB5\uFF1A'res', ...\n2\u3001\u8FD4\u56DE\u503C\u5FC5\u987B\u662F\u5305\u542B\u4EE5\u4E0B\u5B57\u6BB5\u7684\u5BF9\u8C61\uFF1A 'translations'\n \uFF08'translations' \u5E94\u4E3A\u4E00\u4E2A\u4E8C\u7EF4\u6570\u7EC4\uFF1A[[\u8BD1\u6587, \u539F\u6587\u8BED\u8A00]]\uFF09\n3\u3001\u5982\u8FD4\u56DE\u7A7A\u503C\uFF0C\u5219hook\u51FD\u6570\u4E0D\u4F1A\u4EA7\u751F\u4EFB\u4F55\u6548\u679C\u3002\n\n// \u793A\u4F8B\nasync ({ res, ...args }) => {\n const translations = [[\"\u4F60\u597D\", \"en\"]];\n const modelMsg = {}; // \u7528\u4E8EAI\u4E0A\u4E0B\u6587\n return { translations, modelMsg };\n}";const responsetHookHelperEN="1. The first parameter contains the following fields: 'res', ...\n2. The return value must be an object containing the following fields: 'translations'\n ('translations' should be a two-dimensional array: [[translation, source language]]).\n3. If a null value is returned, the hook function will have no effect.\n\n// Example\nasync ({ res, ...args }) => {\n const translations = [[\"\u4F60\u597D\", \"en\"]];\n const modelMsg = {}; // For AI context\n return { translations, modelMsg };\n}";const I18N={app_name:{zh:"\u7B80\u7EA6\u7FFB\u8BD1",en:"KISS Translator",zh_TW:"\u7C21\u7D04\u7FFB\u8B6F"},translate:{zh:"\u7FFB\u8BD1",en:"Translate",zh_TW:"\u7FFB\u8B6F"},custom_api_help:{zh:customApiHelpZH,en:customApiHelpEN,zh_TW:customApiHelpZH},request_hook_helper:{zh:requestHookHelperZH,en:requestHookHelperEN,zh_TW:requestHookHelperZH},response_hook_helper:{zh:responsetHookHelperZH,en:responsetHookHelperEN,zh_TW:responsetHookHelperZH},translate_alt:{zh:"\u7FFB\u8BD1",en:"Translate",zh_TW:"\u7FFB\u8B6F"},basic_setting:{zh:"\u57FA\u672C\u8BBE\u7F6E",en:"Basic Setting",zh_TW:"\u57FA\u672C\u8A2D\u5B9A"},rules_setting:{zh:"\u89C4\u5219\u8BBE\u7F6E",en:"Rules Setting",zh_TW:"\u898F\u5247\u8A2D\u5B9A"},apis_setting:{zh:"\u63A5\u53E3\u8BBE\u7F6E",en:"Apis Setting",zh_TW:"API\u8A2D\u5B9A"},sync_setting:{zh:"\u540C\u6B65\u8BBE\u7F6E",en:"Sync Setting",zh_TW:"\u540C\u6B65\u8A2D\u5B9A"},patch_setting:{zh:"\u8865\u4E01\u8BBE\u7F6E",en:"Patch Setting",zh_TW:"\u4FEE\u88DC\u8A2D\u5B9A"},patch_setting_help:{zh:"\u9488\u5BF9\u4E00\u4E9B\u7279\u6B8A\u7F51\u7AD9\u7684\u4FEE\u6B63\u811A\u672C\uFF0C\u4EE5\u4FBF\u7FFB\u8BD1\u8F6F\u4EF6\u5F97\u5230\u66F4\u597D\u7684\u5C55\u793A\u6548\u679C\u3002",en:"Corrected scripts for some special websites so that the translation software can get better display results.",zh_TW:"\u91DD\u5C0D\u67D0\u4E9B\u7279\u6B8A\u7DB2\u7AD9\u7684\u4FEE\u6B63\u8173\u672C\uFF0C\u8B93\u7FFB\u8B6F\u8EDF\u9AD4\u6709\u66F4\u597D\u7684\u986F\u793A\u6548\u679C\u3002"},inject_webfix:{zh:"\u6CE8\u5165\u4FEE\u590D\u8865\u4E01",en:"Inject Webfix",zh_TW:"\u6CE8\u5165\u4FEE\u6B63\u88DC\u4E01"},about:{zh:"\u5173\u4E8E",en:"About",zh_TW:"\u95DC\u65BC"},about_md:{zh:"README.md",en:"README.en.md",zh_TW:"README.md"},about_md_local:{zh:"\u8BF7 [\u70B9\u51FB\u8FD9\u91CC](".concat("https://github.com/fishjar/kiss-translator",") \u67E5\u770B\u8BE6\u60C5\u3002"),en:"Please [click here](".concat("https://github.com/fishjar/kiss-translator",") for details."),zh_TW:"\u8ACB\u3010\u9EDE\u9019\u88E1\u3011\u67E5\u770B\u8A73\u7D30\u5167\u5BB9\u3002"},ui_lang:{zh:"\u754C\u9762\u8BED\u8A00",en:"Interface Language",zh_TW:"\u4ECB\u9762\u8A9E\u8A00"},fetch_limit:{zh:"\u6700\u5927\u5E76\u53D1\u8BF7\u6C42\u6570\u91CF (1-100)",en:"Maximum Number Of Concurrent Requests (1-100)",zh_TW:"\u6700\u5927\u540C\u6642\u8ACB\u6C42\u6578\u91CF (1-100)"},if_think:{zh:"\u542F\u7528\u6216\u7981\u7528\u6A21\u578B\u7684\u6DF1\u5EA6\u601D\u8003\u80FD\u529B",en:"Enable or disable the model\u2019s thinking behavior ",zh_TW:"\u555F\u7528\u6216\u505C\u7528\u6A21\u578B\u7684\u6DF1\u5EA6\u601D\u8003\u80FD\u529B"},think:{zh:"\u542F\u7528\u6DF1\u5EA6\u601D\u8003",en:"enable thinking",zh_TW:"\u555F\u7528\u6DF1\u5EA6\u601D\u8003"},nothink:{zh:"\u7981\u7528\u6DF1\u5EA6\u601D\u8003",en:"disable thinking",zh_TW:"\u505C\u7528\u6DF1\u5EA6\u601D\u8003"},think_ignore:{zh:"\u5FFD\u7565\u4EE5\u4E0B\u6A21\u578B\u7684\u8F93\u51FA,\u9017\u53F7(,)\u5206\u5272,\u5F53\u6A21\u578B\u652F\u6301\u601D\u8003\u4F46ollama\u4E0D\u652F\u6301\u65F6\u9700\u8981\u586B\u5199\u672C\u53C2\u6570",en:"Ignore the block for the following models, comma (,) separated",zh_TW:"\u5FFD\u7565\u4EE5\u4E0B\u6A21\u578B\u7684 \u8F38\u51FA\uFF0C\u4EE5\u9017\u865F (,) \u5206\u9694\uFF1B\u7576\u6A21\u578B\u652F\u63F4\u601D\u8003\u4F46 ollama \u4E0D\u652F\u63F4\u6642\u9700\u8981\u586B\u5BEB\u6B64\u53C3\u6578"},fetch_interval:{zh:"\u6BCF\u6B21\u8BF7\u6C42\u95F4\u9694\u65F6\u95F4 (0-5000ms)",en:"Time Between Requests (0-5000ms)",zh_TW:"\u6BCF\u6B21\u8ACB\u6C42\u9593\u9694\u6642\u9593 (0-5000ms)"},translate_interval:{zh:"\u7FFB\u8BD1\u95F4\u9694\u65F6\u95F4 (10-2000ms)",en:"Translation Interval (10-2000ms)",zh_TW:"\u7FFB\u8B6F\u9593\u9694\u6642\u9593 (10-2000ms)"},http_timeout:{zh:"\u8BF7\u6C42\u8D85\u65F6\u65F6\u95F4 (5000-60000ms)",en:"Request Timeout Time (5000-60000ms)",zh_TW:"\u8ACB\u6C42\u903E\u6642\u6642\u9593 (5000-60000ms)"},custom_header:{zh:"\u81EA\u5B9A\u4E49Header\u53C2\u6570",en:"Custom Header Params"},custom_header_help:{zh:"\u4F7F\u7528JSON\u683C\u5F0F\uFF0C\u4F8B\u5982 \"User-Agent\": \"Mozilla/5.0 (X11; Linux x86_64; rv:141.0) Gecko/20100101 Firefox/141.0\"",en:"Use JSON format, for example \"User-Agent\": \"Mozilla/5.0 (X11; Linux x86_64; rv:141.0) Gecko/20100101 Firefox/141.0\""},custom_body:{zh:"\u81EA\u5B9A\u4E49Body\u53C2\u6570",en:"Custom Body Params"},custom_body_help:{zh:"\u4F7F\u7528JSON\u683C\u5F0F\uFF0C\u4F8B\u5982 \"top_p\": 0.7",en:"Use JSON format, for example \"top_p\": 0.7"},min_translate_length:{zh:"\u6700\u5C0F\u7FFB\u8BD1\u5B57\u7B26\u6570 (1-100)",en:"Minimum number Of Translated Characters (1-100)",zh_TW:"\u6700\u5C0F\u7FFB\u8B6F\u5B57\u5143\u6578 (1-100)"},max_translate_length:{zh:"\u6700\u5927\u7FFB\u8BD1\u5B57\u7B26\u6570 (100-100000)",en:"Maximum number Of Translated Characters (100-100000)",zh_TW:"\u6700\u5927\u7FFB\u8B6F\u5B57\u5143\u6578 (100-100000)"},num_of_newline_characters:{zh:"\u6362\u884C\u5B57\u7B26\u6570 (1-1000)",en:"Number of Newline Characters (1-1000)",zh_TW:"\u63DB\u884C\u5B57\u5143\u6578 (1-1000)"},translate_service:{zh:"\u7FFB\u8BD1\u670D\u52A1",en:"Translate Service",zh_TW:"\u7FFB\u8B6F\u670D\u52D9"},translate_service_multiple:{zh:"\u7FFB\u8BD1\u670D\u52A1 (\u652F\u6301\u591A\u9009)",en:"Translation service (multiple supported)",zh_TW:"\u7FFB\u8B6F\u670D\u52D9 (\u652F\u63F4\u591A\u9078)"},translate_timing:{zh:"\u7FFB\u8BD1\u65F6\u673A",en:"Translate Timing",zh_TW:"\u7FFB\u8B6F\u6642\u6A5F"},mk_pagescroll:{zh:"\u6EDA\u52A8\u52A0\u8F7D\u7FFB\u8BD1\uFF08\u63A8\u8350\uFF09",en:"Rolling Loading (Suggested)",zh_TW:"\u6EFE\u52D5\u8F09\u5165\u7FFB\u8B6F\uFF08\u5EFA\u8B70\uFF09"},mk_pageopen:{zh:"\u7ACB\u5373\u5168\u90E8\u7FFB\u8BD1",en:"Translate all now",zh_TW:"\u7ACB\u5373\u5168\u90E8\u7FFB\u8B6F"},mk_mouseover:{zh:"\u9F20\u6807\u60AC\u505C\u7FFB\u8BD1",en:"Mouseover",zh_TW:"\u6ED1\u9F20\u61F8\u505C\u7FFB\u8B6F"},mk_ctrlKey:{zh:"Control + \u9F20\u6807\u60AC\u505C",en:"Control + Mouseover",zh_TW:"Control + \u6ED1\u9F20\u61F8\u505C"},mk_shiftKey:{zh:"Shift + \u9F20\u6807\u60AC\u505C",en:"Shift + Mouseover",zh_TW:"Shift + \u6ED1\u9F20\u61F8\u505C"},mk_altKey:{zh:"Alt + \u9F20\u6807\u60AC\u505C",en:"Alt + Mouseover",zh_TW:"Alt + \u6ED1\u9F20\u61F8\u505C"},from_lang:{zh:"\u539F\u6587\u8BED\u8A00",en:"Source Language",zh_TW:"\u539F\u6587\u8A9E\u8A00"},to_lang:{zh:"\u76EE\u6807\u8BED\u8A00",en:"Target Language",zh_TW:"\u76EE\u6A19\u8A9E\u8A00"},to_lang2:{zh:"\u7B2C\u4E8C\u76EE\u6807\u8BED\u8A00",en:"Target Language 2",zh_TW:"\u7B2C\u4E8C\u76EE\u6A19\u8A9E\u8A00"},to_lang2_helper:{zh:"\u8BBE\u5B9A\u540E\uFF0C\u4E0E\u76EE\u6807\u8BED\u8A00\u4EA7\u751F\u4E92\u8BD1\u6548\u679C\uFF0C\u4F46\u4F9D\u8D56\u8FDC\u7A0B\u8BED\u8A00\u8BC6\u522B\u3002",en:"After setting, it will produce mutual translation effect with the target language, but it relies on remote language recognition.",zh_TW:"\u8A2D\u5B9A\u5F8C\u6703\u8207\u76EE\u6A19\u8A9E\u8A00\u4E92\u8B6F\uFF0C\u4F46\u4F9D\u8CF4\u9060\u7AEF\u8A9E\u8A00\u8B58\u5225\u3002"},text_style:{zh:"\u8BD1\u6587\u6837\u5F0F",en:"Text Style",zh_TW:"\u8B6F\u6587\u6A23\u5F0F"},text_style_alt:{zh:"\u8BD1\u6587\u6837\u5F0F",en:"Text Style",zh_TW:"\u8B6F\u6587\u6A23\u5F0F"},bg_color:{zh:"\u6837\u5F0F\u989C\u8272",en:"Style Color",zh_TW:"\u6A23\u5F0F\u984F\u8272"},remain_unchanged:{zh:"\u4FDD\u7559\u4E0D\u53D8",en:"Remain Unchanged",zh_TW:"\u4FDD\u7559\u4E0D\u8B8A"},google_api:{zh:"\u8C37\u6B4C\u7FFB\u8BD1\u63A5\u53E3",en:"Google Translate API",zh_TW:"Google \u7FFB\u8B6F\u4ECB\u9762"},default_selector:{zh:"\u9ED8\u8BA4\u9009\u62E9\u5668",en:"Default selector",zh_TW:"\u9810\u8A2D\u9078\u64C7\u5668"},selector_rules:{zh:"\u9009\u62E9\u5668\u89C4\u5219",en:"Selector Rules",zh_TW:"\u9078\u64C7\u5668\u898F\u5247"},save:{zh:"\u4FDD\u5B58",en:"Save",zh_TW:"\u5132\u5B58"},edit:{zh:"\u7F16\u8F91",en:"Edit",zh_TW:"\u7DE8\u8F2F"},cancel:{zh:"\u53D6\u6D88",en:"Cancel",zh_TW:"\u53D6\u6D88"},delete:{zh:"\u5220\u9664",en:"Delete",zh_TW:"\u522A\u9664"},reset:{zh:"\u91CD\u7F6E",en:"Reset",zh_TW:"\u91CD\u8A2D"},add:{zh:"\u6DFB\u52A0",en:"Add",zh_TW:"\u65B0\u589E"},inject_rules:{zh:"\u6CE8\u5165\u8BA2\u9605\u89C4\u5219",en:"Inject Subscribe Rules",zh_TW:"\u6CE8\u5165\u8A02\u95B1\u898F\u5247"},personal_rules:{zh:"\u4E2A\u4EBA\u89C4\u5219",en:"Rules",zh_TW:"\u500B\u4EBA\u898F\u5247"},subscribe_rules:{zh:"\u8BA2\u9605\u89C4\u5219",en:"Subscribe",zh_TW:"\u8A02\u95B1\u898F\u5247"},overwrite_subscribe_rules:{zh:"\u8986\u5199\u8BA2\u9605\u89C4\u5219",en:"Overwrite",zh_TW:"\u8986\u5BEB\u8A02\u95B1\u898F\u5247"},subscribe_url:{zh:"\u8BA2\u9605\u5730\u5740",en:"Subscribe URL",zh_TW:"\u8A02\u95B1\u7DB2\u5740"},rules_warn_1:{zh:"1\u3001\u89C4\u5219\u751F\u6548\u7684\u4F18\u5148\u7EA7\u4F9D\u6B21\u4E3A\uFF1A\u4E2A\u4EBA\u89C4\u5219 > \u8BA2\u9605\u89C4\u5219 > \u5168\u5C40\u89C4\u5219\u3002\"\u5168\u5C40\u89C4\u5219\"\u76F8\u5F53\u4E8E\u515C\u5E95\u89C4\u5219\u3002",en:"1. The priority of rules is: personal rules > subscription rules > global rules. \"Global rules\" are like a fallback rule.",zh_TW:"1.\u898F\u5247\u751F\u6548\u7684\u512A\u5148\u9806\u5E8F\u4F9D\u5E8F\u70BA\uFF1A\u500B\u4EBA\u898F\u5247 > \u8A02\u95B1\u898F\u5247 > \u5168\u57DF\u898F\u5247\u3002 \"\u5168\u57DF\u898F\u5247\"\u76F8\u7576\u65BC\u515C\u5E95\u898F\u5247\u3002"},rules_warn_2:{zh:"2\u3001\u201C\u8BA2\u9605\u89C4\u5219\u201D\u9009\u62E9\u6CE8\u5165\u540E\u624D\u4F1A\u751F\u6548\u3002",en:"2. \"Subscription rules\" will take effect only after injection is selected.",zh_TW:"2\u3001\u300C\u8A02\u95B1\u898F\u5247\u300D\u9078\u64C7\u6CE8\u5165\u5F8C\u624D\u6703\u751F\u6548\u3002"},rules_warn_3:{zh:"3\u3001\u5173\u4E8E\u89C4\u5219\u586B\u5199\uFF1A\u8F93\u5165\u6846\u7559\u7A7A\u6216\u4E0B\u62C9\u6846\u9009\u201C*\u201D\u8868\u793A\u91C7\u7528\u5168\u5C40\u89C4\u5219\u3002",en:"3. Regarding filling in the rules: Leave the input box blank or select \"*\" in the drop-down box to use global rule.",zh_TW:"3. \u898F\u5247\u586B\u5BEB\u8AAA\u660E\uFF1A\u8F38\u5165\u6846\u7559\u7A7A\u6216\u4E0B\u62C9\u9078\u64C7\u300C*\u300D\u8868\u793A\u4F7F\u7528\u5168\u57DF\u898F\u5247\u3002"},sync_warn:{zh:"\u6D89\u53CA\u9690\u79C1\u6570\u636E\u7684\u540C\u6B65\u8BF7\u8C28\u614E\u9009\u62E9\u7B2C\u4E09\u65B9\u540C\u6B65\u670D\u52A1\uFF0C\u5EFA\u8BAE\u81EA\u884C\u642D\u5EFA kiss-worker \u6216 WebDAV \u670D\u52A1\u3002",en:"When synchronizing data that involves privacy, please be cautious about choosing third-party sync services. It is recommended to set up your own sync service using kiss-worker or WebDAV.",zh_TW:"\u540C\u6B65\u6D89\u53CA\u96B1\u79C1\u8CC7\u6599\u6642\uFF0C\u8ACB\u8B39\u614E\u9078\u64C7\u7B2C\u4E09\u65B9\u540C\u6B65\u670D\u52D9\uFF1B\u5EFA\u8B70\u81EA\u5EFA kiss-worker \u6216 WebDAV \u670D\u52D9\u3002"},sync_warn_2:{zh:"\u5982\u679C\u670D\u52A1\u5668\u5B58\u5728\u5176\u4ED6\u5BA2\u6237\u7AEF\u540C\u6B65\u7684\u6570\u636E\uFF0C\u7B2C\u4E00\u6B21\u540C\u6B65\u5C06\u76F4\u63A5\u8986\u76D6\u672C\u5730\u914D\u7F6E\uFF0C\u540E\u9762\u5219\u6839\u636E\u4FEE\u6539\u65F6\u95F4\uFF0C\u65B0\u7684\u8986\u76D6\u65E7\u7684\u3002",en:"If the server has data synchronized by other clients, the first synchronization will directly overwrite the local configuration, and later, according to the modification time, the new one will overwrite the old one.",zh_TW:"\u82E5\u4F3A\u670D\u5668\u4E0A\u5B58\u5728\u5176\u4ED6\u7528\u6236\u7AEF\u540C\u6B65\u7684\u8CC7\u6599\uFF0C\u7B2C\u4E00\u6B21\u540C\u6B65\u6703\u76F4\u63A5\u8986\u84CB\u672C\u6A5F\u8A2D\u5B9A\uFF1B\u4E4B\u5F8C\u5247\u4F9D\u4FEE\u6539\u6642\u9593\uFF0C\u7531\u65B0\u7684\u8986\u84CB\u820A\u7684\u3002"},about_sync_api:{zh:"\u81EA\u5EFAkiss-wroker\u6570\u636E\u540C\u6B65\u670D\u52A1",en:"Self-hosting a Kiss-worker data sync service",zh_TW:"\u81EA\u5EFA kiss-wroker \u8CC7\u6599\u540C\u6B65\u670D\u52D9"},about_api:{zh:"1\u3001\u5176\u4E2D BuiltinAI \u4E3A\u6D4F\u89C8\u5668\u5185\u7F6EAI\u7FFB\u8BD1\uFF0C\u76EE\u524D\u4EC5 Chrome 138 \u53CA\u4EE5\u4E0A\u7248\u672C\u5F97\u5230\u652F\u6301\u3002",en:"1. BuiltinAI is the browser's built-in AI translation, which is currently only supported by Chrome 138 and above.",zh_TW:"1.\u5176\u4E2D BuiltinAI \u70BA\u700F\u89BD\u5668\u5167\u5EFAAI\u7FFB\u8B6F\uFF0C\u76EE\u524D\u50C5 Chrome 138 \u4EE5\u4E0A\u7248\u672C\u652F\u63F4\u3002"},about_api_2:{zh:"2\u3001\u5927\u90E8\u5206AI\u63A5\u53E3\u90FD\u4E0EOpenAI\u517C\u5BB9\uFF0C\u56E0\u6B64\u9009\u62E9\u6DFB\u52A0OpenAI\u7C7B\u578B\u5373\u53EF\u3002It should be noted that Prompt has two types: batch translation and nobatch translation. Not all interfaces support batch translation.",en:"2. Most AI interfaces are compatible with OpenAI, so just choose to add the OpenAI type.",zh_TW:"2.\u5927\u90E8\u5206AI\u4ECB\u9762\u90FD\u8207OpenAI\u76F8\u5BB9\uFF0C\u56E0\u6B64\u9078\u64C7\u65B0\u589EOpenAI\u985E\u578B\u5373\u53EF\u3002\u8981\u6CE8\u610F\u7684\u662FPrompt\u5206\u805A\u5408\u7FFB\u8B6F\u548C\u975E\u805A\u5408\u7FFB\u8B6F\u5169\u7A2E\uFF0C\u4E0D\u662F\u6240\u6709\u4ECB\u9762\u90FD\u652F\u63F4\u805A\u5408\u7FFB\u8B6F\u3002"},about_api_3:{zh:"3\u3001\u6682\u672A\u5217\u51FA\u7684\u63A5\u53E3\uFF0C\u7406\u8BBA\u4E0A\u90FD\u53EF\u4EE5\u901A\u8FC7\u81EA\u5B9A\u4E49\u63A5\u53E3 (Custom) \u7684\u5F62\u5F0F\u652F\u6301\u3002",en:"3. Interfaces that have not yet been launched can theoretically be supported through custom interfaces.",zh_TW:"3\u3001\u66AB\u672A\u5217\u51FA\u7684\u4ECB\u9762\uFF0C\u7406\u8AD6\u4E0A\u90FD\u53EF\u900F\u904E\u81EA\u8A02\u4ECB\u9762 (Custom) \u7684\u5F62\u5F0F\u652F\u63F4\u3002"},about_api_proxy:{zh:"\u67E5\u770B\u81EA\u5EFA\u4E00\u4E2A\u7FFB\u8BD1\u63A5\u53E3\u4EE3\u7406",en:"Check out the self-built translation interface proxy",zh_TW:"\u67E5\u770B\u5982\u4F55\u81EA\u5EFA\u7FFB\u8B6F\u4ECB\u9762 Proxy"},setting_helper:{zh:"\u65B0\u65E7\u914D\u7F6E\u5E76\u4E0D\u517C\u5BB9\uFF0C\u5BFC\u51FA\u7684\u65E7\u7248\u914D\u7F6E\uFF0C\u52FF\u518D\u6B21\u5BFC\u5165\u3002",en:"The old and new configurations are not compatible. Do not import the exported old configuration again.",zh_TW:"\u65B0\u820A\u914D\u7F6E\u4E26\u4E0D\u76F8\u5BB9\uFF0C\u532F\u51FA\u7684\u820A\u7248\u914D\u7F6E\uFF0C\u52FF\u518D\u6B21\u532F\u5165\u3002"},style_none:{zh:"\u65E0",en:"None",zh_TW:"\u7121"},under_line:{zh:"\u4E0B\u5212\u76F4\u7EBF",en:"Underline",zh_TW:"\u4E0B\u5283\u76F4\u7DDA"},dot_line:{zh:"\u4E0B\u5212\u70B9\u72B6\u7EBF",en:"Dotted Underline",zh_TW:"\u4E0B\u5283\u9EDE\u72C0\u7DDA"},dash_line:{zh:"\u4E0B\u5212\u865A\u7EBF",en:"Dashed Underline",zh_TW:"\u4E0B\u5283\u865B\u7DDA"},dash_box:{zh:"\u865A\u7EBF\u6846",en:"Dashed Box"},dash_line_bold:{zh:"\u4E0B\u5212\u865A\u7EBF\u52A0\u7C97",en:"Dashed Underline Bold",zh_TW:"\u4E0B\u5283\u865B\u7DDA"},dash_box_bold:{zh:"\u865A\u7EBF\u6846\u52A0\u7C97",en:"Dashed Box Bold",zh_TW:"\u865B\u7DDA\u6846\u52A0\u7C97"},marker:{zh:"\u9A6C\u514B\u7B14",en:"Marker",zh_TW:"\u99AC\u514B\u7B46"},gradient_marker:{zh:"\u6E10\u53D8\u9A6C\u514B\u7B14",en:"Gradient Marker",zh_TW:"\u6F38\u5C64\u99AC\u514B\u7B46"},wavy_line:{zh:"\u4E0B\u5212\u6CE2\u6D6A\u7EBF",en:"Wavy Underline",zh_TW:"\u4E0B\u5283\u6CE2\u6D6A\u7DDA"},wavy_line_bold:{zh:"\u4E0B\u5212\u6CE2\u6D6A\u7EBF\u52A0\u7C97",en:"Wavy Underline Bold",zh_TW:"\u4E0B\u5283\u6CE2\u6D6A\u7DDA\u52A0\u7C97"},fuzzy:{zh:"\u6A21\u7CCA",en:"Fuzzy",zh_TW:"\u6A21\u7CCA"},highlight:{zh:"\u9AD8\u4EAE",en:"Highlight",zh_TW:"\u53CD\u767D\u6A19\u793A"},blockquote:{zh:"\u5F15\u7528",en:"Blockquote",zh_TW:"\u5F15\u7528"},gradient:{zh:"\u6E10\u53D8",en:"Gradient",zh_TW:"\u6F38\u8B8A"},blink:{zh:"\u95EA\u73B0",en:"Blink",zh_TW:"\u9583\u73FE"},glow:{zh:"\u53D1\u5149",en:"Glow",zh_TW:"\u767C\u5149"},colorful:{zh:"\u591A\u5F69",en:"Colorful",zh_TW:"\u591A\u5F69"},setting:{zh:"\u8BBE\u7F6E",en:"Setting",zh_TW:"\u8A2D\u5B9A"},pattern:{zh:"\u5339\u914D\u7F51\u5740",en:"URL pattern",zh_TW:"\u5339\u914D\u7DB2\u5740"},pattern_helper:{zh:"1\u3001\u652F\u6301\u661F\u53F7(*)\u901A\u914D\u7B26\u30022\u3001\u591A\u4E2AURL\u7528\u6362\u884C\u6216\u82F1\u6587\u9017\u53F7\u201C,\u201D\u5206\u9694\u3002",en:"1. Supports the asterisk (*) wildcard character. 2. Separate multiple URLs with newlines or English commas \",\".",zh_TW:"1. \u652F\u63F4\u661F\u865F (*) \u842C\u7528\u5B57\u5143\u30022. \u591A\u500B URL \u8ACB\u4EE5\u63DB\u884C\u6216\u82F1\u6587\u9017\u865F\u300C,\u300D\u5206\u9694\u3002"},selector_helper:{zh:"1\u3001\u9700\u8981\u7FFB\u8BD1\u7684\u76EE\u6807\u5143\u7D20\u30022\u3001\u5F00\u542F\u81EA\u52A8\u626B\u63CF\u9875\u9762\u540E\uFF0C\u672C\u8BBE\u7F6E\u65E0\u6548\u30023\u3001\u9075\u5FAACSS\u9009\u62E9\u5668\u8BED\u6CD5\u3002",en:"1. The target element to be translated. 2. This setting is invalid when automatic page scanning is enabled. 3. Follow the CSS selector syntax.",zh_TW:"1\u3001\u9700\u8981\u7FFB\u8B6F\u7684\u76EE\u6A19\u5143\u7D20\u3002 2.\u958B\u555F\u81EA\u52D5\u6383\u63CF\u9801\u9762\u5F8C\uFF0C\u672C\u8A2D\u5B9A\u7121\u6548\u3002 3.\u9075\u5FAACSS\u9078\u64C7\u5668\u8A9E\u6CD5\u3002"},translate_switch:{zh:"\u5F00\u542F\u7FFB\u8BD1",en:"Translate Switch",zh_TW:"\u958B\u555F\u7FFB\u8B6F"},default_enabled:{zh:"\u9ED8\u8BA4\u5F00\u542F",en:"Enabled",zh_TW:"\u9810\u8A2D\u958B\u555F"},default_disabled:{zh:"\u9ED8\u8BA4\u5173\u95ED",en:"Disabled",zh_TW:"\u9810\u8A2D\u95DC\u9589"},selector:{zh:"\u9009\u62E9\u5668",en:"Selector",zh_TW:"\u9078\u64C7\u5668"},target_selector:{zh:"\u76EE\u6807\u5143\u7D20\u9009\u62E9\u5668",en:"Target element selector",zh_TW:"\u76EE\u6A19\u5143\u7D20\u9078\u64C7\u5668"},keep_selector:{zh:"\u4FDD\u7559\u5143\u7D20\u9009\u62E9\u5668",en:"Keep unchanged selector",zh_TW:"\u4FDD\u7559\u5143\u7D20\u9078\u64C7\u5668"},keep_selector_helper:{zh:"1\u3001\u76EE\u6807\u5143\u7D20\u4E0B\u9762\u9700\u8981\u539F\u6837\u4FDD\u7559\u7684\u5B50\u8282\u70B9\u30022\u3001\u9075\u5FAACSS\u9009\u62E9\u5668\u8BED\u6CD5\u3002",en:"1. The child nodes under the target element need to remain intact. 2. Follow the CSS selector syntax.",zh_TW:"1. \u76EE\u6A19\u5143\u7D20\u4E0B\u7684\u5B50\u7BC0\u9EDE\u9700\u8981\u4FDD\u6301\u539F\u6A23\u3002 2. \u9075\u5FAA CSS \u9078\u64C7\u5668\u8A9E\u6CD5\u3002"},root_selector:{zh:"\u6839\u8282\u70B9\u9009\u62E9\u5668",en:"Root node selector",zh_TW:"\u6839\u7BC0\u9EDE\u9078\u64C7\u5668"},root_selector_helper:{zh:"1\u3001\u7528\u4E8E\u7F29\u5C0F\u9875\u9762\u7FFB\u8BD1\u8303\u56F4\u30022\u3001\u9075\u5FAACSS\u9009\u62E9\u5668\u8BED\u6CD5\u3002",en:"1. Used to narrow the translation scope of the page. 2. Follow the CSS selector syntax.",zh_TW:"1.\u7528\u65BC\u7E2E\u5C0F\u9801\u9762\u7FFB\u8B6F\u7BC4\u570D\u3002 2\u3001\u9075\u5FAACSS\u9078\u64C7\u5668\u8A9E\u6CD5\u3002"},ignore_selector:{zh:"\u4E0D\u7FFB\u8BD1\u8282\u70B9\u9009\u62E9\u5668",en:"Ignore node selectors",zh_TW:"\u4E0D\u7FFB\u8B6F\u7BC0\u9EDE\u9078\u64C7\u5668"},ignore_selector_helper:{zh:"1\u3001\u9700\u8981\u5FFD\u7565\u7684\u8282\u70B9\u30022\u3001\u9075\u5FAACSS\u9009\u62E9\u5668\u8BED\u6CD5\u3002",en:"1. Nodes to be ignored. 2. Follow CSS selector syntax.",zh_TW:"1\u3001\u9700\u8981\u5FFD\u7565\u7684\u7BC0\u9EDE\u3002 2\u3001\u9075\u5FAACSS\u9078\u64C7\u5668\u8A9E\u6CD5\u3002"},terms:{zh:"\u4E13\u4E1A\u672F\u8BED",en:"Terms",zh_TW:"\u5C08\u696D\u8853\u8A9E"},terms_helper:{zh:"1\u3001\u652F\u6301\u6B63\u5219\u8868\u8FBE\u5F0F\u5339\u914D\uFF0C\u65E0\u9700\u659C\u6746\uFF0C\u4E0D\u652F\u6301\u4FEE\u9970\u7B26\u30022\u3001\u591A\u6761\u672F\u8BED\u7528\u6362\u884C\u6216\u5206\u53F7\u201C;\u201D\u9694\u5F00\u30023\u3001\u672F\u8BED\u548C\u8BD1\u6587\u7528\u82F1\u6587\u9017\u53F7\u201C,\u201D\u9694\u5F00\u30024\u3001\u6CA1\u6709\u8BD1\u6587\u89C6\u4E3A\u4E0D\u7FFB\u8BD1\u672F\u8BED\u3002",en:"1. Supports regular expression matching, no slash required, and no modifiers are supported. 2. Separate multiple terms with newlines or semicolons \";\". 3. Terms and translations are separated by English commas \",\". 4. If there is no translation, the term will be deemed not to be translated.",zh_TW:"1. \u652F\u63F4\u6B63\u5247\u8868\u9054\u5F0F\u6BD4\u5C0D\uFF0C\u7121\u9700\u659C\u7DDA\uFF0C\u4E14\u4E0D\u652F\u63F4\u4FEE\u98FE\u7B26\u30022. \u591A\u689D\u8853\u8A9E\u4EE5\u63DB\u884C\u6216\u5206\u865F\u300C;\u300D\u5206\u9694\u30023. \u8853\u8A9E\u8207\u8B6F\u6587\u4EE5\u82F1\u6587\u9017\u865F\u300C,\u300D\u5206\u9694\u30024. \u7121\u8B6F\u6587\u8005\u8996\u70BA\u4E0D\u7FFB\u8B6F\u8A72\u8853\u8A9E\u3002"},ai_terms:{zh:"AI\u4E13\u4E1A\u672F\u8BED",en:"AI Terms",zh_TW:"AI\u5C08\u696D\u8853\u8A9E"},ai_terms_helper:{zh:"1\u3001AI\u667A\u80FD\u66FF\u6362\uFF0C\u4E0D\u652F\u6301\u6B63\u5219\u8868\u8FBE\u5F0F\u30022\u3001\u591A\u6761\u672F\u8BED\u7528\u6362\u884C\u6216\u5206\u53F7\u201C;\u201D\u9694\u5F00\u30023\u3001\u672F\u8BED\u548C\u8BD1\u6587\u7528\u82F1\u6587\u9017\u53F7\u201C,\u201D\u9694\u5F00\u30024\u3001\u6CA1\u6709\u8BD1\u6587\u89C6\u4E3A\u4E0D\u7FFB\u8BD1\u672F\u8BED\u3002",en:"1. AI intelligent replacement does not support regular expressions.2. Separate multiple terms with newlines or semicolons \";\". 3. Terms and translations are separated by English commas \",\". 4. If there is no translation, the term will be deemed not to be translated.",zh_TW:"1.AI\u667A\u80FD\u66FF\u63DB\uFF0C\u4E0D\u652F\u63F4\u6B63\u898F\u8868\u793A\u5F0F\u30022. \u591A\u689D\u8853\u8A9E\u4EE5\u63DB\u884C\u6216\u5206\u865F\u300C;\u300D\u5206\u9694\u30023. \u8853\u8A9E\u8207\u8B6F\u6587\u4EE5\u82F1\u6587\u9017\u865F\u300C,\u300D\u5206\u9694\u30024. \u7121\u8B6F\u6587\u8005\u8996\u70BA\u4E0D\u7FFB\u8B6F\u8A72\u8853\u8A9E\u3002"},text_ext_style:{zh:"\u8BD1\u6587\u9644\u52A0\u6837\u5F0F",en:"Translation additional styles",zh_TW:"\u8B6F\u6587\u9644\u52A0\u6A23\u5F0F"},selector_style:{zh:"\u9009\u62E9\u5668\u8282\u70B9\u6837\u5F0F",en:"Selector Style",zh_TW:"\u9078\u64C7\u5668\u7BC0\u9EDE\u6A23\u5F0F"},terms_style:{zh:"\u4E13\u4E1A\u672F\u8BED\u6837\u5F0F",en:"Terms Style",zh_TW:"\u5C08\u696D\u8853\u8A9E\u6A23\u5F0F"},highlight_style:{zh:"\u8BCD\u6C47\u9AD8\u4EAE\u6837\u5F0F",en:"Fav Words highlight style",zh_TW:"\u8A5E\u5F59\u9AD8\u4EAE\u6A23\u5F0F"},selector_style_helper:{zh:"\u5F00\u542F\u7FFB\u8BD1\u65F6\u6CE8\u5165\u3002",en:"It is injected when translation is turned on.",zh_TW:"\u5728\u958B\u555F\u7FFB\u8B6F\u6642\u6CE8\u5165\u3002"},selector_parent_style:{zh:"\u9009\u62E9\u5668\u7236\u8282\u70B9\u6837\u5F0F",en:"Parent Selector Style",zh_TW:"\u9078\u64C7\u5668\u7236\u7BC0\u9EDE\u6A23\u5F0F"},selector_grand_style:{zh:"\u9009\u62E9\u5668\u7956\u8282\u70B9\u6837\u5F0F",en:"Grand Selector Style",zh_TW:"\u9078\u64C7\u5668\u7956\u7BC0\u9EDE\u6A23\u5F0F"},inject_js:{zh:"\u6CE8\u5165JS",en:"Inject JS",zh_TW:"\u6CE8\u5165 JS"},inject_js_helper:{zh:"\u9884\u52A0\u8F7D\u65F6\u6CE8\u5165\uFF0C\u4E00\u4E2A\u9875\u9762\u4EC5\u8FD0\u884C\u4E00\u6B21\u3002\u5185\u7F6E\u5168\u5C40\u5BF9\u8C61 KT: {\n apiTranslate,\n apiDectect,\n apiSetting,\n apisMap,\n toLang,\n docInfo,\n glossary,\n }",en:"Injected during preload, runs only once per page. Built-in global object KT: {\n apiTranslate,\n apiDectect,\n apiSetting,\n apisMap,\n toLang,\n docInfo,\n glossary,\n }",zh_TW:"\u9810\u5148\u8F09\u5165\u6642\u6CE8\u5165\uFF0C\u4E00\u500B\u9801\u9762\u50C5\u904B\u884C\u4E00\u6B21\u3002\u5167\u5EFA\u5168\u57DF\u7269\u4EF6 KT: {\n apiTranslate,\n apiDectect,\n apiSetting,\n apisMap,\n toLang,\n docInfo,\n glossary,\n }"},inject_css:{zh:"\u6CE8\u5165CSS",en:"Inject CSS",zh_TW:"\u6CE8\u5165 CSS"},inject_css_helper:{zh:"\u9884\u52A0\u8F7D\u65F6\u6CE8\u5165\uFF0C\u4E00\u4E2A\u9875\u9762\u4EC5\u8FD0\u884C\u4E00\u6B21\u3002",en:"Injected during preload, runs only once per page.",zh_TW:"\u9810\u5148\u8F09\u5165\u6642\u6CE8\u5165\uFF0C\u4E00\u500B\u9801\u9762\u50C5\u904B\u884C\u4E00\u6B21\u3002"},fixer_function:{zh:"\u4FEE\u590D\u51FD\u6570",en:"Fixer Function",zh_TW:"\u4FEE\u5FA9\u51FD\u5F0F"},fixer_function_helper:{zh:"1\u3001br\u662F\u5C06
\u6362\u884C\u66FF\u6362\u6210

\u30022\u3001bn\u662F\u5C06\\n\u6362\u884C\u66FF\u6362\u6210

\u30023\u3001brToDiv\u548CbnToDiv\u662F\u66FF\u6362\u6210

\u3002",en:"1. br replaces
line breaks with

. 2. bn replaces \\n newline with

. 3. brToDiv and bnToDiv are replaced with

.",zh_TW:"1. br \u6703\u5C07
\u63DB\u884C\u66FF\u63DB\u70BA

\u30022. bn \u6703\u5C07 \\n \u63DB\u884C\u66FF\u63DB\u70BA

\u30023. brToDiv \u8207 bnToDiv \u6703\u66FF\u63DB\u70BA

\u3002"},import:{zh:"\u5BFC\u5165",en:"Import",zh_TW:"\u532F\u5165"},export:{zh:"\u5BFC\u51FA",en:"Export",zh_TW:"\u532F\u51FA"},export_translation:{zh:"\u5BFC\u51FA\u91CA\u4E49",en:"Export Translation",zh_TW:"\u532F\u51FA\u91CB\u7FA9"},error_cant_be_blank:{zh:"\u4E0D\u80FD\u4E3A\u7A7A",en:"Can not be blank",zh_TW:"\u4E0D\u53EF\u70BA\u7A7A"},error_duplicate_values:{zh:"\u5B58\u5728\u91CD\u590D\u7684\u503C",en:"There are duplicate values",zh_TW:"\u5B58\u5728\u91CD\u8907\u7684\u503C"},error_wrong_file_type:{zh:"\u9519\u8BEF\u7684\u6587\u4EF6\u7C7B\u578B",en:"Wrong file type",zh_TW:"\u6A94\u6848\u985E\u578B\u932F\u8AA4"},error_fetch_url:{zh:"\u8BF7\u68C0\u67E5url\u5730\u5740\u662F\u5426\u6B63\u786E\u6216\u7A0D\u540E\u518D\u8BD5\u3002",en:"Please check if the url address is correct or try again later.",zh_TW:"\u8ACB\u6AA2\u67E5 URL \u662F\u5426\u6B63\u78BA\u6216\u7A0D\u5F8C\u518D\u8A66\u3002"},deepl_api:{zh:"DeepL \u63A5\u53E3",en:"DeepL API",zh_TW:"DeepL \u4ECB\u9762"},deepl_key:{zh:"DeepL \u5BC6\u94A5",en:"DeepL Key",zh_TW:"DeepL \u91D1\u9470"},openai_api:{zh:"OpenAI \u63A5\u53E3",en:"OpenAI API",zh_TW:"OpenAI \u4ECB\u9762"},openai_key:{zh:"OpenAI \u5BC6\u94A5",en:"OpenAI Key",zh_TW:"OpenAI \u91D1\u9470"},openai_model:{zh:"OpenAI \u6A21\u578B",en:"OpenAI Model",zh_TW:"OpenAI \u6A21\u578B"},openai_prompt:{zh:"OpenAI \u63D0\u793A\u8BCD",en:"OpenAI Prompt",zh_TW:"OpenAI \u63D0\u793A\u8A5E"},if_clear_cache:{zh:"\u662F\u5426\u6E05\u9664\u7F13\u5B58\uFF08\u9ED8\u8BA4\u7F13\u5B587\u5929\uFF09",en:"Whether clear cache (Default cache is 7 days)",zh_TW:"\u662F\u5426\u6E05\u9664\u5FEB\u53D6\uFF08\u9810\u8A2D\u5FEB\u53D67\u5929\uFF09"},clear_cache_never:{zh:"\u4E0D\u6E05\u9664\u7F13\u5B58",en:"Never clear cache",zh_TW:"\u4E0D\u6E05\u9664\u5FEB\u53D6"},clear_cache_restart:{zh:"\u91CD\u542F\u6D4F\u89C8\u5668\u65F6\u6E05\u9664\u7F13\u5B58",en:"Clear cache when restarting browser",zh_TW:"\u91CD\u65B0\u555F\u52D5\u700F\u89BD\u5668\u6642\u6E05\u9664\u5FEB\u53D6"},data_sync_type:{zh:"\u6570\u636E\u540C\u6B65\u65B9\u5F0F",en:"Data Sync Type",zh_TW:"\u8CC7\u6599\u540C\u6B65\u65B9\u5F0F"},data_sync_url:{zh:"\u6570\u636E\u540C\u6B65\u63A5\u53E3",en:"Data Sync API",zh_TW:"\u8CC7\u6599\u540C\u6B65\u4ECB\u9762"},data_sync_user:{zh:"\u6570\u636E\u540C\u6B65\u8D26\u6237",en:"Data Sync User",zh_TW:"\u8CC7\u6599\u540C\u6B65\u5E33\u865F"},data_sync_key:{zh:"\u6570\u636E\u540C\u6B65\u5BC6\u94A5",en:"Data Sync Key",zh_TW:"\u8CC7\u6599\u540C\u6B65\u91D1\u9470"},sync_now:{zh:"\u7ACB\u5373\u540C\u6B65",en:"Sync Now",zh_TW:"\u7ACB\u5373\u540C\u6B65"},sync_success:{zh:"\u540C\u6B65\u6210\u529F\uFF01",en:"Sync Success",zh_TW:"\u540C\u6B65\u6210\u529F\uFF01"},sync_failed:{zh:"\u540C\u6B65\u5931\u8D25\uFF01",en:"Sync Error",zh_TW:"\u540C\u6B65\u5931\u6557\uFF01"},error_got_some_wrong:{zh:"\u62B1\u6B49\uFF0C\u51FA\u9519\u4E86\uFF01",en:"Sorry, something went wrong!",zh_TW:"\u62B1\u6B49\uFF0C\u767C\u751F\u932F\u8AA4\uFF01"},error_sync_setting:{zh:"\u60A8\u7684\u540C\u6B65\u7C7B\u578B\u5FC5\u987B\u4E3A\u201CKISS-Worker\u201D\uFF0C\u4E14\u9700\u586B\u5199\u5B8C\u6574",en:"Your sync type must be \"KISS-Worker\" and must be filled in completely",zh_TW:"\u60A8\u7684\u540C\u6B65\u578B\u614B\u5FC5\u9808\u70BA\u300CKISS-Worker\u300D\uFF0C\u4E14\u9700\u586B\u5BEB\u5B8C\u6574\u3002"},click_test:{zh:"\u70B9\u51FB\u6D4B\u8BD5",en:"Click Test",zh_TW:"\u9EDE\u64CA\u6E2C\u8A66"},test_success:{zh:"\u6D4B\u8BD5\u6210\u529F",en:"Test success",zh_TW:"\u6E2C\u8A66\u6210\u529F"},test_failed:{zh:"\u6D4B\u8BD5\u5931\u8D25",en:"Test failed",zh_TW:"\u6E2C\u8A66\u5931\u6557"},clear_all_cache_now:{zh:"\u7ACB\u5373\u6E05\u9664\u5168\u90E8\u7F13\u5B58",en:"Clear all cache now",zh_TW:"\u7ACB\u5373\u6E05\u9664\u5168\u90E8\u5FEB\u53D6"},clear_cache:{zh:"\u6E05\u9664\u7F13\u5B58",en:"Clear Cache",zh_TW:"\u6E05\u9664\u5FEB\u53D6"},clear_success:{zh:"\u6E05\u9664\u6210\u529F",en:"Clear success",zh_TW:"\u6E05\u9664\u6210\u529F"},clear_failed:{zh:"\u6E05\u9664\u5931\u8D25",en:"Clear failed",zh_TW:"\u6E05\u9664\u5931\u6557"},share:{zh:"\u5206\u4EAB",en:"Share",zh_TW:"\u5206\u4EAB"},clear_all:{zh:"\u6E05\u7A7A",en:"Clear All",zh_TW:"\u6E05\u7A7A"},help:{zh:"\u6C42\u52A9",en:"Help",zh_TW:"\u6C42\u52A9"},restore_default:{zh:"\u6062\u590D\u9ED8\u8BA4",en:"Restore Default",zh_TW:"\u6062\u5FA9\u9810\u8A2D"},shortcuts_setting:{zh:"\u5FEB\u6377\u952E\u8BBE\u7F6E",en:"Shortcuts Setting",zh_TW:"\u5FEB\u6377\u9375\u8A2D\u5B9A"},toggle_translate_shortcut:{zh:"\"\u5F00\u542F\u7FFB\u8BD1\"\u5FEB\u6377\u952E",en:"\"Toggle Translate\" Shortcut",zh_TW:"\u300C\u958B\u555F\u7FFB\u8B6F\u300D\u5FEB\u6377\u9375"},toggle_style_shortcut:{zh:"\"\u5207\u6362\u6837\u5F0F\"\u5FEB\u6377\u952E",en:"\"Toggle Style\" Shortcut",zh_TW:"\u300C\u5207\u63DB\u6A23\u5F0F\u300D\u5FEB\u6377\u9375"},toggle_popup_shortcut:{zh:"\"\u6253\u5F00\u5F39\u7A97\"\u5FEB\u6377\u952E",en:"\"Open Popup\" Shortcut",zh_TW:"\u300C\u958B\u555F\u5F48\u7A97\u300D\u5FEB\u6377\u9375"},open_setting_shortcut:{zh:"\"\u6253\u5F00\u8BBE\u7F6E\"\u5FEB\u6377\u952E",en:"\"Open Setting\" Shortcut",zh_TW:"\u300C\u958B\u555F\u8A2D\u5B9A\u300D\u5FEB\u6377\u9375"},hide_fab_button:{zh:"\u9690\u85CF\u60AC\u6D6E\u6309\u94AE",en:"Hide Fab Button",zh_TW:"\u96B1\u85CF\u61F8\u6D6E\u6309\u9215"},fab_click_action:{zh:"\u5355\u51FB\u60AC\u6D6E\u6309\u94AE\u52A8\u4F5C",en:"Single Click Fab Action",zh_TW:"\u55AE\u64CA\u61F8\u6D6E\u6309\u94AE\u52D5\u4F5C"},fab_click_menu:{zh:"\u5F39\u51FA\u83DC\u5355",en:"Popup Menu",zh_TW:"\u5F48\u51FA\u9078\u55AE"},fab_click_translate:{zh:"\u76F4\u63A5\u7FFB\u8BD1",en:"Translate",zh_TW:"\u76F4\u63A5\u7FFB\u8B6F"},hide_tran_button:{zh:"\u9690\u85CF\u7FFB\u8BD1\u6309\u94AE",en:"Hide Translate Button",zh_TW:"\u96B1\u85CF\u7FFB\u8B6F\u6309\u9215"},hide_click_away:{zh:"\u70B9\u51FB\u5916\u90E8\u5173\u95ED\u5F39\u7A97",en:"Click outside to close the pop-up window",zh_TW:"\u9EDE\u64CA\u5916\u90E8\u95DC\u9589\u5F48\u7A97"},use_simple_style:{zh:"\u4F7F\u7528\u7B80\u6D01\u754C\u9762",en:"Use a simple interface",zh_TW:"\u4F7F\u7528\u7C21\u6F54\u4ECB\u9762"},show:{zh:"\u663E\u793A",en:"Show",zh_TW:"\u986F\u793A"},hide:{zh:"\u9690\u85CF",en:"Hide",zh_TW:"\u96B1\u85CF"},save_rule:{zh:"\u4FDD\u5B58\u672C\u7AD9\u89C4\u5219",en:"Save this site rule",zh_TW:"\u4FDD\u5B58\u672C\u7AD9\u898F\u5247"},global_rule:{zh:"\u5168\u5C40\u89C4\u5219",en:"Global Rule",zh_TW:"\u5168\u57DF\u898F\u5247"},input_translate:{zh:"\u8F93\u5165\u6846\u7FFB\u8BD1",en:"Input Box Translation",zh_TW:"\u8F38\u5165\u6846\u7FFB\u8B6F"},use_input_box_translation:{zh:"\u542F\u7528\u8F93\u5165\u6846\u7FFB\u8BD1",en:"Input Box Translation",zh_TW:"\u555F\u7528\u8F38\u5165\u6846\u7FFB\u8B6F"},input_selector:{zh:"\u8F93\u5165\u6846\u9009\u62E9\u5668",en:"Input Selector",zh_TW:"\u8F38\u5165\u6846\u9078\u64C7\u5668"},input_selector_helper:{zh:"\u7528\u4E8E\u8F93\u5165\u6846\u7FFB\u8BD1\u3002",en:"Used for input box translation.",zh_TW:"\u7528\u65BC\u8F38\u5165\u6846\u7FFB\u8B6F\u3002"},trigger_trans_shortcut:{zh:"\u89E6\u53D1\u7FFB\u8BD1\u5FEB\u6377\u952E",en:"Trigger Translation Shortcut Keys",zh_TW:"\u89F8\u767C\u7FFB\u8B6F\u5FEB\u6377\u9375"},trigger_trans_shortcut_help:{zh:"\u9ED8\u8BA4\u4E3A\u5355\u51FB\u201CAltLeft+KeyI\u201D",en:"Default is \"AltLeft+KeyI\"",zh_TW:"\u9810\u8A2D\u70BA\u6309\u4E0B\u300CAltLeft+KeyI\u300D"},shortcut_press_count:{zh:"\u5FEB\u6377\u952E\u8FDE\u51FB\u6B21\u6570",en:"Shortcut Press Number",zh_TW:"\u5FEB\u6377\u9375\u9023\u64CA\u6B21\u6578"},combo_timeout:{zh:"\u8FDE\u51FB\u8D85\u65F6\u65F6\u95F4 (10-1000ms)",en:"Combo Timeout (10-1000ms)",zh_TW:"\u9023\u64CA\u903E\u6642 (10-1000ms)"},input_trans_start_sign:{zh:"\u7FFB\u8BD1\u8D77\u59CB\u6807\u8BC6",en:"Translation Start Sign",zh_TW:"\u7FFB\u8B6F\u8D77\u59CB\u6A19\u8A18"},input_trans_start_sign_help:{zh:"\u6807\u8BC6\u540E\u9762\u53EF\u4EE5\u52A0\u76EE\u6807\u8BED\u8A00\u4EE3\u7801\uFF0C\u5982\uFF1A \u201C/en \u4F60\u597D\u201D\u3001\u201C/zh hello\u201D",en:"The target language code can be added after the sign, such as: \"/en \u4F60\u597D\", \"/zh hello\"",zh_TW:"\u6A19\u8A18\u5F8C\u53EF\u52A0\u4E0A\u76EE\u6A19\u8A9E\u8A00\u4EE3\u78BC\uFF0C\u4F8B\u5982\uFF1A\u300C/en \u4F60\u597D\u300D\u3001\u300C/zh hello\u300D"},detect_lang_remote:{zh:"\u8FDC\u7A0B\u8BED\u8A00\u68C0\u6D4B",en:"Remote language detection",zh_TW:"\u9060\u7AEF\u8A9E\u8A00\u5075\u6E2C"},detect_lang_remote_help:{zh:"\u542F\u7528\u540E\u68C0\u6D4B\u51C6\u786E\u5EA6\u589E\u52A0\uFF0C\u4F46\u4F1A\u964D\u4F4E\u7FFB\u8BD1\u901F\u5EA6\uFF0C\u8BF7\u914C\u60C5\u5F00\u542F",en:"After enabling, the detection accuracy will increase, but it will reduce the translation speed. Please enable it as appropriate.",zh_TW:"\u555F\u7528\u5F8C\u53EF\u63D0\u5347\u5075\u6E2C\u6E96\u78BA\u5EA6\uFF0C\u4F46\u6703\u964D\u4F4E\u7FFB\u8B6F\u901F\u5EA6\uFF0C\u8ACB\u8996\u9700\u8981\u958B\u555F\u3002"},detect_lang_service:{zh:"\u8BED\u8A00\u68C0\u6D4B\u670D\u52A1",en:"Language detect service",zh_TW:"\u8A9E\u8A00\u6AA2\u6E2C\u670D\u52D9"},disable:{zh:"\u7981\u7528",en:"Disable",zh_TW:"\u505C\u7528"},enable:{zh:"\u542F\u7528",en:"Enable",zh_TW:"\u555F\u7528"},selection_translate:{zh:"\u5212\u8BCD\u7FFB\u8BD1",en:"Selection Translation",zh_TW:"\u5283\u8A5E\u7FFB\u8B6F"},toggle_selection_translate:{zh:"\u542F\u7528\u5212\u8BCD\u7FFB\u8BD1",en:"Use Selection Translate",zh_TW:"\u555F\u7528\u5283\u8A5E\u7FFB\u8B6F"},trigger_tranbox_shortcut:{zh:"\u663E\u793A\u7FFB\u8BD1\u6846/\u7FFB\u8BD1\u9009\u4E2D\u6587\u5B57\u5FEB\u6377\u952E",en:"Open Translate Popup/Translate Selected Shortcut",zh_TW:"\u986F\u793A\u7FFB\u8B6F\u6846\uFF0F\u7FFB\u8B6F\u9078\u4E2D\u6587\u5B57\u5FEB\u6377\u9375"},tranbtn_offset_x:{zh:"\u7FFB\u8BD1\u6309\u94AE\u504F\u79FBX\uFF08\xB1200\uFF09",en:"Translate Button Offset X (\xB1200)",zh_TW:"\u7FFB\u8B6F\u6309\u9215\u4F4D\u79FB X\uFF08\xB1200\uFF09"},tranbtn_offset_y:{zh:"\u7FFB\u8BD1\u6309\u94AE\u504F\u79FBY\uFF08\xB1200\uFF09",en:"Translate Button Offset Y (\xB1200)",zh_TW:"\u7FFB\u8B6F\u6309\u9215\u4F4D\u79FB Y\uFF08\xB1200\uFF09"},tranbox_offset_x:{zh:"\u7FFB\u8BD1\u6846\u504F\u79FBX\uFF08\xB1200\uFF09",en:"Translate Box Offset X (\xB1200)",zh_TW:"\u7FFB\u8B6F\u6846\u4F4D\u79FB X\uFF08\xB1200\uFF09"},tranbox_offset_y:{zh:"\u7FFB\u8BD1\u6846\u504F\u79FBY\uFF08\xB1200\uFF09",en:"Translate Box Offset Y (\xB1200)",zh_TW:"\u7FFB\u8B6F\u6846\u4F4D\u79FB Y\uFF08\xB1200\uFF09"},translated_text:{zh:"\u8BD1\u6587",en:"Translated Text",zh_TW:"\u8B6F\u6587"},original_text:{zh:"\u539F\u6587",en:"Original Text",zh_TW:"\u539F\u6587"},favorite_words:{zh:"\u6536\u85CF\u8BCD\u6C47",en:"Favorite Words",zh_TW:"\u6536\u85CF\u8A5E\u5F59"},touch_setting:{zh:"\u89E6\u5C4F\u8BBE\u7F6E",en:"Touch Setting",zh_TW:"\u89F8\u63A7\u8A2D\u5B9A"},touch_translate_shortcut:{zh:"\u89E6\u5C4F\u7FFB\u8BD1\u5FEB\u6377\u65B9\u5F0F (\u652F\u6301\u591A\u9009)",en:"Touch Translate Shortcut (multiple supported)",zh_TW:"\u89F8\u63A7\u7FFB\u8B6F\u6377\u5F91 (\u652F\u63F4\u591A\u9078)"},touch_tap_0:{zh:"\u7981\u7528",en:"Disable",zh_TW:"\u505C\u7528"},touch_tap_2:{zh:"\u53CC\u6307\u8F7B\u89E6",en:"Two finger tap",zh_TW:"\u96D9\u6307\u8F15\u89F8"},touch_tap_3:{zh:"\u4E09\u6307\u8F7B\u89E6",en:"Three finger tap",zh_TW:"\u4E09\u6307\u8F15\u89F8"},touch_tap_4:{zh:"\u56DB\u6307\u8F7B\u89E6",en:"Four finger tap",zh_TW:"\u56DB\u6307\u8F15\u89F8"},touch_tap_5:{zh:"\u5355\u6307\u53CC\u51FB",en:"Double-click",zh_TW:"\u55AE\u6307\u96D9\u64CA"},touch_tap_6:{zh:"\u5355\u6307\u4E09\u51FB",en:"Triple-click",zh_TW:"\u55AE\u6307\u4E09\u64CA"},touch_tap_7:{zh:"\u53CC\u6307\u53CC\u51FB",en:"Two-finger double-click",zh_TW:"\u96D9\u6307\u96D9\u64CA"},translate_blacklist:{zh:"\u7981\u7528\u7FFB\u8BD1\u540D\u5355",en:"Translate Blacklist",zh_TW:"\u505C\u7528\u7FFB\u8B6F\u540D\u55AE"},disabled_orilist:{zh:"\u7981\u7528Origin\u540D\u5355",en:"Disabled Origin List",zh_TW:"\u505C\u7528 Origin \u540D\u55AE"},disabled_csplist:{zh:"\u7981\u7528CSP\u540D\u5355",en:"Disabled CSP List",zh_TW:"\u505C\u7528 CSP \u540D\u55AE"},disabled_csplist_helper:{zh:"3\u3001\u901A\u8FC7\u8C03\u6574CSP\u7B56\u7565\uFF0C\u4F7F\u5F97\u67D0\u4E9B\u9875\u9762\u80FD\u591F\u6CE8\u5165JS/CSS/Media\uFF0C\u8BF7\u8C28\u614E\u4F7F\u7528\uFF0C\u9664\u975E\u60A8\u5DF2\u77E5\u6653\u76F8\u5173\u98CE\u9669\u3002",en:"3. By adjusting the CSP policy, some pages can inject JS/CSS/Media. Please use it with caution unless you are aware of the related risks.",zh_TW:"3. \u900F\u904E\u8ABF\u6574 CSP \u653F\u7B56\uFF0C\u4F7F\u90E8\u5206\u9801\u9762\u53EF\u6CE8\u5165 JS/CSS/Media\u3002\u8ACB\u8B39\u614E\u4F7F\u7528\uFF0C\u9664\u975E\u60A8\u5DF2\u77E5\u6089\u76F8\u95DC\u98A8\u96AA\u3002"},skip_langs:{zh:"\u4E0D\u7FFB\u8BD1\u7684\u8BED\u8A00",en:"Disable Languages",zh_TW:"\u4E0D\u7FFB\u8B6F\u7684\u8A9E\u8A00"},skip_langs_helper:{zh:"\u6B64\u529F\u80FD\u4F9D\u8D56\u51C6\u786E\u7684\u8BED\u8A00\u68C0\u6D4B\uFF0C\u5EFA\u8BAE\u542F\u7528\u8FDC\u7A0B\u8BED\u8A00\u68C0\u6D4B\u3002",en:"This feature relies on accurate language detection. It is recommended to enable remote language detection.",zh_TW:"\u6B64\u529F\u80FD\u4EF0\u8CF4\u6E96\u78BA\u7684\u8A9E\u8A00\u5075\u6E2C\uFF0C\u5EFA\u8B70\u555F\u7528\u9060\u7AEF\u8A9E\u8A00\u5075\u6E2C\u3002"},context_menus:{zh:"\u53F3\u952E\u83DC\u5355",en:"Context Menus",zh_TW:"\u53F3\u9375\u9078\u55AE"},hide_context_menus:{zh:"\u9690\u85CF\u53F3\u952E\u83DC\u5355",en:"Hide Context Menus",zh_TW:"\u96B1\u85CF\u53F3\u9375\u9078\u55AE"},simple_context_menus:{zh:"\u7B80\u5355\u53F3\u952E\u83DC\u5355",en:"Simple_context_menus Context Menus",zh_TW:"\u7C21\u6613\u53F3\u9375\u9078\u55AE"},secondary_context_menus:{zh:"\u4E8C\u7EA7\u53F3\u952E\u83DC\u5355",en:"Secondary Context Menus",zh_TW:"\u6B21\u7D1A\u53F3\u9375\u9078\u55AE"},mulkeys_help:{zh:"\u652F\u6301\u7528\u6362\u884C\u6216\u82F1\u6587\u9017\u53F7\u201C,\u201D\u5206\u9694\uFF0C\u8F6E\u8BE2\u8C03\u7528\u3002",en:"Supports polling calls separated by newlines or English commas \",\".",zh_TW:"\u652F\u63F4\u4EE5\u63DB\u884C\u6216\u82F1\u6587\u9017\u865F\u300C,\u300D\u5206\u9694\uFF0C\u8F2A\u8A62\u547C\u53EB\u3002"},translation_element_tag:{zh:"\u8BD1\u6587\u5143\u7D20\u6807\u7B7E",en:"Translation Element Tag",zh_TW:"\u8B6F\u6587\u5143\u7D20\u6A19\u7C64"},show_only_translations:{zh:"\u4EC5\u663E\u793A\u8BD1\u6587",en:"Show Only Translations",zh_TW:"\u50C5\u986F\u793A\u8B6F\u6587"},show_only_translations_help:{zh:"\u975E\u5B8C\u7F8E\u5B9E\u73B0\uFF0C\u67D0\u4E9B\u9875\u9762\u53EF\u80FD\u6709\u6837\u5F0F\u7B49\u95EE\u9898\u3002",en:"It is not a perfect implementation and some pages may have style issues.",zh_TW:"\u6B64\u70BA\u975E\u5B8C\u7F8E\u5BE6\u4F5C\uFF0C\u90E8\u5206\u9801\u9762\u53EF\u80FD\u51FA\u73FE\u6A23\u5F0F\u7B49\u554F\u984C\u3002"},translate_page_title:{zh:"\u662F\u5426\u7FFB\u8BD1\u9875\u9762\u6807\u9898",en:"Translate Page Title",zh_TW:"\u662F\u5426\u7FFB\u8B6F\u9801\u9762\u6A19\u984C"},more:{zh:"\u66F4\u591A",en:"More",zh_TW:"\u66F4\u591A"},less:{zh:"\u66F4\u5C11",en:"Less",zh_TW:"\u66F4\u5C11"},fixer_selector:{zh:"\u7F51\u9875\u4FEE\u590D\u9009\u62E9\u5668",en:"Fixer Selector",zh_TW:"\u7DB2\u9801\u4FEE\u5FA9\u9078\u64C7\u5668"},reg_niutrans:{zh:"\u83B7\u53D6\u5C0F\u725B\u7FFB\u8BD1\u5BC6\u94A5\u3010\u7B80\u7EA6\u7FFB\u8BD1\u4E13\u5C5E\u65B0\u7528\u6237\u6CE8\u518C\u8D60\u9001300\u4E07\u5B57\u7B26\u3011",en:"Get NiuTrans APIKey [KISS Translator Exclusive New User Registration Free 3 Million Characters]",zh_TW:"\u53D6\u5F97\u5C0F\u725B\u7FFB\u8B6F\u91D1\u9470\u3010\u7C21\u7D04\u7FFB\u8B6F\u5C08\u5C6C\u65B0\u7528\u6236\u8A3B\u518A\u8D08\u9001 300 \u842C\u5B57\u5143\u3011"},trigger_mode:{zh:"\u89E6\u53D1\u65B9\u5F0F",en:"Trigger Mode",zh_TW:"\u89F8\u767C\u65B9\u5F0F"},trigger_click:{zh:"\u70B9\u51FB\u89E6\u53D1",en:"Click Trigger",zh_TW:"\u9EDE\u64CA\u89F8\u767C"},trigger_hover:{zh:"\u9F20\u6807\u60AC\u505C\u89E6\u53D1",en:"Hover Trigger",zh_TW:"\u6ED1\u9F20\u61F8\u505C\u89F8\u767C"},trigger_select:{zh:"\u9009\u4E2D\u89E6\u53D1",en:"Select Trigger",zh_TW:"\u9078\u53D6\u89F8\u767C"},extend_styles:{zh:"\u9644\u52A0\u6837\u5F0F",en:"Extend Styles",zh_TW:"\u9644\u52A0\u6A23\u5F0F"},custom_option:{zh:"\u81EA\u5B9A\u4E49\u9009\u9879",en:"Custom Option",zh_TW:"\u81EA\u8A02\u9078\u9805"},translate_selected_text:{zh:"\u7FFB\u8BD1\u9009\u4E2D\u6587\u5B57",en:"Translate Selected Text",zh_TW:"\u7FFB\u8B6F\u9078\u53D6\u6587\u5B57"},toggle_style:{zh:"\u5207\u6362\u6837\u5F0F",en:"Toggle Style",zh_TW:"\u5207\u63DB\u6A23\u5F0F"},open_menu:{zh:"\u6253\u5F00\u5F39\u7A97\u83DC\u5355",en:"Open Popup Menu",zh_TW:"\u958B\u555F\u5F48\u7A97\u9078\u55AE"},open_setting:{zh:"\u6253\u5F00\u8BBE\u7F6E",en:"Open Setting",zh_TW:"\u958B\u555F\u8A2D\u5B9A"},follow_selection:{zh:"\u7FFB\u8BD1\u6846\u8DDF\u968F\u9009\u4E2D\u6587\u672C",en:"Transbox Follow Selection",zh_TW:"\u7FFB\u8B6F\u6846\u8DDF\u96A8\u9078\u53D6\u6587\u5B57"},tranbox_auto_height:{zh:"\u7FFB\u8BD1\u6846\u81EA\u9002\u5E94\u9AD8\u5EA6",en:"Translation box adaptive height",zh_TW:"\u7FFB\u8B6F\u6846\u81EA\u9069\u61C9\u9AD8\u5EA6"},translate_start_hook:{zh:"\u7FFB\u8BD1\u5F00\u59CB\u94A9\u5B50\u51FD\u6570",en:"Translate Start Hook",zh_TW:"\u7FFB\u8B6F\u958B\u59CB Hook"},translate_start_hook_helper:{zh:"\u7FFB\u8BD1\u524D\u65F6\u8FD0\u884C\uFF0C\u5165\u53C2\u4E3A\uFF1A {text,\n fromLang,\n toLang,\n apiSetting,\n docInfo,\n glossary,}",en:"Run before translation, input parameters are: {text,\n fromLang,\n toLang,\n apiSetting,\n docInfo,\n glossary,}",zh_TW:"\u7FFB\u8B6F\u524D\u6642\u904B\u884C\uFF0C\u5165\u53C3\u70BA\uFF1A {text,\n fromLang,\n toLang,\n apiSetting,\n docInfo,\n glossary,}"},translate_end_hook:{zh:"\u7FFB\u8BD1\u5B8C\u6210\u94A9\u5B50\u51FD\u6570",en:"Translate End Hook",zh_TW:"\u7FFB\u8B6F\u5B8C\u6210 Hook"},translate_end_hook_helper:{zh:"\u7FFB\u8BD1\u5B8C\u6210\u65F6\u8FD0\u884C\uFF0C\u5165\u53C2\u4E3A\uFF1A ({hostNode, parentNode, nodes, wrapperNode, innerNode})",en:"Run when translation is complete, input parameters are: ({hostNode, parentNode, nodes, wrapperNode, innerNode})",zh_TW:"\u7FFB\u8B6F\u5B8C\u6210\u6642\u904B\u884C\uFF0C\u5165\u53C3\u70BA\uFF1A ({hostNode, parentNode, nodes, wrapperNode, innerNode})"},translate_remove_hook:{zh:"\u7FFB\u8BD1\u79FB\u9664\u94A9\u5B50\u51FD\u6570",en:"Translate Removed Hook",zh_TW:"\u7FFB\u8B6F\u79FB\u9664 Hook"},translate_remove_hook_helper:{zh:"\u7FFB\u8BD1\u79FB\u9664\u65F6\u8FD0\u884C\uFF0C\u5165\u53C2\u4E3A\uFF1A \u7FFB\u8BD1\u8282\u70B9\u3002",en:"Run when translation is removed, the input parameters are: translation node.",zh_TW:"\u79FB\u9664\u7FFB\u8B6F\u6642\u57F7\u884C\uFF0C\u5165\u53C3\u70BA\uFF1A\u7FFB\u8B6F\u7BC0\u9EDE\u3002"},english_dict:{zh:"\u82F1\u6587\u8BCD\u5178",en:"English Dictionary",zh_TW:"\u82F1\u6587\u5B57\u5178"},english_suggest:{zh:"\u82F1\u6587\u5EFA\u8BAE",en:"English Suggest",zh_TW:"\u82F1\u6587\u5EFA\u8B70"},api_name:{zh:"\u63A5\u53E3\u540D\u79F0",en:"API Name",zh_TW:"\u4ECB\u9762\u540D\u7A31"},is_disabled:{zh:"\u662F\u5426\u7981\u7528",en:"Is Disabled",zh_TW:"\u662F\u5426\u505C\u7528"},translate_selected:{zh:"\u662F\u5426\u542F\u7528\u5212\u8BCD\u7FFB\u8BD1",en:"If translate selected",zh_TW:"\u662F\u5426\u555F\u7528\u5283\u8A5E\u7FFB\u8B6F"},use_batch_fetch:{zh:"\u662F\u5426\u805A\u5408\u53D1\u9001\u7FFB\u8BD1\u8BF7\u6C42",en:"Whether to aggregate and send translation requests",zh_TW:"\u662F\u5426\u805A\u5408\u767C\u9001\u7FFB\u8B6F\u8ACB\u6C42"},batch_interval:{zh:"\u805A\u5408\u8BF7\u6C42\u7B49\u5F85\u65F6\u95F4(100-10000)",en:"Aggregation request waiting time (100-10000)",zh_TW:"\u805A\u5408\u8ACB\u6C42\u7B49\u5F85\u6642\u9593(100-10000)"},batch_size:{zh:"\u805A\u5408\u8BF7\u6C42\u6700\u5927\u6BB5\u843D\u6570(1-100)",en:"Maximum number of paragraphs in an aggregation request (1-100)",zh_TW:"\u805A\u5408\u8ACB\u6C42\u6700\u5927\u6BB5\u843D\u6578(1-100)"},batch_length:{zh:"\u805A\u5408\u8BF7\u6C42\u6700\u5927\u6587\u672C\u957F\u5EA6(1000-100000)",en:"Maximum text length for aggregation requests (1000-100000)",zh_TW:"\u805A\u5408\u8ACB\u6C42\u6700\u5927\u6587\u5B57\u9577\u5EA6(1000-100000)"},use_context:{zh:"\u662F\u5426\u542F\u7528\u667A\u80FD\u4E0A\u4E0B\u6587",en:"Whether to enable AI context",zh_TW:"\u662F\u5426\u555F\u7528\u667A\u6167\u4E0A\u4E0B\u6587"},context_size:{zh:"\u4E0A\u4E0B\u6587\u4F1A\u8BDD\u6570\u91CF(1-20)",en:"Number of context sessions(1-20)",zh_TW:"\u4E0A\u4E0B\u6587\u6703\u8A71\u6578\u91CF(1-20)"},auto_scan_page:{zh:"\u81EA\u52A8\u626B\u63CF\u9875\u9762",en:"Auto scan page",zh_TW:"\u81EA\u52D5\u6383\u63CF\u9801\u9762"},has_rich_text:{zh:"\u542F\u7528\u5BCC\u6587\u672C\u7FFB\u8BD1",en:"Enable rich text translation",zh_TW:"\u555F\u7528\u5BCC\u6587\u672C\u7FFB\u8B6F"},has_shadowroot:{zh:"\u626B\u63CFShadowroot",en:"Scan Shadowroot",zh_TW:"\u6383\u63CFShadowroot"},mousehover_translate:{zh:"\u9F20\u6807\u60AC\u505C\u7FFB\u8BD1",en:"Mouseover Translation",zh_TW:"\u6ED1\u9F20\u61F8\u505C\u7FFB\u8B6F"},use_mousehover_translation:{zh:"\u542F\u7528\u9F20\u6807\u60AC\u505C\u7FFB\u8BD1",en:"Enable mouseover translation",zh_TW:"\u555F\u7528\u6ED1\u9F20\u61F8\u505C\u7FFB\u8B6F"},selected_translation_alert:{zh:"\u5212\u8BCD\u7FFB\u8BD1\u7684\u5F00\u542F\u548C\u5173\u95ED\u8BF7\u5230\u201C\u89C4\u5219\u8BBE\u7F6E\u201D\u91CC\u9762\u8BBE\u7F6E\u3002",en:"To turn selected translation on or off, please go to \"Rule Settings\".",zh_TW:"\u5283\u8A5E\u7FFB\u8B6F\u7684\u958B\u555F\u548C\u95DC\u9589\u8ACB\u5230\u300C\u898F\u5247\u8A2D\u5B9A\u300D\u88E1\u9762\u8A2D\u5B9A\u3002"},mousehover_key_help:{zh:"\u5F53\u5FEB\u6377\u952E\u7F6E\u7A7A\u65F6\u8868\u793A\u9F20\u6807\u60AC\u505C\u76F4\u63A5\u7FFB\u8BD1",en:"When the shortcut key is empty, it means that the mouse hovers to translate directly",zh_TW:"\u7576\u5FEB\u6377\u9375\u7F6E\u7A7A\u6642\u8868\u793A\u6ED1\u9F20\u61F8\u505C\u76F4\u63A5\u7FFB\u8B6F"},autoscan_alt:{zh:"\u81EA\u52A8\u626B\u63CF",en:"Auto Scan",zh_TW:"\u81EA\u52D5\u6383\u63CF"},shadowroot_alt:{zh:"ShadowRoot",en:"ShadowRoot",zh_TW:"ShadowRoot"},richtext_alt:{zh:"\u4FDD\u7559\u5BCC\u6587\u672C",en:"Rich Text",zh_TW:"\u4FDD\u7559\u5BCC\u6587\u672C"},transonly_alt:{zh:"\u9690\u85CF\u539F\u6587",en:"Hide Original",zh_TW:"\u96B1\u85CF\u539F\u6587"},confirm_title:{zh:"\u786E\u8BA4",en:"Confirm",zh_TW:"\u78BA\u8A8D"},confirm_message:{zh:"\u786E\u5B9A\u64CD\u4F5C\u5417\uFF1F",en:"Are you sure you want to proceed?",zh_TW:"\u78BA\u5B9A\u64CD\u4F5C\u55CE\uFF1F"},confirm_action:{zh:"\u786E\u5B9A",en:"Confirm",zh_TW:"\u78BA\u5B9A"},cancel_action:{zh:"\u53D6\u6D88",en:"Cancel",zh_TW:"\u53D6\u6D88"},pls_press_shortcut:{zh:"\u8BF7\u6309\u4E0B\u5FEB\u6377\u952E\u7EC4\u5408",en:"Please press the shortcut key combination",zh_TW:"\u8ACB\u6309\u4E0B\u5FEB\u901F\u9375\u7D44\u5408"},load_setting_err:{zh:"\u6570\u636E\u52A0\u8F7D\u51FA\u9519\uFF0C\u8BF7\u5237\u65B0\u9875\u9762\u6216\u5378\u8F7D\u540E\u91CD\u65B0\u5B89\u88C5\u3002",en:"Please press the shortcut key combination",zh_TW:"\u8ACB\u6309\u4E0B\u5FEB\u901F\u9375\u7D44\u5408"},translation_style:{zh:"\u7FFB\u8BD1\u98CE\u683C",en:"Translation style",zh_TW:"\u7FFB\u8B6F\u98A8\u683C"},placeholder:{zh:"\u5360\u4F4D\u7B26",en:"Placeholder",zh_TW:"\u4F54\u4F4D\u7B26"},tag_name:{zh:"\u5360\u4F4D\u6807\u7B7E\u540D",en:"Placeholder tag name",zh_TW:"\u4F54\u4F4D\u6A19\u540D"},system_prompt_helper:{zh:"\u5728\u672A\u5B8C\u5168\u7406\u89E3\u9ED8\u8BA4Prompt\u7684\u60C5\u51B5\u4E0B\uFF0C\u8BF7\u52FF\u968F\u610F\u4FEE\u6539\uFF0C\u5426\u5219\u53EF\u80FD\u65E0\u6CD5\u5DE5\u4F5C\u3002",en:"Do not modify the default prompt without fully understanding it, otherwise it may not work.",zh_TW:"\u5728\u672A\u5B8C\u5168\u7406\u89E3\u9810\u8A2DPrompt\u7684\u60C5\u6CC1\u4E0B\uFF0C\u8ACB\u52FF\u96A8\u610F\u4FEE\u6539\uFF0C\u5426\u5247\u53EF\u80FD\u7121\u6CD5\u904B\u4F5C\u3002"},if_pre_init:{zh:"\u662F\u5426\u9884\u521D\u59CB\u5316",en:"Whether to pre-initialize",zh_TW:"\u662F\u5426\u9810\u521D\u59CB\u5316"},export_old:{zh:"\u5BFC\u51FA\u65E7\u7248",en:"Export old version",zh_TW:"\u532F\u51FA\u820A\u7248"},favorite_words_helper:{zh:"\u5BFC\u5165\u8BCD\u6C47\u8BF7\u4F7F\u7528txt\u6587\u4EF6\uFF0C\u6BCF\u4E00\u884C\u4E00\u4E2A\u5355\u8BCD\u3002",en:"To import vocabulary, please use a txt file with one word per line.",zh_TW:"\u532F\u5165\u8A5E\u5F59\u8ACB\u4F7F\u7528txt\u6587\u4EF6\uFF0C\u6BCF\u4E00\u884C\u4E00\u500B\u55AE\u5B57\u3002"},btn_tip_click_away:{zh:"\u5931\u7126\u9690\u85CF/\u663E\u793A",en:"Loss of focus hide/show",zh_TW:"\u5931\u7126\u96B1\u85CF/\u986F\u793A"},btn_tip_follow_selection:{zh:"\u8DDF\u968F/\u56FA\u5B9A\u6A21\u5F0F",en:"Follow/Fixed Mode",zh_TW:"\u8DDF\u96A8/\u56FA\u5B9A\u6A21\u5F0F"},btn_tip_simple_style:{zh:"\u8FF7\u4F60/\u5E38\u89C4\u6A21\u5F0F",en:"Mini/Regular Mode",zh_TW:"\u8FF7\u4F60/\u5E38\u898F\u6A21\u5F0F"},api_placeholder:{zh:"\u5360\u4F4D\u7B26",en:"Placeholder",zh_TW:"\u4F54\u4F4D\u7B26"},api_placetag:{zh:"\u5360\u4F4D\u6807\u7B7E",en:"Placeholder tags",zh_TW:"\u4F54\u4F4D\u6A19"},detected_lang:{zh:"\u8BED\u8A00\u68C0\u6D4B",en:"Language detection",zh_TW:"\u8A9E\u8A00\u5075\u6E2C"},detected_result:{zh:"\u68C0\u6D4B\u7ED3\u679C",en:"Detect result",zh_TW:"\u6AA2\u6E2C\u7D50\u679C"},subtitle_translate:{zh:"\u5B57\u5E55\u7FFB\u8BD1",en:"Subtitle Translation",zh_TW:"\u5B57\u5E55\u7FFB\u8B6F"},toggle_subtitle_translate:{zh:"\u542F\u7528\u5B57\u5E55\u7FFB\u8BD1",en:"Enable subtitle translation",zh_TW:"\u555F\u7528\u5B57\u5E55\u7FFB\u8B6F"},is_bilingual_view:{zh:"\u53CC\u8BED\u663E\u793A",en:"Enable bilingual display",zh_TW:"\u96D9\u8A9E\u986F\u793A"},is_skip_ad:{zh:"\u5FEB\u8FDB\u5E7F\u544A",en:"Skip AD",zh_TW:"\u5FEB\u8F49\u5EE3\u544A"},download_subtitles:{zh:"\u4E0B\u8F7D\u5B57\u5E55",en:"Download subtitles",zh_TW:"\u4E0B\u8F7D\u5B57\u5E55"},background_styles:{zh:"\u80CC\u666F\u6837\u5F0F",en:"DBackground Style",zh_TW:"\u80CC\u666F\u6A23\u5F0F"},origin_styles:{zh:"\u539F\u6587\u6837\u5F0F",en:"Original style",zh_TW:"\u539F\u6587\u6A23\u5F0F"},translation_styles:{zh:"\u8BD1\u6587\u6837\u5F0F",en:"Translation style",zh_TW:"\u8B6F\u6587\u6A23\u5F0F"},ai_segmentation:{zh:"AI\u667A\u80FD\u65AD\u53E5",en:"AI intelligent punctuation",zh_TW:"AI\u667A\u6167\u65B7\u53E5"},ai_chunk_length:{zh:"AI\u5904\u7406\u5207\u5272\u957F\u5EA6(200-20000)",en:"AI processing chunk length(200-20000)",zh_TW:"AI\u5904\u7406\u5207\u5272\u957F\u5EA6(200-20000)"},subtitle_helper_1:{zh:"1\u3001\u76EE\u524D\u4EC5\u652F\u6301Youtube\u684C\u9762\u7F51\u7AD9\u3002",en:"1. Currently only supports Youtube desktop website.",zh_TW:"1.\u76EE\u524D\u50C5\u652F\u63F4Youtube\u684C\u9762\u7DB2\u7AD9\uFF0C\u4E14\u50C5\u652F\u63F4\u700F\u89BD\u5668\u64F4\u5145\u529F\u80FD\u3002"},subtitle_helper_2:{zh:"2\u3001\u63D2\u4EF6\u5185\u7F6E\u57FA\u7840\u7684\u5B57\u5E55\u5408\u5E76\u3001\u65AD\u53E5\u7B97\u6CD5\uFF0C\u53EF\u6EE1\u8DB3\u5927\u90E8\u5206\u60C5\u51B5\u3002",en:"2. The plug-in has built-in basic subtitle merging and sentence segmentation algorithms, which can meet most situations.",zh_TW:"2.\u63D2\u4EF6\u5167\u5EFA\u57FA\u790E\u7684\u5B57\u5E55\u5408\u4F75\u3001\u65B7\u53E5\u6F14\u7B97\u6CD5\uFF0C\u53EF\u6EFF\u8DB3\u5927\u90E8\u5206\u60C5\u6CC1\u3002"},subtitle_helper_3:{zh:"3\u3001\u4EA6\u53EF\u4EE5\u542F\u7528AI\u667A\u80FD\u65AD\u53E5\uFF0C\u4F46\u9700\u8003\u8651\u5207\u5272\u957F\u5EA6\u53CAAI\u63A5\u53E3\u80FD\u529B\uFF0C\u53EF\u80FD\u5904\u7406\u65F6\u95F4\u4F1A\u5F88\u957F\uFF0C\u751A\u81F3\u5904\u7406\u5931\u8D25\uFF0C\u5BFC\u81F4\u65E0\u6CD5\u770B\u5230\u5B57\u5E55\u3002",en:"3. You can also enable AI intelligent segmentation, but you need to consider the segmentation length and AI interface capabilities. The processing time may be very long or even fail, resulting in the inability to see subtitles.",zh_TW:"3.\u4EA6\u53EF\u555F\u7528AI\u667A\u80FD\u65B7\u53E5\uFF0C\u4F46\u9700\u8003\u616E\u5207\u5272\u9577\u5EA6\u53CAAI\u4ECB\u9762\u80FD\u529B\uFF0C\u53EF\u80FD\u8655\u7406\u6642\u9593\u6703\u5F88\u9577\uFF0C\u751A\u81F3\u8655\u7406\u5931\u6557\uFF0C\u5C0E\u81F4\u7121\u6CD5\u770B\u5230\u5B57\u5E55\u3002"},default_styles_example:{zh:"\u9ED8\u8BA4\u6837\u5F0F\u53C2\u8003\uFF1A",en:"Default styles reference:",zh_TW:"\u8A8D\u6A23\u5F0F\u53C3\u8003\uFF1A"},subtitle_load_succeed:{zh:"\u53CC\u8BED\u5B57\u5E55\u52A0\u8F7D\u6210\u529F\uFF01",en:"Bilingual subtitles loaded successfully!",zh_TW:"\u53CC\u8BED\u5B57\u5E55\u52A0\u8F7D\u6210\u529F\uFF01"},subtitle_load_failed:{zh:"\u53CC\u8BED\u5B57\u5E55\u52A0\u8F7D\u5931\u8D25\uFF01",en:"Failed to load bilingual subtitles!",zh_TW:"\u53CC\u8BED\u5B57\u5E55\u52A0\u8F7D\u5931\u8D25\uFF01"},try_get_subtitle_data:{zh:"\u5C1D\u8BD5\u83B7\u53D6\u5B57\u5E55\u6570\u636E\uFF0C\u8BF7\u7A0D\u5019...",en:"Trying to get subtitle data, please wait...",zh_TW:"\u5C1D\u8BD5\u83B7\u53D6\u5B57\u5E55\u6570\u636E\uFF0C\u8BF7\u7A0D\u5019..."},subtitle_data_processing:{zh:"\u5B57\u5E55\u6570\u636E\u5904\u7406\u4E2D...",en:"Subtitle data processing...",zh_TW:"\u5B57\u5E55\u6570\u636E\u5904\u7406\u4E2D..."},starting_to_process_subtitle:{zh:"\u5F00\u59CB\u5904\u7406\u5B57\u5E55\u6570\u636E...",en:"Starting to process subtitle data...",zh_TW:"\u5F00\u59CB\u5904\u7406\u5B57\u5E55\u6570\u636E..."},subtitle_data_is_ready:{zh:"\u5B57\u5E55\u6570\u636E\u5DF2\u51C6\u5907\u5C31\u7EEA\uFF0C\u8BF7\u70B9\u51FBKT\u6309\u94AE\u52A0\u8F7D",en:"The subtitle data is ready, please click the KT button to load it",zh_TW:"\u5B57\u5E55\u8CC7\u6599\u5DF2\u6E96\u5099\u5C31\u7DD2\uFF0C\u8ACB\u9EDE\u64CAKT\u6309\u9215\u52A0\u8F09"},starting_reprocess_events:{zh:"\u91CD\u65B0\u5904\u7406\u5B57\u5E55\u6570\u636E...",en:"Reprocess the subtitle data...",zh_TW:"\u91CD\u65B0\u5904\u7406\u5B57\u5E55\u6570\u636E..."},waitting_for_subtitle:{zh:"\u8BF7\u7B49\u5F85\u5B57\u5E55\u6570\u636E",en:"Please wait for the subtitle data.",zh_TW:"\u8BF7\u7B49\u5F85\u5B57\u5E55\u6570\u636E"},ai_processing_pls_wait:{zh:"AI\u5904\u7406\u4E2D\uFF0C\u8BF7\u7A0D\u7B49...",en:"AI processing in progress, please wait...",zh_TW:"AI\u5904\u7406\u4E2D\uFF0C\u8BF7\u7A0D\u7B49..."},processing_subtitles:{zh:"\u5B57\u5E55\u5904\u7406\u4E2D...",en:"Subtitle processing...",zh_TW:"\u5B57\u5E55\u5904\u7406\u4E2D..."},waiting_subtitles:{zh:"\u7B49\u5F85\u5B57\u5E55\u4E2D",en:"Waiting for subtitles",zh_TW:"\u7B49\u5F85\u5B57\u5E55\u4E2D"},subtitle_is_not_yet_ready:{zh:"\u5B57\u5E55\u6570\u636E\u5C1A\u672A\u51C6\u5907\u597D",en:"Subtitle is not yet ready.",zh_TW:"\u5B57\u5E55\u6570\u636E\u5C1A\u672A\u51C6\u5907\u597D"},log_level:{zh:"\u65E5\u5FD7\u7EA7\u522B",en:"Log Level",zh_TW:"\u65E5\u8A8C\u7B49\u7D1A"},goto_custom_api_example:{zh:"\u70B9\u51FB\u67E5\u770B\u3010\u81EA\u5B9A\u4E49\u63A5\u53E3\u793A\u4F8B\u3011",en:"Click to view [Custom Interface Example]",zh_TW:"\u9EDE\u9078\u67E5\u770B\u3010\u81EA\u8A02\u4ECB\u9762\u7BC4\u4F8B\u3011"},split_paragraph:{zh:"\u5207\u5206\u957F\u6BB5\u843D",en:"Split long paragraph",zh_TW:"\u5207\u5206\u9577\u6BB5\u843D"},split_length:{zh:"\u5207\u5206\u957F\u5EA6 (0-10000)",en:"Segmentation length(0-10000)",zh_TW:"\u5207\u5206\u9577\u5EA6(0-10000)"},highlight_words:{zh:"\u9AD8\u4EAE\u6536\u85CF\u8BCD\u6C47",en:"Highlight favorite words",zh_TW:"\u9AD8\u4EAE\u6536\u85CF\u8A5E\u5F59"},split_disable:{zh:"\u7981\u7528",en:"Disable",zh_TW:"\u505C\u7528"},split_textlength:{zh:"\u6309\u7167\u957F\u5EA6\u5207\u5206",en:"Split by length",zh_TW:"\u4F9D\u9577\u5EA6\u5207\u5206"},split_punctuation:{zh:"\u6309\u7167\u53E5\u5B50\u5207\u5206",en:"Split by sentence",zh_TW:"\u6309\u7167\u53E5\u5B50\u5207\u5206"},highlight_disable:{zh:"\u7981\u7528",en:"Disable",zh_TW:"\u505C\u7528"},highlight_beforetrans:{zh:"\u7FFB\u8BD1\u524D\u9AD8\u4EAE",en:"Highlight before translation",zh_TW:"\u7FFB\u8B6F\u524D\u9AD8\u4EAE"},highlight_aftertrans:{zh:"\u7FFB\u8BD1\u540E\u9AD8\u4EAE",en:"Highlight after translation",zh_TW:"\u7FFB\u8B6F\u5F8C\u9AD8\u4EAE"},pagescroll_root_margin:{zh:"\u6EDA\u52A8\u52A0\u8F7D\u63D0\u524D\u89E6\u53D1 (0-10000px)",en:"Early triggering of scroll loading (0-10000px)",zh_TW:"\u6EFE\u52D5\u8F09\u5165\u63D0\u524D\u89F8\u767C (0-10000px)"},styles_setting:{zh:"\u6837\u5F0F\u8BBE\u7F6E",en:"Style Setting",zh_TW:"\u6A23\u5F0F\u8A2D\u5B9A"},style_name:{zh:"\u6837\u5F0F\u540D\u79F0",en:"Style Name",zh_TW:"\u6A23\u5F0F\u540D\u7A31"},style_code:{zh:"\u6837\u5F0F\u4EE3\u7801",en:"Style Code",zh_TW:"\u6A23\u5F0F\u7A0B\u5F0F\u78BC"},pre_trans_seconds:{zh:"\u63D0\u524D\u7FFB\u8BD1\u65F6\u957F (10-36000s)",en:"Pre translation seconds (10-36000s)",zh_TW:"\u63D0\u524D\u7FFB\u8BD1\u65F6\u957F (10-36000s)"},throttle_trans_interval:{zh:"\u8282\u6D41\u7FFB\u8BD1\u95F4\u9694 (1-3600s)",en:"Throttling translation interval (1-3600s)",zh_TW:"\u8282\u6D41\u7FFB\u8BD1\u95F4\u9694 (1-3600s)"}};const newI18n=lang=>key=>{var _I18N$key;return((_I18N$key=I18N[key])===null||_I18N$key===void 0?void 0:_I18N$key[lang])||"";}; +const UI_LANGS=(/* unused pure expression or super */ null && ([["en","English"],["zh","简体中文"],["zh_TW","繁體中文"],["ja","日本語"],["ko","한국어"]]));const customApiLangs="[\"en\", \"English - English\"],\n[\"zh-CN\", \"Simplified Chinese - \u7B80\u4F53\u4E2D\u6587\"],\n[\"zh-TW\", \"Traditional Chinese - \u7E41\u9AD4\u4E2D\u6587\"],\n[\"ar\", \"Arabic - \u0627\u0644\u0639\u0631\u0628\u064A\u0629\"],\n[\"bg\", \"Bulgarian - \u0411\u044A\u043B\u0433\u0430\u0440\u0441\u043A\u0438\"],\n[\"ca\", \"Catalan - Catal\xE0\"],\n[\"hr\", \"Croatian - Hrvatski\"],\n[\"cs\", \"Czech - \u010Ce\u0161tina\"],\n[\"da\", \"Danish - Dansk\"],\n[\"nl\", \"Dutch - Nederlands\"],\n[\"fi\", \"Finnish - Suomi\"],\n[\"fr\", \"French - Fran\xE7ais\"],\n[\"de\", \"German - Deutsch\"],\n[\"el\", \"Greek - \u0395\u03BB\u03BB\u03B7\u03BD\u03B9\u03BA\u03AC\"],\n[\"hi\", \"Hindi - \u0939\u093F\u0928\u094D\u0926\u0940\"],\n[\"hu\", \"Hungarian - Magyar\"],\n[\"id\", \"Indonesian - Indonesia\"],\n[\"it\", \"Italian - Italiano\"],\n[\"ja\", \"Japanese - \u65E5\u672C\u8A9E\"],\n[\"ko\", \"Korean - \uD55C\uAD6D\uC5B4\"],\n[\"ms\", \"Malay - Melayu\"],\n[\"mt\", \"Maltese - Malti\"],\n[\"nb\", \"Norwegian - Norsk Bokm\xE5l\"],\n[\"pl\", \"Polish - Polski\"],\n[\"pt\", \"Portuguese - Portugu\xEAs\"],\n[\"ro\", \"Romanian - Rom\xE2n\u0103\"],\n[\"ru\", \"Russian - \u0420\u0443\u0441\u0441\u043A\u0438\u0439\"],\n[\"sk\", \"Slovak - Sloven\u010Dina\"],\n[\"sl\", \"Slovenian - Sloven\u0161\u010Dina\"],\n[\"es\", \"Spanish - Espa\xF1ol\"],\n[\"sv\", \"Swedish - Svenska\"],\n[\"ta\", \"Tamil - \u0BA4\u0BAE\u0BBF\u0BB4\u0BCD\"],\n[\"te\", \"Telugu - \u0C24\u0C46\u0C32\u0C41\u0C17\u0C41\"],\n[\"th\", \"Thai - \u0E44\u0E17\u0E22\"],\n[\"tr\", \"Turkish - T\xFCrk\xE7e\"],\n[\"uk\", \"Ukrainian - \u0423\u043A\u0440\u0430\u0457\u043D\u0441\u044C\u043A\u0430\"],\n[\"vi\", \"Vietnamese - Ti\u1EBFng Vi\u1EC7t\"],\n";const customApiHelpZH="// \u8BF7\u6C42\u6570\u636E\u9ED8\u8BA4\u683C\u5F0F\n{\n \"url\": \"{{url}}\",\n \"method\": \"POST\",\n \"headers\": {\n \"Content-type\": \"application/json\",\n \"Authorization\": \"Bearer {{key}}\"\n },\n \"body\": {\n \"text\": \"{{text}}\", // \u5F85\u7FFB\u8BD1\u6587\u5B57\n \"from\": \"{{from}}\", // \u6587\u5B57\u7684\u8BED\u8A00\uFF08\u53EF\u80FD\u4E3A\u7A7A\uFF09\n \"to\": \"{{to}}\", // \u76EE\u6807\u8BED\u8A00\n },\n}\n\n\n// \u8FD4\u56DE\u6570\u636E\u9ED8\u8BA4\u683C\u5F0F\n{\n text: \"\", // \u7FFB\u8BD1\u540E\u7684\u6587\u5B57\n from: \"\", // \u8BC6\u522B\u7684\u6E90\u8BED\u8A00\n to: \"\", // \u76EE\u6807\u8BED\u8A00\uFF08\u53EF\u9009\uFF09\n}\n\n\n// Hook \u8303\u4F8B\n// URL\nhttps://translate.googleapis.com/translate_a/single?client=gtx&dj=1&dt=t&ie=UTF-8&q={{text}}&sl=en&tl=zh-CN\n\n// Request Hook\n(text, from, to, url, key) => [url, {\n headers: {\n \"Content-type\": \"application/json\",\n },\n method: \"GET\",\n body: null,\n}]\n\n// Response Hook\n// \u5176\u4E2D\u8FD4\u56DE\u6570\u7EC4\u7B2C\u4E00\u4E2A\u503C\u8868\u793A\u8BD1\u6587\u5B57\u7B26\u4E32\uFF0C\u7B2C\u4E8C\u4E2A\u503C\u4E3A\u5E03\u5C14\u503C\uFF0C\u8868\u793A\u539F\u6587\u8BED\u8A00\u4E0E\u76EE\u6807\u8BED\u8A00\u662F\u5426\u76F8\u540C\n(res, text, from, to) => [res.sentences.map((item) => item.trans).join(\" \"), to === res.src]\n\n\n// \u652F\u6301\u7684\u8BED\u8A00\u4EE3\u7801\u5982\u4E0B\n".concat(customApiLangs,"\n");const customApiHelpEN="// Default request\n{\n \"url\": \"{{url}}\",\n \"method\": \"POST\",\n \"headers\": {\n \"Content-type\": \"application/json\",\n \"Authorization\": \"Bearer {{key}}\"\n },\n \"body\": {\n \"text\": \"{{text}}\", // Text to be translated\n \"from\": \"{{from}}\", // The language of the text (may be empty)\n \"to\": \"{{to}}\", // Target language\n },\n}\n\n\n// Default response\n{\n text: \"\", // translated text\n from: \"\", // Recognized source language\n to: \"\", // Target language (optional)\n}\n\n\n/// Hook Example\n// URL\nhttps://translate.googleapis.com/translate_a/single?client=gtx&dj=1&dt=t&ie=UTF-8&q={{text}}&sl=en&tl=zh-CN\n\n// Request Hook\n(text, from, to, url, key) => [url, {\n headers: {\n \"Content-type\": \"application/json\",\n },\n method: \"GET\",\n body: null,\n}]\n\n// Response Hook\n// In the returned array, the first value is the translated string, while the second value is a boolean\n// that indicates whether the source language is the same as the target language.\n(res, text, from, to) => [res.sentences.map((item) => item.trans).join(\" \"), to === res.src]\n\n\n// The supported language codes are as follows\n".concat(customApiLangs,"\n");const requestHookHelperZH="1\u3001\u7B2C\u4E00\u4E2A\u53C2\u6570\u5305\u542B\u5982\u4E0B\u5B57\u6BB5\uFF1A'texts', 'from', 'to', 'url', 'key', 'model', 'systemPrompt', ...\n2\u3001\u8FD4\u56DE\u503C\u5FC5\u987B\u662F\u5305\u542B\u4EE5\u4E0B\u5B57\u6BB5\u7684\u5BF9\u8C61\uFF1A 'url', 'body', 'headers', 'method'\n3\u3001\u5982\u8FD4\u56DE\u7A7A\u503C\uFF0C\u5219hook\u51FD\u6570\u4E0D\u4F1A\u4EA7\u751F\u4EFB\u4F55\u6548\u679C\u3002\n\n// \u793A\u4F8B\nasync (args, { url, body, headers, userMsg, method } = {}) => {\n return { url, body, headers, userMsg, method };\n}";const requestHookHelperEN="1. The first parameter contains the following fields: 'texts', 'from', 'to', 'url', 'key', 'model', 'systemPrompt', ...\n2. The return value must be an object containing the following fields: 'url', 'body', 'headers', 'method'\n3. If a null value is returned, the hook function will have no effect.\n\n// Example\nasync (args, { url, body, headers, userMsg, method } = {}) => {\n return { url, body, headers, userMsg, method };\n}";const responsetHookHelperZH="1\u3001\u7B2C\u4E00\u4E2A\u53C2\u6570\u5305\u542B\u5982\u4E0B\u5B57\u6BB5\uFF1A'res', ...\n2\u3001\u8FD4\u56DE\u503C\u5FC5\u987B\u662F\u5305\u542B\u4EE5\u4E0B\u5B57\u6BB5\u7684\u5BF9\u8C61\uFF1A 'translations'\n \uFF08'translations' \u5E94\u4E3A\u4E00\u4E2A\u4E8C\u7EF4\u6570\u7EC4\uFF1A[[\u8BD1\u6587, \u539F\u6587\u8BED\u8A00]]\uFF09\n3\u3001\u5982\u8FD4\u56DE\u7A7A\u503C\uFF0C\u5219hook\u51FD\u6570\u4E0D\u4F1A\u4EA7\u751F\u4EFB\u4F55\u6548\u679C\u3002\n\n// \u793A\u4F8B\nasync ({ res, ...args }) => {\n const translations = [[\"\u4F60\u597D\", \"en\"]];\n const modelMsg = {}; // \u7528\u4E8EAI\u4E0A\u4E0B\u6587\n return { translations, modelMsg };\n}";const responsetHookHelperEN="1. The first parameter contains the following fields: 'res', ...\n2. The return value must be an object containing the following fields: 'translations'\n ('translations' should be a two-dimensional array: [[translation, source language]]).\n3. If a null value is returned, the hook function will have no effect.\n\n// Example\nasync ({ res, ...args }) => {\n const translations = [[\"\u4F60\u597D\", \"en\"]];\n const modelMsg = {}; // For AI context\n return { translations, modelMsg };\n}";const I18N={app_name:{zh:"\u7B80\u7EA6\u7FFB\u8BD1",en:"KISS Translator",zh_TW:"\u7C21\u7D04\u7FFB\u8B6F",ja:"KISS Translator",ko:"KISS Translator"},translate:{zh:"\u7FFB\u8BD1",en:"Translate",zh_TW:"\u7FFB\u8B6F",ja:"\u7FFB\u8A33",ko:"\uBC88\uC5ED"},custom_api_help:{zh:customApiHelpZH,en:customApiHelpEN,zh_TW:customApiHelpZH,ja:customApiHelpEN,ko:customApiHelpEN},request_hook_helper:{zh:requestHookHelperZH,en:requestHookHelperEN,zh_TW:requestHookHelperZH,ja:requestHookHelperEN,ko:requestHookHelperEN},response_hook_helper:{zh:responsetHookHelperZH,en:responsetHookHelperEN,zh_TW:responsetHookHelperZH,ja:responsetHookHelperEN,ko:responsetHookHelperEN},translate_alt:{zh:"\u7FFB\u8BD1",en:"Translate",zh_TW:"\u7FFB\u8B6F",ja:"\u7FFB\u8A33",ko:"\uBC88\uC5ED"},basic_setting:{zh:"\u57FA\u672C\u8BBE\u7F6E",en:"Basic Setting",zh_TW:"\u57FA\u672C\u8A2D\u5B9A",ja:"\u57FA\u672C\u8A2D\u5B9A",ko:"\uAE30\uBCF8 \uC124\uC815"},rules_setting:{zh:"\u89C4\u5219\u8BBE\u7F6E",en:"Rules Setting",zh_TW:"\u898F\u5247\u8A2D\u5B9A",ja:"\u30EB\u30FC\u30EB\u8A2D\u5B9A",ko:"\uADDC\uCE59 \uC124\uC815"},apis_setting:{zh:"\u63A5\u53E3\u8BBE\u7F6E",en:"Apis Setting",zh_TW:"API\u8A2D\u5B9A",ja:"API\u8A2D\u5B9A",ko:"API \uC124\uC815"},sync_setting:{zh:"\u540C\u6B65\u8BBE\u7F6E",en:"Sync Setting",zh_TW:"\u540C\u6B65\u8A2D\u5B9A",ja:"\u540C\u671F\u8A2D\u5B9A",ko:"\uB3D9\uAE30\uD654 \uC124\uC815"},patch_setting:{zh:"\u8865\u4E01\u8BBE\u7F6E",en:"Patch Setting",zh_TW:"\u4FEE\u88DC\u8A2D\u5B9A",ja:"\u30D1\u30C3\u30C1\u8A2D\u5B9A",ko:"\uD328\uCE58 \uC124\uC815"},patch_setting_help:{zh:"\u9488\u5BF9\u4E00\u4E9B\u7279\u6B8A\u7F51\u7AD9\u7684\u4FEE\u6B63\u811A\u672C\uFF0C\u4EE5\u4FBF\u7FFB\u8BD1\u8F6F\u4EF6\u5F97\u5230\u66F4\u597D\u7684\u5C55\u793A\u6548\u679C\u3002",en:"Corrected scripts for some special websites so that the translation software can get better display results.",zh_TW:"\u91DD\u5C0D\u67D0\u4E9B\u7279\u6B8A\u7DB2\u7AD9\u7684\u4FEE\u6B63\u8173\u672C\uFF0C\u8B93\u7FFB\u8B6F\u8EDF\u9AD4\u6709\u66F4\u597D\u7684\u986F\u793A\u6548\u679C\u3002",ja:"\u4E00\u90E8\u306E\u7279\u6B8A\u306A\u30A6\u30A7\u30D6\u30B5\u30A4\u30C8\u7528\u306E\u4FEE\u6B63\u30B9\u30AF\u30EA\u30D7\u30C8\u3067\u3001\u7FFB\u8A33\u30BD\u30D5\u30C8\u30A6\u30A7\u30A2\u306E\u8868\u793A\u52B9\u679C\u3092\u5411\u4E0A\u3055\u305B\u307E\u3059\u3002",ko:"\uC77C\uBD80 \uD2B9\uC218 \uC6F9\uC0AC\uC774\uD2B8\uB97C \uC704\uD55C \uC218\uC815 \uC2A4\uD06C\uB9BD\uD2B8\uB85C, \uBC88\uC5ED \uC18C\uD504\uD2B8\uC6E8\uC5B4\uC758 \uD45C\uC2DC \uD6A8\uACFC\uB97C \uAC1C\uC120\uD569\uB2C8\uB2E4."},inject_webfix:{zh:"\u6CE8\u5165\u4FEE\u590D\u8865\u4E01",en:"Inject Webfix",zh_TW:"\u6CE8\u5165\u4FEE\u6B63\u88DC\u4E01",ja:"Webfix\u3092\u6CE8\u5165",ko:"\uC6F9 \uC218\uC815 \uD328\uCE58 \uC8FC\uC785"},about:{zh:"\u5173\u4E8E",en:"About",zh_TW:"\u95DC\u65BC",ja:"\u6982\u8981",ko:"\uC815\uBCF4"},about_md:{zh:"README.md",en:"README.en.md",zh_TW:"README.md",ja:"README.ja.md",// 假设的文件名 +ko:"README.ko.md"// 假设的文件名 +},about_md_local:{zh:"\u8BF7 [\u70B9\u51FB\u8FD9\u91CC](".concat("https://github.com/fishjar/kiss-translator",") \u67E5\u770B\u8BE6\u60C5\u3002"),en:"Please [click here](".concat("https://github.com/fishjar/kiss-translator",") for details."),zh_TW:"\u8ACB [\u9EDE\u9019\u88E1](".concat("https://github.com/fishjar/kiss-translator",") \u67E5\u770B\u8A73\u7D30\u5167\u5BB9\u3002"),ja:"\u8A73\u7D30\u306F [\u3053\u3061\u3089](".concat("https://github.com/fishjar/kiss-translator",") \u3092\u30AF\u30EA\u30C3\u30AF\u3057\u3066\u304F\u3060\u3055\u3044\u3002"),ko:"\uC790\uC138\uD55C \uB0B4\uC6A9\uC740 [\uC5EC\uAE30](".concat("https://github.com/fishjar/kiss-translator",")\uB97C \uD074\uB9AD\uD558\uC138\uC694.")},ui_lang:{zh:"\u754C\u9762\u8BED\u8A00",en:"Interface Language",zh_TW:"\u4ECB\u9762\u8A9E\u8A00",ja:"\u30A4\u30F3\u30BF\u30FC\u30D5\u30A7\u30FC\u30B9\u8A00\u8A9E",ko:"\uC778\uD130\uD398\uC774\uC2A4 \uC5B8\uC5B4"},fetch_limit:{zh:"\u6700\u5927\u5E76\u53D1\u8BF7\u6C42\u6570\u91CF (1-100)",en:"Maximum Number Of Concurrent Requests (1-100)",zh_TW:"\u6700\u5927\u540C\u6642\u8ACB\u6C42\u6578\u91CF (1-100)",ja:"\u6700\u5927\u540C\u6642\u30EA\u30AF\u30A8\u30B9\u30C8\u6570 (1-100)",ko:"\uCD5C\uB300 \uB3D9\uC2DC \uC694\uCCAD \uC218 (1-100)"},if_think:{zh:"\u542F\u7528\u6216\u7981\u7528\u6A21\u578B\u7684\u6DF1\u5EA6\u601D\u8003\u80FD\u529B",en:"Enable or disable the model\u2019s thinking behavior ",zh_TW:"\u555F\u7528\u6216\u505C\u7528\u6A21\u578B\u7684\u6DF1\u5EA6\u601D\u8003\u80FD\u529B",ja:"\u30E2\u30C7\u30EB\u306E\u601D\u8003\u884C\u52D5\u3092\u6709\u52B9\u307E\u305F\u306F\u7121\u52B9\u306B\u3059\u308B",ko:"\uBAA8\uB378\uC758 \uC0AC\uACE0 \uD589\uB3D9 \uD65C\uC131\uD654 \uB610\uB294 \uBE44\uD65C\uC131\uD654"},think:{zh:"\u542F\u7528\u6DF1\u5EA6\u601D\u8003",en:"enable thinking",zh_TW:"\u555F\u7528\u6DF1\u5EA6\u601D\u8003",ja:"\u601D\u8003\u3092\u6709\u52B9\u306B\u3059\u308B",ko:"\uC0AC\uACE0 \uD65C\uC131\uD654"},nothink:{zh:"\u7981\u7528\u6DF1\u5EA6\u601D\u8003",en:"disable thinking",zh_TW:"\u505C\u7528\u6DF1\u5EA6\u601D\u8003",ja:"\u601D\u8003\u3092\u7121\u52B9\u306B\u3059\u308B",ko:"\uC0AC\uACE0 \uBE44\uD65C\uC131\uD654"},think_ignore:{zh:"\u5FFD\u7565\u4EE5\u4E0B\u6A21\u578B\u7684\u8F93\u51FA,\u9017\u53F7(,)\u5206\u5272,\u5F53\u6A21\u578B\u652F\u6301\u601D\u8003\u4F46ollama\u4E0D\u652F\u6301\u65F6\u9700\u8981\u586B\u5199\u672C\u53C2\u6570",en:"Ignore the block for the following models, comma (,) separated",zh_TW:"\u5FFD\u7565\u4EE5\u4E0B\u6A21\u578B\u7684 \u8F38\u51FA\uFF0C\u4EE5\u9017\u865F (,) \u5206\u9694\uFF1B\u7576\u6A21\u578B\u652F\u63F4\u601D\u8003\u4F46 ollama \u4E0D\u652F\u63F4\u6642\u9700\u8981\u586B\u5BEB\u6B64\u53C3\u6578",ja:"\u4EE5\u4E0B\u306E\u30E2\u30C7\u30EB\u306E\u51FA\u529B\u3092\u7121\u8996\u3059\u308B (\u30B3\u30F3\u30DE(,)\u533A\u5207\u308A)\u3002\u30E2\u30C7\u30EB\u304C\u601D\u8003\u3092\u30B5\u30DD\u30FC\u30C8\u3057\u3066\u3044\u308B\u304C\u3001ollama\u304C\u30B5\u30DD\u30FC\u30C8\u3057\u3066\u3044\u306A\u3044\u5834\u5408\u306B\u8A18\u5165\u304C\u5FC5\u8981\u3067\u3059",ko:"\uB2E4\uC74C \uBAA8\uB378\uC758 \uBE14\uB85D \uBB34\uC2DC (\uC27C\uD45C(,)\uB85C \uAD6C\uBD84), \uBAA8\uB378\uC774 \uC0AC\uACE0\uB97C \uC9C0\uC6D0\uD558\uC9C0\uB9CC ollama\uAC00 \uC9C0\uC6D0\uD558\uC9C0 \uC54A\uB294 \uACBD\uC6B0 \uC774 \uB9E4\uAC1C\uBCC0\uC218\uB97C \uC785\uB825\uD574\uC57C \uD569\uB2C8\uB2E4"},fetch_interval:{zh:"\u6BCF\u6B21\u8BF7\u6C42\u95F4\u9694\u65F6\u95F4 (0-5000ms)",en:"Time Between Requests (0-5000ms)",zh_TW:"\u6BCF\u6B21\u8ACB\u6C42\u9593\u9694\u6642\u9593 (0-5000ms)",ja:"\u30EA\u30AF\u30A8\u30B9\u30C8\u9593\u9694 (0-5000ms)",ko:"\uC694\uCCAD \uAC04 \uC2DC\uAC04 (0-5000ms)"},translate_interval:{zh:"\u7FFB\u8BD1\u95F4\u9694\u65F6\u95F4 (10-2000ms)",en:"Translation Interval (10-2000ms)",zh_TW:"\u7FFB\u8B6F\u9593\u9694\u6642\u9593 (10-2000ms)",ja:"\u7FFB\u8A33\u9593\u9694 (10-2000ms)",ko:"\uBC88\uC5ED \uAC04\uACA9 (10-2000ms)"},http_timeout:{zh:"\u8BF7\u6C42\u8D85\u65F6\u65F6\u95F4 (5000-60000ms)",en:"Request Timeout Time (5000-60000ms)",zh_TW:"\u8ACB\u6C42\u903E\u6642\u6642\u9593 (5000-60000ms)",ja:"\u30EA\u30AF\u30A8\u30B9\u30C8\u30BF\u30A4\u30E0\u30A2\u30A6\u30C8 (5000-60000ms)",ko:"\uC694\uCCAD \uC2DC\uAC04 \uCD08\uACFC (5000-60000ms)"},custom_header:{zh:"\u81EA\u5B9A\u4E49Header\u53C2\u6570",en:"Custom Header Params",zh_TW:"\u81EA\u8A02 Header \u53C3\u6578",ja:"\u30AB\u30B9\u30BF\u30E0\u30D8\u30C3\u30C0\u30FC",ko:"\uC0AC\uC6A9\uC790 \uC9C0\uC815 \uD5E4\uB354"},custom_header_help:{zh:"\u4F7F\u7528JSON\u683C\u5F0F\uFF0C\u4F8B\u5982 \"User-Agent\": \"Mozilla/5.0 (X11; Linux x86_64; rv:141.0) Gecko/20100101 Firefox/141.0\"",en:"Use JSON format, for example \"User-Agent\": \"Mozilla/5.0 (X11; Linux x86_64; rv:141.0) Gecko/20100101 Firefox/141.0\"",zh_TW:"\u4F7F\u7528JSON\u683C\u5F0F\uFF0C\u4F8B\u5982 \"User-Agent\": \"Mozilla/5.0 (X11; Linux x86_64; rv:141.0) Gecko/20100101 Firefox/141.0\"",ja:"JSON\u5F62\u5F0F\u3092\u4F7F\u7528\u3057\u3066\u304F\u3060\u3055\u3044\u3002\u4F8B: \"User-Agent\": \"Mozilla/5.0 (X11; Linux x86_64; rv:141.0) Gecko/20100101 Firefox/141.0\"",ko:"JSON \uD615\uC2DD\uC744 \uC0AC\uC6A9\uD558\uC138\uC694. \uC608: \"User-Agent\": \"Mozilla/5.0 (X11; Linux x86_64; rv:141.0) Gecko/20100101 Firefox/141.0\""},custom_body:{zh:"\u81EA\u5B9A\u4E49Body\u53C2\u6570",en:"Custom Body Params",zh_TW:"\u81EA\u8A02 Body \u53C3\u6578",ja:"\u30AB\u30B9\u30BF\u30E0\u30DC\u30C7\u30A3",ko:"\uC0AC\uC6A9\uC790 \uC9C0\uC815 \uBC14\uB514"},custom_body_help:{zh:"\u4F7F\u7528JSON\u683C\u5F0F\uFF0C\u4F8B\u5982 \"top_p\": 0.7",en:"Use JSON format, for example \"top_p\": 0.7",zh_TW:"\u4F7F\u7528JSON\u683C\u5F0F\uFF0C\u4F8B\u5982 \"top_p\": 0.7",ja:"JSON\u5F62\u5F0F\u3092\u4F7F\u7528\u3057\u3066\u304F\u3060\u3055\u3044\u3002\u4F8B: \"top_p\": 0.7",ko:"JSON \uD615\uC2DD\uC744 \uC0AC\uC6A9\uD558\uC138\uC694. \uC608: \"top_p\": 0.7"},min_translate_length:{zh:"\u6700\u5C0F\u7FFB\u8BD1\u5B57\u7B26\u6570 (1-100)",en:"Minimum number Of Translated Characters (1-100)",zh_TW:"\u6700\u5C0F\u7FFB\u8B6F\u5B57\u5143\u6578 (1-100)",ja:"\u6700\u5C0F\u7FFB\u8A33\u6587\u5B57\u6570 (1-100)",ko:"\uCD5C\uC18C \uBC88\uC5ED \uBB38\uC790 \uC218 (1-100)"},max_translate_length:{zh:"\u6700\u5927\u7FFB\u8BD1\u5B57\u7B26\u6570 (100-100000)",en:"Maximum number Of Translated Characters (100-100000)",zh_TW:"\u6700\u5927\u7FFB\u8B6F\u5B57\u5143\u6578 (100-100000)",ja:"\u6700\u5927\u7FFB\u8A33\u6587\u5B57\u6570 (100-100000)",ko:"\uCD5C\uB300 \uBC88\uC5ED \uBB38\uC790 \uC218 (100-100000)"},num_of_newline_characters:{zh:"\u6362\u884C\u5B57\u7B26\u6570 (1-1000)",en:"Number of Newline Characters (1-1000)",zh_TW:"\u63DB\u884C\u5B57\u5143\u6578 (1-1000)",ja:"\u6539\u884C\u6587\u5B57\u6570 (1-1000)",ko:"\uC904\uBC14\uAFC8 \uBB38\uC790 \uC218 (1-1000)"},translate_service:{zh:"\u7FFB\u8BD1\u670D\u52A1",en:"Translate Service",zh_TW:"\u7FFB\u8B6F\u670D\u52D9",ja:"\u7FFB\u8A33\u30B5\u30FC\u30D3\u30B9",ko:"\uBC88\uC5ED \uC11C\uBE44\uC2A4"},translate_service_multiple:{zh:"\u7FFB\u8BD1\u670D\u52A1 (\u652F\u6301\u591A\u9009)",en:"Translation service (multiple supported)",zh_TW:"\u7FFB\u8B6F\u670D\u52D9 (\u652F\u63F4\u591A\u9078)",ja:"\u7FFB\u8A33\u30B5\u30FC\u30D3\u30B9 (\u8907\u6570\u9078\u629E\u53EF)",ko:"\uBC88\uC5ED \uC11C\uBE44\uC2A4 (\uB2E4\uC911 \uC120\uD0DD \uC9C0\uC6D0)"},translate_timing:{zh:"\u7FFB\u8BD1\u65F6\u673A",en:"Translate Timing",zh_TW:"\u7FFB\u8B6F\u6642\u6A5F",ja:"\u7FFB\u8A33\u30BF\u30A4\u30DF\u30F3\u30B0",ko:"\uBC88\uC5ED \uC2DC\uC810"},mk_pagescroll:{zh:"\u6EDA\u52A8\u52A0\u8F7D\u7FFB\u8BD1\uFF08\u63A8\u8350\uFF09",en:"Rolling Loading (Suggested)",zh_TW:"\u6EFE\u52D5\u8F09\u5165\u7FFB\u8B6F\uFF08\u5EFA\u8B70\uFF09",ja:"\u30B9\u30AF\u30ED\u30FC\u30EB\u7FFB\u8A33 (\u63A8\u5968)",ko:"\uC2A4\uD06C\uB864 \uBC88\uC5ED (\uAD8C\uC7A5)"},mk_pageopen:{zh:"\u7ACB\u5373\u5168\u90E8\u7FFB\u8BD1",en:"Translate all now",zh_TW:"\u7ACB\u5373\u5168\u90E8\u7FFB\u8B6F",ja:"\u3059\u3050\u306B\u3059\u3079\u3066\u7FFB\u8A33",ko:"\uC989\uC2DC \uBAA8\uB450 \uBC88\uC5ED"},mk_mouseover:{zh:"\u9F20\u6807\u60AC\u505C\u7FFB\u8BD1",en:"Mouseover",zh_TW:"\u6ED1\u9F20\u61F8\u505C\u7FFB\u8B6F",ja:"\u30DE\u30A6\u30B9\u30AA\u30FC\u30D0\u30FC\u7FFB\u8A33",ko:"\uB9C8\uC6B0\uC2A4\uC624\uBC84 \uBC88\uC5ED"},mk_ctrlKey:{zh:"Control + \u9F20\u6807\u60AC\u505C",en:"Control + Mouseover",zh_TW:"Control + \u6ED1\u9F20\u61F8\u505C",ja:"Control + \u30DE\u30A6\u30B9\u30AA\u30FC\u30D0\u30FC",ko:"Control + \uB9C8\uC6B0\uC2A4\uC624\uBC84"},mk_shiftKey:{zh:"Shift + \u9F20\u6807\u60AC\u505C",en:"Shift + Mouseover",zh_TW:"Shift + \u6ED1\u9F20\u61F8\u505C",ja:"Shift + \u30DE\u30A6\u30B9\u30AA\u30FC\u30D0\u30FC",ko:"Shift + \uB9C8\uC6B0\uC2A4\uC624\uBC84"},mk_altKey:{zh:"Alt + \u9F20\u6807\u60AC\u505C",en:"Alt + Mouseover",zh_TW:"Alt + \u6ED1\u9F20\u61F8\u505C",ja:"Alt + \u30DE\u30A6\u30B9\u30AA\u30FC\u30D0\u30FC",ko:"Alt + \uB9C8\uC6B0\uC2A4\uC624\uBC84"},from_lang:{zh:"\u539F\u6587\u8BED\u8A00",en:"Source Language",zh_TW:"\u539F\u6587\u8A9E\u8A00",ja:"\u539F\u6587\u306E\u8A00\u8A9E",ko:"\uC6D0\uBCF8 \uC5B8\uC5B4"},to_lang:{zh:"\u76EE\u6807\u8BED\u8A00",en:"Target Language",zh_TW:"\u76EE\u6A19\u8A9E\u8A00",ja:"\u7FFB\u8A33\u5148\u306E\u8A00\u8A9E",ko:"\uB300\uC0C1 \uC5B8\uC5B4"},to_lang2:{zh:"\u7B2C\u4E8C\u76EE\u6807\u8BED\u8A00",en:"Target Language 2",zh_TW:"\u7B2C\u4E8C\u76EE\u6A19\u8A9E\u8A00",ja:"\u7B2C\u4E8C\u7FFB\u8A33\u5148\u306E\u8A00\u8A9E",ko:"\uB450 \uBC88\uC9F8 \uB300\uC0C1 \uC5B8\uC5B4"},to_lang2_helper:{zh:"\u8BBE\u5B9A\u540E\uFF0C\u4E0E\u76EE\u6807\u8BED\u8A00\u4EA7\u751F\u4E92\u8BD1\u6548\u679C\uFF0C\u4F46\u4F9D\u8D56\u8FDC\u7A0B\u8BED\u8A00\u8BC6\u522B\u3002",en:"After setting, it will produce mutual translation effect with the target language, but it relies on remote language recognition.",zh_TW:"\u8A2D\u5B9A\u5F8C\u6703\u8207\u76EE\u6A19\u8A9E\u8A00\u4E92\u8B6F\uFF0C\u4F46\u4F9D\u8CF4\u9060\u7AEF\u8A9E\u8A00\u8B58\u5225\u3002",ja:"\u8A2D\u5B9A\u5F8C\u3001\u30BF\u30FC\u30B2\u30C3\u30C8\u8A00\u8A9E\u3068\u306E\u76F8\u4E92\u7FFB\u8A33\u304C\u53EF\u80FD\u306B\u306A\u308A\u307E\u3059\u304C\u3001\u30EA\u30E2\u30FC\u30C8\u8A00\u8A9E\u8A8D\u8B58\u306B\u4F9D\u5B58\u3057\u307E\u3059\u3002",ko:"\uC124\uC815 \uD6C4, \uB300\uC0C1 \uC5B8\uC5B4\uC640 \uC0C1\uD638 \uBC88\uC5ED \uD6A8\uACFC\uAC00 \uBC1C\uC0DD\uD558\uC9C0\uB9CC, \uC6D0\uACA9 \uC5B8\uC5B4 \uC778\uC2DD\uC5D0 \uC758\uC874\uD569\uB2C8\uB2E4."},text_style:{zh:"\u8BD1\u6587\u6837\u5F0F",en:"Text Style",zh_TW:"\u8B6F\u6587\u6A23\u5F0F",ja:"\u7FFB\u8A33\u30C6\u30AD\u30B9\u30C8\u30B9\u30BF\u30A4\u30EB",ko:"\uBC88\uC5ED \uD14D\uC2A4\uD2B8 \uC2A4\uD0C0\uC77C"},text_style_alt:{zh:"\u8BD1\u6587\u6837\u5F0F",en:"Text Style",zh_TW:"\u8B6F\u6587\u6A23\u5F0F",ja:"\u7FFB\u8A33\u30C6\u30AD\u30B9\u30C8\u30B9\u30BF\u30A4\u30EB",ko:"\uBC88\uC5ED \uD14D\uC2A4\uD2B8 \uC2A4\uD0C0\uC77C"},bg_color:{zh:"\u6837\u5F0F\u989C\u8272",en:"Style Color",zh_TW:"\u6A23\u5F0F\u984F\u8272",ja:"\u30B9\u30BF\u30A4\u30EB\u30AB\u30E9\u30FC",ko:"\uC2A4\uD0C0\uC77C \uC0C9\uC0C1"},remain_unchanged:{zh:"\u4FDD\u7559\u4E0D\u53D8",en:"Remain Unchanged",zh_TW:"\u4FDD\u7559\u4E0D\u8B8A",ja:"\u5909\u66F4\u3057\u306A\u3044",ko:"\uBCC0\uACBD\uD558\uC9C0 \uC54A\uC74C"},google_api:{zh:"\u8C37\u6B4C\u7FFB\u8BD1\u63A5\u53E3",en:"Google Translate API",zh_TW:"Google \u7FFB\u8B6F\u4ECB\u9762",ja:"Google \u7FFB\u8A33 API",ko:"Google \uBC88\uC5ED API"},default_selector:{zh:"\u9ED8\u8BA4\u9009\u62E9\u5668",en:"Default selector",zh_TW:"\u9810\u8A2D\u9078\u64C7\u5668",ja:"\u30C7\u30D5\u30A9\u30EB\u30C8\u30BB\u30EC\u30AF\u30BF",ko:"\uAE30\uBCF8 \uC120\uD0DD\uC790"},selector_rules:{zh:"\u9009\u62E9\u5668\u89C4\u5219",en:"Selector Rules",zh_TW:"\u9078\u64C7\u5668\u898F\u5247",ja:"\u30BB\u30EC\u30AF\u30BF\u30FC\u30EB\u30FC\u30EB",ko:"\uC120\uD0DD\uC790 \uADDC\uCE59"},save:{zh:"\u4FDD\u5B58",en:"Save",zh_TW:"\u5132\u5B58",ja:"\u4FDD\u5B58",ko:"\uC800\uC7A5"},edit:{zh:"\u7F16\u8F91",en:"Edit",zh_TW:"\u7DE8\u8F2F",ja:"\u7DE8\u96C6",ko:"\uC218\uC815"},cancel:{zh:"\u53D6\u6D88",en:"Cancel",zh_TW:"\u53D6\u6D88",ja:"\u30AD\u30E3\u30F3\u30BB\u30EB",ko:"\uCDE8\uC18C"},delete:{zh:"\u5220\u9664",en:"Delete",zh_TW:"\u522A\u9664",ja:"\u524A\u9664",ko:"\uC0AD\uC81C"},reset:{zh:"\u91CD\u7F6E",en:"Reset",zh_TW:"\u91CD\u8A2D",ja:"\u30EA\u30BB\u30C3\u30C8",ko:"\uCD08\uAE30\uD654"},add:{zh:"\u6DFB\u52A0",en:"Add",zh_TW:"\u65B0\u589E",ja:"\u8FFD\u52A0",ko:"\uCD94\uAC00"},inject_rules:{zh:"\u6CE8\u5165\u8BA2\u9605\u89C4\u5219",en:"Inject Subscribe Rules",zh_TW:"\u6CE8\u5165\u8A02\u95B1\u898F\u5247",ja:"\u8CFC\u8AAD\u30EB\u30FC\u30EB\u3092\u6CE8\u5165",ko:"\uAD6C\uB3C5 \uADDC\uCE59 \uC8FC\uC785"},personal_rules:{zh:"\u4E2A\u4EBA\u89C4\u5219",en:"Rules",zh_TW:"\u500B\u4EBA\u898F\u5247",ja:"\u500B\u4EBA\u30EB\u30FC\u30EB",ko:"\uAC1C\uC778 \uADDC\uCE59"},subscribe_rules:{zh:"\u8BA2\u9605\u89C4\u5219",en:"Subscribe",zh_TW:"\u8A02\u95B1\u898F\u5247",ja:"\u8CFC\u8AAD\u30EB\u30FC\u30EB",ko:"\uAD6C\uB3C5 \uADDC\uCE59"},overwrite_subscribe_rules:{zh:"\u8986\u5199\u8BA2\u9605\u89C4\u5219",en:"Overwrite",zh_TW:"\u8986\u5BEB\u8A02\u95B1\u898F\u5247",ja:"\u8CFC\u8AAD\u30EB\u30FC\u30EB\u3092\u4E0A\u66F8\u304D",ko:"\uAD6C\uB3C5 \uADDC\uCE59 \uB36E\uC5B4\uC4F0\uAE30"},subscribe_url:{zh:"\u8BA2\u9605\u5730\u5740",en:"Subscribe URL",zh_TW:"\u8A02\u95B1\u7DB2\u5740",ja:"\u8CFC\u8AADURL",ko:"\uAD6C\uB3C5 URL"},rules_warn_1:{zh:"1\u3001\u89C4\u5219\u751F\u6548\u7684\u4F18\u5148\u7EA7\u4F9D\u6B21\u4E3A\uFF1A\u4E2A\u4EBA\u89C4\u5219 > \u8BA2\u9605\u89C4\u5219 > \u5168\u5C40\u89C4\u5219\u3002\"\u5168\u5C40\u89C4\u5219\"\u76F8\u5F53\u4E8E\u515C\u5E95\u89C4\u5219\u3002",en:"1. The priority of rules is: personal rules > subscription rules > global rules. \"Global rules\" are like a fallback rule.",zh_TW:"1.\u898F\u5247\u751F\u6548\u7684\u512A\u5148\u9806\u5E8F\u4F9D\u5E8F\u70BA\uFF1A\u500B\u4EBA\u898F\u5247 > \u8A02\u95B1\u898F\u5247 > \u5168\u57DF\u898F\u5247\u3002 \"\u5168\u57DF\u898F\u5247\"\u76F8\u7576\u65BC\u515C\u5E95\u898F\u5247\u3002",ja:"1. \u30EB\u30FC\u30EB\u306E\u512A\u5148\u9806\u4F4D: \u500B\u4EBA\u30EB\u30FC\u30EB > \u8CFC\u8AAD\u30EB\u30FC\u30EB > \u30B0\u30ED\u30FC\u30D0\u30EB\u30EB\u30FC\u30EB\u3002\u300C\u30B0\u30ED\u30FC\u30D0\u30EB\u30EB\u30FC\u30EB\u300D\u306F\u30D5\u30A9\u30FC\u30EB\u30D0\u30C3\u30AF\u30EB\u30FC\u30EB\u306E\u3088\u3046\u306A\u3082\u306E\u3067\u3059\u3002",ko:"1. \uADDC\uCE59 \uC6B0\uC120\uC21C\uC704: \uAC1C\uC778 \uADDC\uCE59 > \uAD6C\uB3C5 \uADDC\uCE59 > \uC804\uC5ED \uADDC\uCE59. \"\uC804\uC5ED \uADDC\uCE59\"\uC740 \uC77C\uC885\uC758 \uD3F4\uBC31(fallback) \uADDC\uCE59\uC785\uB2C8\uB2E4."},rules_warn_2:{zh:"2\u3001\u201C\u8BA2\u9605\u89C4\u5219\u201D\u9009\u62E9\u6CE8\u5165\u540E\u624D\u4F1A\u751F\u6548\u3002",en:"2. \"Subscription rules\" will take effect only after injection is selected.",zh_TW:"2\u3001\u300C\u8A02\u95B1\u898F\u5247\u300D\u9078\u64C7\u6CE8\u5165\u5F8C\u624D\u6703\u751F\u6548\u3002",ja:"2. \u300C\u8CFC\u8AAD\u30EB\u30FC\u30EB\u300D\u306F\u6CE8\u5165\u3092\u9078\u629E\u3057\u305F\u5F8C\u306B\u306E\u307F\u6709\u52B9\u306B\u306A\u308A\u307E\u3059\u3002",ko:"2. \"\uAD6C\uB3C5 \uADDC\uCE59\"\uC740 \uC8FC\uC785\uC744 \uC120\uD0DD\uD55C \uD6C4\uC5D0\uB9CC \uC801\uC6A9\uB429\uB2C8\uB2E4."},rules_warn_3:{zh:"3\u3001\u5173\u4E8E\u89C4\u5219\u586B\u5199\uFF1A\u8F93\u5165\u6846\u7559\u7A7A\u6216\u4E0B\u62C9\u6846\u9009\u201C*\u201D\u8868\u793A\u91C7\u7528\u5168\u5C40\u89C4\u5219\u3002",en:"3. Regarding filling in the rules: Leave the input box blank or select \"*\" in the drop-down box to use global rule.",zh_TW:"3. \u898F\u5247\u586B\u5BEB\u8AAA\u660E\uFF1A\u8F38\u5165\u6846\u7559\u7A7A\u6216\u4E0B\u62C9\u9078\u64C7\u300C*\u300D\u8868\u793A\u4F7F\u7528\u5168\u57DF\u898F\u5247\u3002",ja:"3. \u30EB\u30FC\u30EB\u306E\u8A18\u5165\u306B\u3064\u3044\u3066: \u5165\u529B\u30DC\u30C3\u30AF\u30B9\u3092\u7A7A\u767D\u306B\u3059\u308B\u304B\u3001\u30C9\u30ED\u30C3\u30D7\u30C0\u30A6\u30F3\u3067\u300C*\u300D\u3092\u9078\u629E\u3059\u308B\u3068\u3001\u30B0\u30ED\u30FC\u30D0\u30EB\u30EB\u30FC\u30EB\u304C\u4F7F\u7528\u3055\u308C\u307E\u3059\u3002",ko:"3. \uADDC\uCE59 \uC791\uC131 \uAD00\uB828: \uC785\uB825\uB780\uC744 \uBE44\uC6CC\uB450\uAC70\uB098 \uB4DC\uB86D\uB2E4\uC6B4\uC5D0\uC11C \"*\"\uB97C \uC120\uD0DD\uD558\uBA74 \uC804\uC5ED \uADDC\uCE59\uC774 \uC0AC\uC6A9\uB429\uB2C8\uB2E4."},sync_warn:{zh:"\u6D89\u53CA\u9690\u79C1\u6570\u636E\u7684\u540C\u6B65\u8BF7\u8C28\u614E\u9009\u62E9\u7B2C\u4E09\u65B9\u540C\u6B65\u670D\u52A1\uFF0C\u5EFA\u8BAE\u81EA\u884C\u642D\u5EFA kiss-worker \u6216 WebDAV \u670D\u52A1\u3002",en:"When synchronizing data that involves privacy, please be cautious about choosing third-party sync services. It is recommended to set up your own sync service using kiss-worker or WebDAV.",zh_TW:"\u540C\u6B65\u6D89\u53CA\u96B1\u79C1\u8CC7\u6599\u6642\uFF0C\u8ACB\u8B39\u614E\u9078\u64C7\u7B2C\u4E09\u65B9\u540C\u6B65\u670D\u52D9\uFF1B\u5EFA\u8B70\u81EA\u5EFA kiss-worker \u6216 WebDAV \u670D\u52D9\u3002",ja:"\u30D7\u30E9\u30A4\u30D0\u30B7\u30FC\u306B\u95A2\u308F\u308B\u30C7\u30FC\u30BF\u3092\u540C\u671F\u3059\u308B\u5834\u5408\u3001\u30B5\u30FC\u30C9\u30D1\u30FC\u30C6\u30A3\u306E\u540C\u671F\u30B5\u30FC\u30D3\u30B9\u306F\u614E\u91CD\u306B\u9078\u629E\u3057\u3066\u304F\u3060\u3055\u3044\u3002kiss-worker \u3084 WebDAV \u30B5\u30FC\u30D3\u30B9\u3092\u81EA\u5DF1\u30DB\u30B9\u30C6\u30A3\u30F3\u30B0\u3059\u308B\u3053\u3068\u3092\u304A\u52E7\u3081\u3057\u307E\u3059\u3002",ko:"\uAC1C\uC778\uC815\uBCF4\uAC00 \uD3EC\uD568\uB41C \uB370\uC774\uD130\uB97C \uB3D9\uAE30\uD654\uD560 \uACBD\uC6B0, \uD0C0\uC0AC \uB3D9\uAE30\uD654 \uC11C\uBE44\uC2A4 \uC120\uD0DD\uC5D0 \uC2E0\uC911\uC744 \uAE30\uD558\uC2ED\uC2DC\uC624. \uC790\uCCB4 kiss-worker \uB610\uB294 WebDAV \uC11C\uBE44\uC2A4\uB97C \uAD6C\uCD95\uD558\uB294 \uAC83\uC744 \uAD8C\uC7A5\uD569\uB2C8\uB2E4."},sync_warn_2:{zh:"\u5982\u679C\u670D\u52A1\u5668\u5B58\u5728\u5176\u4ED6\u5BA2\u6237\u7AEF\u540C\u6B65\u7684\u6570\u636E\uFF0C\u7B2C\u4E00\u6B21\u540C\u6B65\u5C06\u76F4\u63A5\u8986\u76D6\u672C\u5730\u914D\u7F6E\uFF0C\u540E\u9762\u5219\u6839\u636E\u4FEE\u6539\u65F6\u95F4\uFF0C\u65B0\u7684\u8986\u76D6\u65E7\u7684\u3002",en:"If the server has data synchronized by other clients, the first synchronization will directly overwrite the local configuration, and later, according to the modification time, the new one will overwrite the old one.",zh_TW:"\u82E5\u4F3A\u670D\u5668\u4E0A\u5B58\u5728\u5176\u4ED6\u7528\u6236\u7AEF\u540C\u6B65\u7684\u8CC7\u6599\uFF0C\u7B2C\u4E00\u6B21\u540C\u6B65\u6703\u76F4\u63A5\u8986\u84CB\u672C\u6A5F\u8A2D\u5B9A\uFF1B\u4E4B\u5F8C\u5247\u4F9D\u4FEE\u6539\u6642\u9593\uFF0C\u7531\u65B0\u7684\u8986\u84CB\u820A\u7684\u3002",ja:"\u30B5\u30FC\u30D0\u30FC\u306B\u4ED6\u306E\u30AF\u30E9\u30A4\u30A2\u30F3\u30C8\u306B\u3088\u3063\u3066\u540C\u671F\u3055\u308C\u305F\u30C7\u30FC\u30BF\u304C\u3042\u308B\u5834\u5408\u3001\u6700\u521D\u306E\u540C\u671F\u306F\u30ED\u30FC\u30AB\u30EB\u8A2D\u5B9A\u3092\u76F4\u63A5\u4E0A\u66F8\u304D\u3057\u3001\u305D\u306E\u5F8C\u306F\u5909\u66F4\u6642\u9593\u306B\u5FDC\u3058\u3066\u65B0\u3057\u3044\u3082\u306E\u304C\u53E4\u3044\u3082\u306E\u3092\u4E0A\u66F8\u304D\u3057\u307E\u3059\u3002",ko:"\uC11C\uBC84\uC5D0 \uB2E4\uB978 \uD074\uB77C\uC774\uC5B8\uD2B8\uAC00 \uB3D9\uAE30\uD654\uD55C \uB370\uC774\uD130\uAC00 \uC788\uB294 \uACBD\uC6B0, \uCCAB \uBC88\uC9F8 \uB3D9\uAE30\uD654\uB294 \uB85C\uCEEC \uAD6C\uC131\uC744 \uC9C1\uC811 \uB36E\uC5B4\uC4F0\uBA70, \uC774\uD6C4\uC5D0\uB294 \uC218\uC815 \uC2DC\uAC04\uC5D0 \uB530\uB77C \uC0C8 \uD56D\uBAA9\uC774 \uAE30\uC874 \uD56D\uBAA9\uC744 \uB36E\uC5B4\uC501\uB2C8\uB2E4."},about_sync_api:{zh:"\u81EA\u5EFAkiss-wroker\u6570\u636E\u540C\u6B65\u670D\u52A1",en:"Self-hosting a Kiss-worker data sync service",zh_TW:"\u81EA\u5EFA kiss-wroker \u8CC7\u6599\u540C\u6B65\u670D\u52D9",ja:"Kiss-worker \u30C7\u30FC\u30BF\u540C\u671F\u30B5\u30FC\u30D3\u30B9\u3092\u30BB\u30EB\u30D5\u30DB\u30B9\u30C8\u3059\u308B",ko:"Kiss-worker \uB370\uC774\uD130 \uB3D9\uAE30\uD654 \uC11C\uBE44\uC2A4 \uC790\uCCB4 \uD638\uC2A4\uD305"},about_api:{zh:"1\u3001\u5176\u4E2D BuiltinAI \u4E3A\u6D4F\u89C8\u5668\u5185\u7F6EAI\u7FFB\u8BD1\uFF0C\u76EE\u524D\u4EC5 Chrome 138 \u53CA\u4EE5\u4E0A\u7248\u672C\u5F97\u5230\u652F\u6301\u3002",en:"1. BuiltinAI is the browser's built-in AI translation, which is currently only supported by Chrome 138 and above.",zh_TW:"1.\u5176\u4E2D BuiltinAI \u70BA\u700F\u89BD\u5668\u5167\u5EFAAI\u7FFB\u8B6F\uFF0C\u76EE\u524D\u50C5 Chrome 138 \u4EE5\u4E0A\u7248\u672C\u652F\u63F4\u3002",ja:"1. BuiltinAI \u306F\u30D6\u30E9\u30A6\u30B6\u5185\u8535\u306EAI\u7FFB\u8A33\u3067\u3001\u73FE\u5728 Chrome 138 \u4EE5\u964D\u306E\u30D0\u30FC\u30B8\u30E7\u30F3\u3067\u306E\u307F\u30B5\u30DD\u30FC\u30C8\u3055\u308C\u3066\u3044\u307E\u3059\u3002",ko:"1. BuiltinAI\uB294 \uBE0C\uB77C\uC6B0\uC800 \uB0B4\uC7A5 AI \uBC88\uC5ED\uC73C\uB85C, \uD604\uC7AC Chrome 138 \uC774\uC0C1 \uBC84\uC804\uC5D0\uC11C\uB9CC \uC9C0\uC6D0\uB429\uB2C8\uB2E4."},about_api_2:{zh:"2\u3001\u5927\u90E8\u5206AI\u63A5\u53E3\u90FD\u4E0EOpenAI\u517C\u5BB9\uFF0C\u56E0\u6B64\u9009\u62E9\u6DFB\u52A0OpenAI\u7C7B\u578B\u5373\u53EF\u3002It should be noted that Prompt has two types: batch translation and nobatch translation. Not all interfaces support batch translation.",en:"2. Most AI interfaces are compatible with OpenAI, so just choose to add the OpenAI type.",zh_TW:"2.\u5927\u90E8\u5206AI\u4ECB\u9762\u90FD\u8207OpenAI\u76F8\u5BB9\uFF0C\u56E0\u6B64\u9078\u64C7\u65B0\u589EOpenAI\u985E\u578B\u5373\u53EF\u3002\u8981\u6CE8\u610F\u7684\u662FPrompt\u5206\u805A\u5408\u7FFB\u8B6F\u548C\u975E\u805A\u5408\u7FFB\u8B6F\u5169\u7A2E\uFF0C\u4E0D\u662F\u6240\u6709\u4ECB\u9762\u90FD\u652F\u63F4\u805A\u5408\u7FFB\u8B6F\u3002",ja:"2. \u307B\u3068\u3093\u3069\u306EAI\u30A4\u30F3\u30BF\u30FC\u30D5\u30A7\u30FC\u30B9\u306FOpenAI\u3068\u4E92\u63DB\u6027\u304C\u3042\u308B\u305F\u3081\u3001OpenAI\u30BF\u30A4\u30D7\u3092\u8FFD\u52A0\u3059\u308B\u3060\u3051\u3067\u5341\u5206\u3067\u3059\u3002",ko:"2. \uB300\uBD80\uBD84\uC758 AI \uC778\uD130\uD398\uC774\uC2A4\uB294 OpenAI\uC640 \uD638\uD658\uB418\uBBC0\uB85C OpenAI \uC720\uD615\uC744 \uCD94\uAC00\uD558\uAE30\uB9CC \uD558\uBA74 \uB429\uB2C8\uB2E4."},about_api_3:{zh:"3\u3001\u6682\u672A\u5217\u51FA\u7684\u63A5\u53E3\uFF0C\u7406\u8BBA\u4E0A\u90FD\u53EF\u4EE5\u901A\u8FC7\u81EA\u5B9A\u4E49\u63A5\u53E3 (Custom) \u7684\u5F62\u5F0F\u652F\u6301\u3002",en:"3. Interfaces that have not yet been launched can theoretically be supported through custom interfaces.",zh_TW:"3.\u66AB\u672A\u5217\u51FA\u7684\u4ECB\u9762\uFF0C\u7406\u8AD6\u4E0A\u90FD\u53EF\u900F\u904E\u81EA\u8A02\u4ECB\u9762 (Custom) \u7684\u5F62\u5F0F\u652F\u63F4\u3002",ja:"3. \u307E\u3060\u30EA\u30B9\u30C8\u3055\u308C\u3066\u3044\u306A\u3044\u30A4\u30F3\u30BF\u30FC\u30D5\u30A7\u30FC\u30B9\u3082\u3001\u7406\u8AD6\u4E0A\u306F\u30AB\u30B9\u30BF\u30E0\u30A4\u30F3\u30BF\u30FC\u30D5\u30A7\u30FC\u30B9 (Custom) \u3092\u901A\u3058\u3066\u30B5\u30DD\u30FC\u30C8\u53EF\u80FD\u3067\u3059\u3002",ko:"3. \uC544\uC9C1 \uB4F1\uB85D\uB418\uC9C0 \uC54A\uC740 \uC778\uD130\uD398\uC774\uC2A4\uB3C4 \uC774\uB860\uC801\uC73C\uB85C\uB294 \uC0AC\uC6A9\uC790 \uC815\uC758 \uC778\uD130\uD398\uC774\uC2A4 (Custom)\uB97C \uD1B5\uD574 \uC9C0\uC6D0\uB420 \uC218 \uC788\uC2B5\uB2C8\uB2E4."},about_api_proxy:{zh:"\u67E5\u770B\u81EA\u5EFA\u4E00\u4E2A\u7FFB\u8BD1\u63A5\u53E3\u4EE3\u7406",en:"Check out the self-built translation interface proxy",zh_TW:"\u67E5\u770B\u5982\u4F55\u81EA\u5EFA\u7FFB\u8B6F\u4ECB\u9762 Proxy",ja:"\u81EA\u4F5C\u306E\u7FFB\u8A33\u30A4\u30F3\u30BF\u30FC\u30D5\u30A7\u30FC\u30B9\u30D7\u30ED\u30AD\u30B7\u3092\u30C1\u30A7\u30C3\u30AF\u3059\u308B",ko:"\uC790\uCCB4 \uAD6C\uCD95 \uBC88\uC5ED \uC778\uD130\uD398\uC774\uC2A4 \uD504\uB85D\uC2DC \uD655\uC778\uD558\uAE30"},setting_helper:{zh:"\u65B0\u65E7\u914D\u7F6E\u5E76\u4E0D\u517C\u5BB9\uFF0C\u5BFC\u51FA\u7684\u65E7\u7248\u914D\u7F6E\uFF0C\u52FF\u518D\u6B21\u5BFC\u5165\u3002",en:"The old and new configurations are not compatible. Do not import the exported old configuration again.",zh_TW:"\u65B0\u820A\u914D\u7F6E\u4E26\u4E0D\u76F8\u5BB9\uFF0C\u532F\u51FA\u7684\u820A\u7248\u914D\u7F6E\uFF0C\u52FF\u518D\u6B21\u532F\u5165\u3002",ja:"\u65B0\u65E7\u306E\u8A2D\u5B9A\u306B\u4E92\u63DB\u6027\u306F\u3042\u308A\u307E\u305B\u3093\u3002\u30A8\u30AF\u30B9\u30DD\u30FC\u30C8\u3057\u305F\u53E4\u3044\u8A2D\u5B9A\u3092\u518D\u5EA6\u30A4\u30F3\u30DD\u30FC\u30C8\u3057\u306A\u3044\u3067\u304F\u3060\u3055\u3044\u3002",ko:"\uC774\uC804 \uAD6C\uC131\uACFC \uC0C8 \uAD6C\uC131\uC740 \uD638\uD658\uB418\uC9C0 \uC54A\uC2B5\uB2C8\uB2E4. \uB0B4\uBCF4\uB0B8 \uC774\uC804 \uAD6C\uC131\uC744 \uB2E4\uC2DC \uAC00\uC838\uC624\uC9C0 \uB9C8\uC2ED\uC2DC\uC624."},style_none:{zh:"\u65E0",en:"None",zh_TW:"\u7121",ja:"\u306A\u3057",ko:"\uC5C6\uC74C"},under_line:{zh:"\u4E0B\u5212\u76F4\u7EBF",en:"Underline",zh_TW:"\u4E0B\u5283\u76F4\u7DDA",ja:"\u4E0B\u7DDA",ko:"\uBC11\uC904"},dot_line:{zh:"\u4E0B\u5212\u70B9\u72B6\u7EBF",en:"Dotted Underline",zh_TW:"\u4E0B\u5283\u9EDE\u72C0\u7DDA",ja:"\u70B9\u7DDA\u306E\u4E0B\u7DDA",ko:"\uC810\uC120 \uBC11\uC904"},dash_line:{zh:"\u4E0B\u5212\u865A\u7EBF",en:"Dashed Underline",zh_TW:"\u4E0B\u5283\u865B\u7DDA",ja:"\u7834\u7DDA\u306E\u4E0B\u7DDA",ko:"\uD30C\uC120 \uBC11\uC904"},dash_box:{zh:"\u865A\u7EBF\u6846",en:"Dashed Box",zh_TW:"\u865B\u7DDA\u6846",ja:"\u7834\u7DDA\u30DC\u30C3\u30AF\u30B9",ko:"\uD30C\uC120 \uC0C1\uC790"},dash_line_bold:{zh:"\u4E0B\u5212\u865A\u7EBF\u52A0\u7C97",en:"Dashed Underline Bold",zh_TW:"\u4E0B\u5283\u865B\u7DDA",ja:"\u7834\u7DDA\u306E\u4E0B\u7DDA (\u592A\u5B57)",ko:"\uAD75\uC740 \uD30C\uC120 \uBC11\uC904"},dash_box_bold:{zh:"\u865A\u7EBF\u6846\u52A0\u7C97",en:"Dashed Box Bold",zh_TW:"\u865B\u7DDA\u6846\u52A0\u7C97",ja:"\u7834\u7DDA\u30DC\u30C3\u30AF\u30B9 (\u592A\u5B57)",ko:"\uAD75\uC740 \uD30C\uC120 \uC0C1\uC790"},marker:{zh:"\u9A6C\u514B\u7B14",en:"Marker",zh_TW:"\u99AC\u514B\u7B46",ja:"\u30DE\u30FC\u30AB\u30FC",ko:"\uB9C8\uCEE4"},gradient_marker:{zh:"\u6E10\u53D8\u9A6C\u514B\u7B14",en:"Gradient Marker",zh_TW:"\u6F38\u5C64\u99AC\u514B\u7B46",ja:"\u30B0\u30E9\u30C7\u30FC\u30B7\u30E7\u30F3\u30DE\u30FC\u30AB\u30FC",ko:"\uADF8\uB77C\uB370\uC774\uC158 \uB9C8\uCEE4"},wavy_line:{zh:"\u4E0B\u5212\u6CE2\u6D6A\u7EBF",en:"Wavy Underline",zh_TW:"\u4E0B\u5283\u6CE2\u6D6A\u7DDA",ja:"\u6CE2\u7DDA\u306E\u4E0B\u7DDA",ko:"\uBB3C\uACB0 \uBC11\uC904"},wavy_line_bold:{zh:"\u4E0B\u5212\u6CE2\u6D6A\u7EBF\u52A0\u7C97",en:"Wavy Underline Bold",zh_TW:"\u4E0B\u5283\u6CE2\u6D6A\u7DDA\u52A0\u7C97",ja:"\u6CE2\u7DDA\u306E\u4E0B\u7DDA (\u592A\u5B57)",ko:"\uAD75\uC740 \uBB3C\uACB0 \uBC11\uC904"},fuzzy:{zh:"\u6A21\u7CCA",en:"Fuzzy",zh_TW:"\u6A21\u7CCA",ja:"\u307C\u304B\u3057",ko:"\uD750\uB9BC"},highlight:{zh:"\u9AD8\u4EAE",en:"Highlight",zh_TW:"\u53CD\u767D\u6A19\u793A",ja:"\u30CF\u30A4\u30E9\u30A4\u30C8",ko:"\uD558\uC774\uB77C\uC774\uD2B8"},blockquote:{zh:"\u5F15\u7528",en:"Blockquote",zh_TW:"\u5F15\u7528",ja:"\u5F15\u7528",ko:"\uC778\uC6A9"},gradient:{zh:"\u6E10\u53D8",en:"Gradient",zh_TW:"\u6F38\u8B8A",ja:"\u30B0\u30E9\u30C7\u30FC\u30B7\u30E7\u30F3",ko:"\uADF8\uB77C\uB370\uC774\uC158"},blink:{zh:"\u95EA\u73B0",en:"Blink",zh_TW:"\u9583\u73FE",ja:"\u70B9\u6EC5",ko:"\uAE5C\uBC15\uC784"},glow:{zh:"\u53D1\u5149",en:"Glow",zh_TW:"\u767C\u5149",ja:"\u767A\u5149",ko:"\uBC1C\uAD11"},colorful:{zh:"\u591A\u5F69",en:"Colorful",zh_TW:"\u591A\u5F69",ja:"\u30AB\u30E9\u30D5\u30EB",ko:"\uB2E4\uCC44\uB86D\uAC8C"},setting:{zh:"\u8BBE\u7F6E",en:"Setting",zh_TW:"\u8A2D\u5B9A",ja:"\u8A2D\u5B9A",ko:"\uC124\uC815"},pattern:{zh:"\u5339\u914D\u7F51\u5740",en:"URL pattern",zh_TW:"\u5339\u914D\u7DB2\u5740",ja:"URL\u30D1\u30BF\u30FC\u30F3",ko:"URL \uD328\uD134"},pattern_helper:{zh:"1\u3001\u652F\u6301\u661F\u53F7(*)\u901A\u914D\u7B26\u30022\u3001\u591A\u4E2AURL\u7528\u6362\u884C\u6216\u82F1\u6587\u9017\u53F7\u201C,\u201D\u5206\u9694\u3002",en:"1. Supports the asterisk (*) wildcard character. 2. Separate multiple URLs with newlines or English commas \",\".",zh_TW:"1. \u652F\u63F4\u661F\u865F (*) \u842C\u7528\u5B57\u5143\u30022. \u591A\u500B URL \u8ACB\u4EE5\u63DB\u884C\u6216\u82F1\u6587\u9017\u865F\u300C,\u300D\u5206\u9694\u3002",ja:"1. \u30A2\u30B9\u30BF\u30EA\u30B9\u30AF (*) \u30EF\u30A4\u30EB\u30C9\u30AB\u30FC\u30C9\u3092\u30B5\u30DD\u30FC\u30C8\u3057\u307E\u3059\u3002 2. \u8907\u6570\u306EURL\u306F\u6539\u884C\u307E\u305F\u306F\u82F1\u8A9E\u306E\u30B3\u30F3\u30DE\u300C,\u300D\u3067\u533A\u5207\u308A\u307E\u3059\u3002",ko:"1. \uBCC4\uD45C(*) \uC640\uC77C\uB4DC\uCE74\uB4DC \uBB38\uC790\uB97C \uC9C0\uC6D0\uD569\uB2C8\uB2E4. 2. \uC5EC\uB7EC URL\uC740 \uC904\uBC14\uAFC8 \uB610\uB294 \uC601\uC5B4 \uC27C\uD45C \",\"\uB85C \uAD6C\uBD84\uD569\uB2C8\uB2E4."},selector_helper:{zh:"1\u3001\u9700\u8981\u7FFB\u8BD1\u7684\u76EE\u6807\u5143\u7D20\u30022\u3001\u5F00\u542F\u81EA\u52A8\u626B\u63CF\u9875\u9762\u540E\uFF0C\u672C\u8BBE\u7F6E\u65E0\u6548\u30023\u3001\u9075\u5FAACSS\u9009\u62E9\u5668\u8BED\u6CD5\u3002",en:"1. The target element to be translated. 2. This setting is invalid when automatic page scanning is enabled. 3. Follow the CSS selector syntax.",zh_TW:"1\u3001\u9700\u8981\u7FFB\u8B6F\u7684\u76EE\u6A19\u5143\u7D20\u3002 2.\u958B\u555F\u81EA\u52D5\u6383\u63CF\u9801\u9762\u5F8C\uFF0C\u672C\u8A2D\u5B9A\u7121\u6548\u3002 3.\u9075\u5FAACSS\u9078\u64C7\u5668\u8A9E\u6CD5\u3002",ja:"1. \u7FFB\u8A33\u5BFE\u8C61\u306E\u8981\u7D20\u3002 2. \u30DA\u30FC\u30B8\u306E\u81EA\u52D5\u30B9\u30AD\u30E3\u30F3\u3092\u6709\u52B9\u306B\u3059\u308B\u3068\u3001\u3053\u306E\u8A2D\u5B9A\u306F\u7121\u52B9\u306B\u306A\u308A\u307E\u3059\u3002 3. CSS\u30BB\u30EC\u30AF\u30BF\u69CB\u6587\u306B\u5F93\u3063\u3066\u304F\u3060\u3055\u3044\u3002",ko:"1. \uBC88\uC5ED\uD560 \uB300\uC0C1 \uC694\uC18C\uC785\uB2C8\uB2E4. 2. \uC790\uB3D9 \uD398\uC774\uC9C0 \uC2A4\uCE94\uC774 \uD65C\uC131\uD654\uB418\uBA74 \uC774 \uC124\uC815\uC740 \uBB34\uD6A8\uD654\uB429\uB2C8\uB2E4. 3. CSS \uC120\uD0DD\uC790 \uAD6C\uBB38\uC744 \uB530\uB985\uB2C8\uB2E4."},translate_switch:{zh:"\u5F00\u542F\u7FFB\u8BD1",en:"Translate Switch",zh_TW:"\u958B\u555F\u7FFB\u8B6F",ja:"\u7FFB\u8A33\u3092\u6709\u52B9\u306B\u3059\u308B",ko:"\uBC88\uC5ED \uCF1C\uAE30"},default_enabled:{zh:"\u9ED8\u8BA4\u5F00\u542F",en:"Enabled",zh_TW:"\u9810\u8A2D\u958B\u555F",ja:"\u30C7\u30D5\u30A9\u30EB\u30C8\u3067\u6709\u52B9",ko:"\uAE30\uBCF8\uC73C\uB85C \uC0AC\uC6A9"},default_disabled:{zh:"\u9ED8\u8BA4\u5173\u95ED",en:"Disabled",zh_TW:"\u9810\u8A2D\u95DC\u9589",ja:"\u30C7\u30D5\u30A9\u30EB\u30C8\u3067\u7121\u52B9",ko:"\uAE30\uBCF8\uC73C\uB85C \uC0AC\uC6A9 \uC548\uD568"},selector:{zh:"\u9009\u62E9\u5668",en:"Selector",zh_TW:"\u9078\u64C7\u5668",ja:"\u30BB\u30EC\u30AF\u30BF",ko:"\uC120\uD0DD\uC790"},target_selector:{zh:"\u76EE\u6807\u5143\u7D20\u9009\u62E9\u5668",en:"Target element selector",zh_TW:"\u76EE\u6A19\u5143\u7D20\u9078\u64C7\u5668",ja:"\u5BFE\u8C61\u8981\u7D20\u30BB\u30EC\u30AF\u30BF",ko:"\uB300\uC0C1 \uC694\uC18C \uC120\uD0DD\uC790"},keep_selector:{zh:"\u4FDD\u7559\u5143\u7D20\u9009\u62E9\u5668",en:"Keep unchanged selector",zh_TW:"\u4FDD\u7559\u5143\u7D20\u9078\u64C7\u5668",ja:"\u4FDD\u6301\u8981\u7D20\u30BB\u30EC\u30AF\u30BF",ko:"\uC720\uC9C0\uD560 \uC694\uC18C \uC120\uD0DD\uC790"},keep_selector_helper:{zh:"1\u3001\u76EE\u6807\u5143\u7D20\u4E0B\u9762\u9700\u8981\u539F\u6837\u4FDD\u7559\u7684\u5B50\u8282\u70B9\u30022\u3001\u9075\u5FAACSS\u9009\u62E9\u5668\u8BED\u6CD5\u3002",en:"1. The child nodes under the target element need to remain intact. 2. Follow the CSS selector syntax.",zh_TW:"1. \u76EE\u6A19\u5143\u7D20\u4E0B\u7684\u5B50\u7BC0\u9EDE\u9700\u8981\u4FDD\u6301\u539F\u6A23\u3002 2. \u9075\u5FAA CSS \u9078\u64C7\u5668\u8A9E\u6CD5\u3002",ja:"1. \u5BFE\u8C61\u8981\u7D20\u306E\u4E0B\u306B\u3042\u308B\u3001\u305D\u306E\u307E\u307E\u4FDD\u6301\u3059\u308B\u5FC5\u8981\u304C\u3042\u308B\u5B50\u30CE\u30FC\u30C9\u3002 2. CSS\u30BB\u30EC\u30AF\u30BF\u69CB\u6587\u306B\u5F93\u3063\u3066\u304F\u3060\u3055\u3044\u3002",ko:"1. \uB300\uC0C1 \uC694\uC18C \uC544\uB798\uC758 \uC790\uC2DD \uB178\uB4DC \uC911 \uADF8\uB300\uB85C \uC720\uC9C0\uD574\uC57C \uD558\uB294 \uB178\uB4DC. 2. CSS \uC120\uD0DD\uC790 \uAD6C\uBB38\uC744 \uB530\uB985\uB2C8\uB2E4."},root_selector:{zh:"\u6839\u8282\u70B9\u9009\u62E9\u5668",en:"Root node selector",zh_TW:"\u6839\u7BC0\u9EDE\u9078\u64C7\u5668",ja:"\u30EB\u30FC\u30C8\u30CE\u30FC\u30C9\u30BB\u30EC\u30AF\u30BF",ko:"\uB8E8\uD2B8 \uB178\uB4DC \uC120\uD0DD\uC790"},root_selector_helper:{zh:"1\u3001\u7528\u4E8E\u7F29\u5C0F\u9875\u9762\u7FFB\u8BD1\u8303\u56F4\u30022\u3001\u9075\u5FAACSS\u9009\u62E9\u5668\u8BED\u6CD5\u3002",en:"1. Used to narrow the translation scope of the page. 2. Follow the CSS selector syntax.",zh_TW:"1.\u7528\u65BC\u7E2E\u5C0F\u9801\u9762\u7FFB\u8B6F\u7BC4\u570D\u3002 2\u3001\u9075\u5FAACSS\u9078\u64C7\u5668\u8A9E\u6CD5\u3002",ja:"1. \u30DA\u30FC\u30B8\u306E\u7FFB\u8A33\u7BC4\u56F2\u3092\u7D5E\u308A\u8FBC\u3080\u305F\u3081\u306B\u4F7F\u7528\u3057\u307E\u3059\u3002 2. CSS\u30BB\u30EC\u30AF\u30BF\u69CB\u6587\u306B\u5F93\u3063\u3066\u304F\u3060\u3055\u3044\u3002",ko:"1. \uD398\uC774\uC9C0\uC758 \uBC88\uC5ED \uBC94\uC704\uB97C \uC881\uD788\uB294 \uB370 \uC0AC\uC6A9\uB429\uB2C8\uB2E4. 2. CSS \uC120\uD0DD\uC790 \uAD6C\uBB38\uC744 \uB530\uB985\uB2C8\uB2E4."},ignore_selector:{zh:"\u4E0D\u7FFB\u8BD1\u8282\u70B9\u9009\u62E9\u5668",en:"Ignore node selectors",zh_TW:"\u4E0D\u7FFB\u8B6F\u7BC0\u9EDE\u9078\u64C7\u5668",ja:"\u7FFB\u8A33\u3057\u306A\u3044\u30CE\u30FC\u30C9\u30BB\u30EC\u30AF\u30BF",ko:"\uBC88\uC5ED \uBB34\uC2DC \uB178\uB4DC \uC120\uD0DD\uC790"},ignore_selector_helper:{zh:"1\u3001\u9700\u8981\u5FFD\u7565\u7684\u8282\u70B9\u30022\u3001\u9075\u5FAACSS\u9009\u62E9\u5668\u8BED\u6CD5\u3002",en:"1. Nodes to be ignored. 2. Follow CSS selector syntax.",zh_TW:"1\u3001\u9700\u8981\u5FFD\u7565\u7684\u7BC0\u9EDE\u3002 2\u3001\u9075\u5FAACSS\u9078\u64C7\u5668\u8A9E\u6CD5\u3002",ja:"1. \u7121\u8996\u3059\u308B\u30CE\u30FC\u30C9\u3002 2. CSS\u30BB\u30EC\u30AF\u30BF\u69CB\u6587\u306B\u5F93\u3063\u3066\u304F\u3060\u3055\u3044\u3002",ko:"1. \uBB34\uC2DC\uD560 \uB178\uB4DC. 2. CSS \uC120\uD0DD\uC790 \uAD6C\uBB38\uC744 \uB530\uB985\uB2C8\uB2E4."},terms:{zh:"\u4E13\u4E1A\u672F\u8BED",en:"Terms",zh_TW:"\u5C08\u696D\u8853\u8A9E",ja:"\u5C02\u9580\u7528\u8A9E",ko:"\uC804\uBB38 \uC6A9\uC5B4"},terms_helper:{zh:"1\u3001\u652F\u6301\u6B63\u5219\u8868\u8FBE\u5F0F\u5339\u914D\uFF0C\u65E0\u9700\u659C\u6746\uFF0C\u4E0D\u652F\u6301\u4FEE\u9970\u7B26\u30022\u3001\u591A\u6761\u672F\u8BED\u7528\u6362\u884C\u6216\u5206\u53F7\u201C;\u201D\u9694\u5F00\u30023\u3001\u672F\u8BED\u548C\u8BD1\u6587\u7528\u82F1\u6587\u9017\u53F7\u201C,\u201D\u9694\u5F00\u30024\u3001\u6CA1\u6709\u8BD1\u6587\u89C6\u4E3A\u4E0D\u7FFB\u8BD1\u672F\u8BED\u3002",en:"1. Supports regular expression matching, no slash required, and no modifiers are supported. 2. Separate multiple terms with newlines or semicolons \";\". 3. Terms and translations are separated by English commas \",\". 4. If there is no translation, the term will be deemed not to be translated.",zh_TW:"1. \u652F\u63F4\u6B63\u5247\u8868\u9054\u5F0F\u6BD4\u5C0D\uFF0C\u7121\u9700\u659C\u7DDA\uFF0C\u4E14\u4E0D\u652F\u63F4\u4FEE\u98FE\u7B26\u30022. \u591A\u689D\u8853\u8A9E\u4EE5\u63DB\u884C\u6216\u5206\u865F\u300C;\u300D\u5206\u9694\u30023. \u8853\u8A9E\u8207\u8B6F\u6587\u4EE5\u82F1\u6587\u9017\u865F\u300C,\u300D\u5206\u9694\u30024. \u7121\u8B6F\u6587\u8005\u8996\u70BA\u4E0D\u7FFB\u8B6F\u8A72\u8853\u8A9E\u3002",ja:"1. \u6B63\u898F\u8868\u73FE\u30DE\u30C3\u30C1\u30F3\u30B0\u3092\u30B5\u30DD\u30FC\u30C8 (\u30B9\u30E9\u30C3\u30B7\u30E5\u4E0D\u8981\u3001\u4FEE\u98FE\u5B50\u975E\u5BFE\u5FDC)\u3002 2. \u8907\u6570\u306E\u7528\u8A9E\u306F\u6539\u884C\u307E\u305F\u306F\u30BB\u30DF\u30B3\u30ED\u30F3\u300C;\u300D\u3067\u533A\u5207\u308A\u307E\u3059\u3002 3. \u7528\u8A9E\u3068\u7FFB\u8A33\u306F\u82F1\u8A9E\u306E\u30B3\u30F3\u30DE\u300C,\u300D\u3067\u533A\u5207\u308A\u307E\u3059\u3002 4. \u7FFB\u8A33\u304C\u306A\u3044\u5834\u5408\u306F\u3001\u305D\u306E\u7528\u8A9E\u3092\u7FFB\u8A33\u3057\u306A\u3044\u3082\u306E\u3068\u307F\u306A\u3057\u307E\u3059\u3002",ko:"1. \uC815\uADDC\uC2DD \uC77C\uCE58\uB97C \uC9C0\uC6D0\uD558\uBA70, \uC2AC\uB798\uC2DC\uAC00 \uD544\uC694 \uC5C6\uACE0 \uC218\uC815\uC790\uB294 \uC9C0\uC6D0\uB418\uC9C0 \uC54A\uC2B5\uB2C8\uB2E4. 2. \uC5EC\uB7EC \uC6A9\uC5B4\uB294 \uC904\uBC14\uAFC8 \uB610\uB294 \uC138\uBBF8\uCF5C\uB860 \";\"\uC73C\uB85C \uAD6C\uBD84\uD569\uB2C8\uB2E4. 3. \uC6A9\uC5B4\uC640 \uBC88\uC5ED\uC740 \uC601\uC5B4 \uC27C\uD45C \",\"\uB85C \uAD6C\uBD84\uD569\uB2C8\uB2E4. 4. \uBC88\uC5ED\uC774 \uC5C6\uB294 \uACBD\uC6B0 \uD574\uB2F9 \uC6A9\uC5B4\uB97C \uBC88\uC5ED\uD558\uC9C0 \uC54A\uB294 \uAC83\uC73C\uB85C \uAC04\uC8FC\uD569\uB2C8\uB2E4."},ai_terms:{zh:"AI\u4E13\u4E1A\u672F\u8BED",en:"AI Terms",zh_TW:"AI\u5C08\u696D\u8853\u8A9E",ja:"AI\u5C02\u9580\u7528\u8A9E",ko:"AI \uC804\uBB38 \uC6A9\uC5B4"},ai_terms_helper:{zh:"1\u3001AI\u667A\u80FD\u66FF\u6362\uFF0C\u4E0D\u652F\u6301\u6B63\u5219\u8868\u8FBE\u5F0F\u30022\u3001\u591A\u6761\u672F\u8BED\u7528\u6362\u884C\u6216\u5206\u53F7\u201C;\u201D\u9694\u5F00\u30023\u3001\u672F\u8BED\u548C\u8BD1\u6587\u7528\u82F1\u6587\u9017\u53F7\u201C,\u201D\u9694\u5F00\u30024\u3001\u6CA1\u6709\u8BD1\u6587\u89C6\u4E3A\u4E0D\u7FFB\u8BD1\u672F\u8BED\u3002",en:"1. AI intelligent replacement does not support regular expressions.2. Separate multiple terms with newlines or semicolons \";\". 3. Terms and translations are separated by English commas \",\". 4. If there is no translation, the term will be deemed not to be translated.",zh_TW:"1.AI\u667A\u80FD\u66FF\u63DB\uFF0C\u4E0D\u652F\u63F4\u6B63\u898F\u8868\u793A\u5F0F\u30022. \u591A\u689D\u8853\u8A9E\u4EE5\u63DB\u884C\u6216\u5206\u865F\u300C;\u300D\u5206\u9694\u30023. \u8853\u8A9E\u8207\u8B6F\u6587\u4EE5\u82F1\u6587\u9017\u865F\u300C,\u300D\u5206\u9694\u30024. \u7121\u8B6F\u6587\u8005\u8996\u70BA\u4E0D\u7FFB\u8B6F\u8A72\u8853\u8A9E\u3002",ja:"1. AI\u306B\u3088\u308B\u30A4\u30F3\u30C6\u30EA\u30B8\u30A7\u30F3\u30C8\u306A\u7F6E\u63DB (\u6B63\u898F\u8868\u73FE\u975E\u5BFE\u5FDC)\u3002 2. \u8907\u6570\u306E\u7528\u8A9E\u306F\u6539\u884C\u307E\u305F\u306F\u30BB\u30DF\u30B3\u30ED\u30F3\u300C;\u300D\u3067\u533A\u5207\u308A\u307E\u3059\u3002 3. \u7528\u8A9E\u3068\u7FFB\u8A33\u306F\u82F1\u8A9E\u306E\u30B3\u30F3\u30DE\u300C,\u300D\u3067\u533A\u5207\u308A\u307E\u3059\u3002 4. \u7FFB\u8A33\u304C\u306A\u3044\u5834\u5408\u306F\u3001\u305D\u306E\u7528\u8A9E\u3092\u7FFB\u8A33\u3057\u306A\u3044\u3082\u306E\u3068\u307F\u306A\u3057\u307E\u3059\u3002",ko:"1. AI \uC9C0\uB2A5\uD615 \uB300\uCCB4, \uC815\uADDC\uC2DD\uC744 \uC9C0\uC6D0\uD558\uC9C0 \uC54A\uC2B5\uB2C8\uB2E4. 2. \uC5EC\uB7EC \uC6A9\uC5B4\uB294 \uC904\uBC14\uAFC8 \uB610\uB294 \uC138\uBBF8\uCF5C\uB860 \";\"\uC73C\uB85C \uAD6C\uBD84\uD569\uB2C8\uB2E4. 3. \uC6A9\uC5B4\uC640 \uBC88\uC5ED\uC740 \uC601\uC5B4 \uC27C\uD45C \",\"\uB85C \uAD6C\uBD84\uD569\uB2C8\uB2E4. 4. \uBC88\uC5ED\uC774 \uC5C6\uB294 \uACBD\uC6B0 \uD574\uB2F9 \uC6A9\uC5B4\uB97C \uBC88\uC5ED\uD558\uC9C0 \uC54A\uB294 \uAC83\uC73C\uB85C \uAC04\uC8FC\uD569\uB2C8\uB2E4."},text_ext_style:{zh:"\u8BD1\u6587\u9644\u52A0\u6837\u5F0F",en:"Translation additional styles",zh_TW:"\u8B6F\u6587\u9644\u52A0\u6A23\u5F0F",ja:"\u7FFB\u8A33\u306E\u8FFD\u52A0\u30B9\u30BF\u30A4\u30EB",ko:"\uBC88\uC5ED \uCD94\uAC00 \uC2A4\uD0C0\uC77C"},selector_style:{zh:"\u9009\u62E9\u5668\u8282\u70B9\u6837\u5F0F",en:"Selector Style",zh_TW:"\u9078\u64C7\u5668\u7BC0\u9EDE\u6A23\u5F0F",ja:"\u30BB\u30EC\u30AF\u30BF\u30CE\u30FC\u30C9\u30B9\u30BF\u30A4\u30EB",ko:"\uC120\uD0DD\uC790 \uB178\uB4DC \uC2A4\uD0C0\uC77C"},terms_style:{zh:"\u4E13\u4E1A\u672F\u8BED\u6837\u5F0F",en:"Terms Style",zh_TW:"\u5C08\u696D\u8853\u8A9E\u6A23\u5F0F",ja:"\u5C02\u9580\u7528\u8A9E\u30B9\u30BF\u30A4\u30EB",ko:"\uC804\uBB38 \uC6A9\uC5B4 \uC2A4\uD0C0\uC77C"},highlight_style:{zh:"\u8BCD\u6C47\u9AD8\u4EAE\u6837\u5F0F",en:"Fav Words highlight style",zh_TW:"\u8A5E\u5F59\u9AD8\u4EAE\u6A23\u5F0F",ja:"\u5358\u8A9E\u30CF\u30A4\u30E9\u30A4\u30C8\u30B9\u30BF\u30A4\u30EB",ko:"\uB2E8\uC5B4 \uD558\uC774\uB77C\uC774\uD2B8 \uC2A4\uD0C0\uC77C"},selector_style_helper:{zh:"\u5F00\u542F\u7FFB\u8BD1\u65F6\u6CE8\u5165\u3002",en:"It is injected when translation is turned on.",zh_TW:"\u5728\u958B\u555F\u7FFB\u8B6F\u6642\u6CE8\u5165\u3002",ja:"\u7FFB\u8A33\u304C\u6709\u52B9\u306A\u3068\u304D\u306B\u6CE8\u5165\u3055\u308C\u307E\u3059\u3002",ko:"\uBC88\uC5ED\uC774 \uCF1C\uC838 \uC788\uC744 \uB54C \uC8FC\uC785\uB429\uB2C8\uB2E4."},selector_parent_style:{zh:"\u9009\u62E9\u5668\u7236\u8282\u70B9\u6837\u5F0F",en:"Parent Selector Style",zh_TW:"\u9078\u64C7\u5668\u7236\u7BC0\u9EDE\u6A23\u5F0F",ja:"\u89AA\u30BB\u30EC\u30AF\u30BF\u30B9\u30BF\u30A4\u30EB",ko:"\uBD80\uBAA8 \uC120\uD0DD\uC790 \uC2A4\uD0C0\uC77C"},selector_grand_style:{zh:"\u9009\u62E9\u5668\u7956\u8282\u70B9\u6837\u5F0F",en:"Grand Selector Style",zh_TW:"\u9078\u64C7\u5668\u7956\u7BC0\u9EDE\u6A23\u5F0F",ja:"\u7956\u5148\u30BB\u30EC\u30AF\u30BF\u30B9\u30BF\u30A4\u30EB",ko:"\uC0C1\uC704 \uC120\uD0DD\uC790 \uC2A4\uD0C0\uC77C"},inject_js:{zh:"\u6CE8\u5165JS",en:"Inject JS",zh_TW:"\u6CE8\u5165 JS",ja:"JS\u3092\u6CE8\u5165",ko:"JS \uC8FC\uC785"},inject_js_helper:{zh:"\u9884\u52A0\u8F7D\u65F6\u6CE8\u5165\uFF0C\u4E00\u4E2A\u9875\u9762\u4EC5\u8FD0\u884C\u4E00\u6B21\u3002\u5185\u7F6E\u5168\u5C40\u5BF9\u8C61 KT: {\n apiTranslate,\n apiDectect,\n apiSetting,\n apisMap,\n toLang,\n docInfo,\n glossary,\n }",en:"Injected during preload, runs only once per page. Built-in global object KT: {\n apiTranslate,\n apiDectect,\n apiSetting,\n apisMap,\n toLang,\n docInfo,\n glossary,\n }",zh_TW:"\u9810\u5148\u8F09\u5165\u6642\u6CE8\u5165\uFF0C\u4E00\u500B\u9801\u9762\u50C5\u904B\u884C\u4E00\u6B21\u3002\u5167\u5EFA\u5168\u57DF\u7269\u4EF6 KT: {\n apiTranslate,\n apiDectect,\n apiSetting,\n apisMap,\n toLang,\n docInfo,\n glossary,\n }",ja:"\u30D7\u30EA\u30ED\u30FC\u30C9\u6642\u306B\u6CE8\u5165\u3055\u308C\u3001\u30DA\u30FC\u30B8\u3054\u3068\u306B1\u56DE\u3060\u3051\u5B9F\u884C\u3055\u308C\u307E\u3059\u3002\u7D44\u307F\u8FBC\u307F\u30B0\u30ED\u30FC\u30D0\u30EB\u30AA\u30D6\u30B8\u30A7\u30AF\u30C8 KT: {\n apiTranslate,\n apiDectect,\n apiSetting,\n apisMap,\n toLang,\n docInfo,\n glossary,\n }",ko:"\uBBF8\uB9AC \uB85C\uB4DC \uC2DC \uC8FC\uC785\uB418\uBA70 \uD398\uC774\uC9C0\uB2F9 \uD55C \uBC88\uB9CC \uC2E4\uD589\uB429\uB2C8\uB2E4. \uB0B4\uC7A5 \uC804\uC5ED \uAC1D\uCCB4 KT: {\n apiTranslate,\n apiDectect,\n apiSetting,\n apisMap,\n toLang,\n docInfo,\n glossary,\n }"},inject_css:{zh:"\u6CE8\u5165CSS",en:"Inject CSS",zh_TW:"\u6CE8\u5165 CSS",ja:"CSS\u3092\u6CE8\u5165",ko:"CSS \uC8FC\uC785"},inject_css_helper:{zh:"\u9884\u52A0\u8F7D\u65F6\u6CE8\u5165\uFF0C\u4E00\u4E2A\u9875\u9762\u4EC5\u8FD0\u884C\u4E00\u6B21\u3002",en:"Injected during preload, runs only once per page.",zh_TW:"\u9810\u5148\u8F09\u5165\u6642\u6CE8\u5165\uFF0C\u4E00\u500B\u9801\u9762\u50C5\u904B\u884C\u4E00\u6B21\u3002",ja:"\u30D7\u30EA\u30ED\u30FC\u30C9\u6642\u306B\u6CE8\u5165\u3055\u308C\u3001\u30DA\u30FC\u30B8\u3054\u3068\u306B1\u56DE\u3060\u3051\u5B9F\u884C\u3055\u308C\u307E\u3059\u3002",ko:"\uBBF8\uB9AC \uB85C\uB4DC \uC2DC \uC8FC\uC785\uB418\uBA70 \uD398\uC774\uC9C0\uB2F9 \uD55C \uBC88\uB9CC \uC2E4\uD589\uB429\uB2C8\uB2E4."},fixer_function:{zh:"\u4FEE\u590D\u51FD\u6570",en:"Fixer Function",zh_TW:"\u4FEE\u5FA9\u51FD\u5F0F",ja:"\u4FEE\u6B63\u95A2\u6570",ko:"\uC218\uC815 \uD568\uC218"},fixer_function_helper:{zh:"1\u3001br\u662F\u5C06
\u6362\u884C\u66FF\u6362\u6210

\u30022\u3001bn\u662F\u5C06\\n\u6362\u884C\u66FF\u6362\u6210

\u30023\u3001brToDiv\u548CbnToDiv\u662F\u66FF\u6362\u6210

\u3002",en:"1. br replaces
line breaks with

. 2. bn replaces \\n newline with

. 3. brToDiv and bnToDiv are replaced with

.",zh_TW:"1. br \u6703\u5C07
\u63DB\u884C\u66FF\u63DB\u70BA

\u30022. bn \u6703\u5C07 \\n \u63DB\u884C\u66FF\u63DB\u70BA

\u30023. brToDiv \u8207 bnToDiv \u6703\u66FF\u63DB\u70BA

\u3002",ja:"1. br \u306F
\u6539\u884C\u3092

\u306B\u7F6E\u304D\u63DB\u3048\u307E\u3059\u3002 2. bn \u306F \\n \u6539\u884C\u3092

\u306B\u7F6E\u304D\u63DB\u3048\u307E\u3059\u3002 3. brToDiv \u3068 bnToDiv \u306F

\u306B\u7F6E\u304D\u63DB\u3048\u307E\u3059\u3002",ko:"1. br\uC740
\uC904\uBC14\uAFC8\uC744

\uB85C \uB300\uCCB4\uD569\uB2C8\uB2E4. 2. bn\uC740 \\n \uC904\uBC14\uAFC8\uC744

\uB85C \uB300\uCCB4\uD569\uB2C8\uB2E4. 3. brToDiv \uBC0F bnToDiv\uB294

\uB85C \uB300\uCCB4\uB429\uB2C8\uB2E4."},import:{zh:"\u5BFC\u5165",en:"Import",zh_TW:"\u532F\u5165",ja:"\u30A4\u30F3\u30DD\u30FC\u30C8",ko:"\uAC00\uC838\uC624\uAE30"},export:{zh:"\u5BFC\u51FA",en:"Export",zh_TW:"\u532F\u51FA",ja:"\u30A8\u30AF\u30B9\u30DD\u30FC\u30C8",ko:"\uB0B4\uBCF4\uB0B4\uAE30"},export_translation:{zh:"\u5BFC\u51FA\u91CA\u4E49",en:"Export Translation",zh_TW:"\u532F\u51FA\u91CB\u7FA9",ja:"\u8A33\u6587\u306E\u30A8\u30AF\u30B9\u30DD\u30FC\u30C8",ko:"\uBC88\uC5ED \uB0B4\uBCF4\uB0B4\uAE30"},error_cant_be_blank:{zh:"\u4E0D\u80FD\u4E3A\u7A7A",en:"Can not be blank",zh_TW:"\u4E0D\u53EF\u70BA\u7A7A",ja:"\u7A7A\u767D\u306B\u3059\u308B\u3053\u3068\u306F\u3067\u304D\u307E\u305B\u3093",ko:"\uBE44\uC6CC\uB458 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4"},error_duplicate_values:{zh:"\u5B58\u5728\u91CD\u590D\u7684\u503C",en:"There are duplicate values",zh_TW:"\u5B58\u5728\u91CD\u8907\u7684\u503C",ja:"\u91CD\u8907\u3059\u308B\u5024\u304C\u5B58\u5728\u3057\u307E\u3059",ko:"\uC911\uBCF5\uB41C \uAC12\uC774 \uC788\uC2B5\uB2C8\uB2E4"},error_wrong_file_type:{zh:"\u9519\u8BEF\u7684\u6587\u4EF6\u7C7B\u578B",en:"Wrong file type",zh_TW:"\u6A94\u6848\u985E\u578B\u932F\u8AA4",ja:"\u4E0D\u6B63\u306A\u30D5\u30A1\u30A4\u30EB\u30BF\u30A4\u30D7\u3067\u3059",ko:"\uC798\uBABB\uB41C \uD30C\uC77C \uD615\uC2DD\uC785\uB2C8\uB2E4"},error_fetch_url:{zh:"\u8BF7\u68C0\u67E5url\u5730\u5740\u662F\u5426\u6B63\u786E\u6216\u7A0D\u540E\u518D\u8BD5\u3002",en:"Please check if the url address is correct or try again later.",zh_TW:"\u8ACB\u6AA2\u67E5 URL \u662F\u5426\u6B63\u78BA\u6216\u7A0D\u5F8C\u518D\u8A66\u3002",ja:"URL\u30A2\u30C9\u30EC\u30B9\u304C\u6B63\u3057\u3044\u304B\u78BA\u8A8D\u3059\u308B\u304B\u3001\u5F8C\u3067\u3082\u3046\u4E00\u5EA6\u304A\u8A66\u3057\u304F\u3060\u3055\u3044\u3002",ko:"URL \uC8FC\uC18C\uAC00 \uC62C\uBC14\uB978\uC9C0 \uD655\uC778\uD558\uAC70\uB098 \uB098\uC911\uC5D0 \uB2E4\uC2DC \uC2DC\uB3C4\uD558\uC2ED\uC2DC\uC624."},deepl_api:{zh:"DeepL \u63A5\u53E3",en:"DeepL API",zh_TW:"DeepL \u4ECB\u9762",ja:"DeepL API",ko:"DeepL API"},deepl_key:{zh:"DeepL \u5BC6\u94A5",en:"DeepL Key",zh_TW:"DeepL \u91D1\u9470",ja:"DeepL \u30AD\u30FC",ko:"DeepL \uD0A4"},openai_api:{zh:"OpenAI \u63A5\u53E3",en:"OpenAI API",zh_TW:"OpenAI \u4ECB\u9762",ja:"OpenAI API",ko:"OpenAI API"},openai_key:{zh:"OpenAI \u5BC6\u94A5",en:"OpenAI Key",zh_TW:"OpenAI \u91D1\u9470",ja:"OpenAI \u30AD\u30FC",ko:"OpenAI \uD0A4"},openai_model:{zh:"OpenAI \u6A21\u578B",en:"OpenAI Model",zh_TW:"OpenAI \u6A21\u578B",ja:"OpenAI \u30E2\u30C7\u30EB",ko:"OpenAI \uBAA8\uB378"},openai_prompt:{zh:"OpenAI \u63D0\u793A\u8BCD",en:"OpenAI Prompt",zh_TW:"OpenAI \u63D0\u793A\u8A5E",ja:"OpenAI \u30D7\u30ED\u30F3\u30D7\u30C8",ko:"OpenAI \uD504\uB86C\uD504\uD2B8"},if_clear_cache:{zh:"\u662F\u5426\u6E05\u9664\u7F13\u5B58\uFF08\u9ED8\u8BA4\u7F13\u5B587\u5929\uFF09",en:"Whether clear cache (Default cache is 7 days)",zh_TW:"\u662F\u5426\u6E05\u9664\u5FEB\u53D6\uFF08\u9810\u8A2D\u5FEB\u53D67\u5929\uFF09",ja:"\u30AD\u30E3\u30C3\u30B7\u30E5\u3092\u30AF\u30EA\u30A2\u3057\u307E\u3059\u304B\uFF08\u30C7\u30D5\u30A9\u30EB\u30C8\u306E\u30AD\u30E3\u30C3\u30B7\u30E5\u671F\u9593\u306F7\u65E5\u9593\u3067\u3059\uFF09",ko:"\uCE90\uC2DC\uB97C \uC9C0\uC6B0\uC2DC\uACA0\uC2B5\uB2C8\uAE4C (\uAE30\uBCF8 \uCE90\uC2DC 7\uC77C)"},clear_cache_never:{zh:"\u4E0D\u6E05\u9664\u7F13\u5B58",en:"Never clear cache",zh_TW:"\u4E0D\u6E05\u9664\u5FEB\u53D6",ja:"\u30AD\u30E3\u30C3\u30B7\u30E5\u3092\u30AF\u30EA\u30A2\u3057\u306A\u3044",ko:"\uCE90\uC2DC \uC9C0\uC6B0\uC9C0 \uC54A\uC74C"},clear_cache_restart:{zh:"\u91CD\u542F\u6D4F\u89C8\u5668\u65F6\u6E05\u9664\u7F13\u5B58",en:"Clear cache when restarting browser",zh_TW:"\u91CD\u65B0\u555F\u52D5\u700F\u89BD\u5668\u6642\u6E05\u9664\u5FEB\u53D6",ja:"\u30D6\u30E9\u30A6\u30B6\u518D\u8D77\u52D5\u6642\u306B\u30AD\u30E3\u30C3\u30B7\u30E5\u3092\u30AF\u30EA\u30A2",ko:"\uBE0C\uB77C\uC6B0\uC800 \uC7AC\uC2DC\uC791 \uC2DC \uCE90\uC2DC \uC9C0\uC6B0\uAE30"},data_sync_type:{zh:"\u6570\u636E\u540C\u6B65\u65B9\u5F0F",en:"Data Sync Type",zh_TW:"\u8CC7\u6599\u540C\u6B65\u65B9\u5F0F",ja:"\u30C7\u30FC\u30BF\u540C\u671F\u30BF\u30A4\u30D7",ko:"\uB370\uC774\uD130 \uB3D9\uAE30\uD654 \uC720\uD615"},data_sync_url:{zh:"\u6570\u636E\u540C\u6B65\u63A5\u53E3",en:"Data Sync API",zh_TW:"\u8CC7\u6599\u540C\u6B65\u4ECB\u9762",ja:"\u30C7\u30FC\u30BF\u540C\u671FAPI",ko:"\uB370\uC774\uD130 \uB3D9\uAE30\uD654 API"},data_sync_user:{zh:"\u6570\u636E\u540C\u6B65\u8D26\u6237",en:"Data Sync User",zh_TW:"\u8CC7\u6599\u540C\u6B65\u5E33\u865F",ja:"\u30C7\u30FC\u30BF\u540C\u671F\u30A2\u30AB\u30A6\u30F3\u30C8",ko:"\uB370\uC774\uD130 \uB3D9\uAE30\uD654 \uACC4\uC815"},data_sync_key:{zh:"\u6570\u636E\u540C\u6B65\u5BC6\u94A5",en:"Data Sync Key",zh_TW:"\u8CC7\u6599\u540C\u6B65\u91D1\u9470",ja:"\u30C7\u30FC\u30BF\u540C\u671F\u30AD\u30FC",ko:"\uB370\uC774\uD130 \uB3D9\uAE30\uD654 \uD0A4"},sync_now:{zh:"\u7ACB\u5373\u540C\u6B65",en:"Sync Now",zh_TW:"\u7ACB\u5373\u540C\u6B65",ja:"\u4ECA\u3059\u3050\u540C\u671F",ko:"\uC9C0\uAE08 \uB3D9\uAE30\uD654"},sync_success:{zh:"\u540C\u6B65\u6210\u529F\uFF01",en:"Sync Success",zh_TW:"\u540C\u6B65\u6210\u529F\uFF01",ja:"\u540C\u671F\u6210\u529F\uFF01",ko:"\uB3D9\uAE30\uD654 \uC131\uACF5!"},sync_failed:{zh:"\u540C\u6B65\u5931\u8D25\uFF01",en:"Sync Error",zh_TW:"\u540C\u6B65\u5931\u6557\uFF01",ja:"\u540C\u671F\u5931\u6557\uFF01",ko:"\uB3D9\uAE30\uD654 \uC2E4\uD328!"},error_got_some_wrong:{zh:"\u62B1\u6B49\uFF0C\u51FA\u9519\u4E86\uFF01",en:"Sorry, something went wrong!",zh_TW:"\u62B1\u6B49\uFF0C\u767C\u751F\u932F\u8AA4\uFF01",ja:"\u7533\u3057\u8A33\u3042\u308A\u307E\u305B\u3093\u3001\u30A8\u30E9\u30FC\u304C\u767A\u751F\u3057\u307E\u3057\u305F\uFF01",ko:"\uC8C4\uC1A1\uD569\uB2C8\uB2E4, \uC624\uB958\uAC00 \uBC1C\uC0DD\uD588\uC2B5\uB2C8\uB2E4!"},error_sync_setting:{zh:"\u60A8\u7684\u540C\u6B65\u7C7B\u578B\u5FC5\u987B\u4E3A\u201CKISS-Worker\u201D\uFF0C\u4E14\u9700\u586B\u5199\u5B8C\u6574",en:"Your sync type must be \"KISS-Worker\" and must be filled in completely",zh_TW:"\u60A8\u7684\u540C\u6B65\u578B\u614B\u5FC5\u9808\u70BA\u300CKISS-Worker\u300D\uFF0C\u4E14\u9700\u586B\u5BEB\u5B8C\u6574\u3002",ja:"\u540C\u671F\u30BF\u30A4\u30D7\u306F\u300CKISS-Worker\u300D\u3067\u3042\u308B\u5FC5\u8981\u304C\u3042\u308A\u3001\u3059\u3079\u3066\u5165\u529B\u3059\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059\u3002",ko:"\uB3D9\uAE30\uD654 \uC720\uD615\uC740 \"KISS-Worker\"\uC5EC\uC57C \uD558\uBA70, \uBAA8\uB4E0 \uD56D\uBAA9\uC744 \uBE60\uC9D0\uC5C6\uC774 \uC785\uB825\uD574\uC57C \uD569\uB2C8\uB2E4."},click_test:{zh:"\u70B9\u51FB\u6D4B\u8BD5",en:"Click Test",zh_TW:"\u9EDE\u64CA\u6E2C\u8A66",ja:"\u30AF\u30EA\u30C3\u30AF\u3057\u3066\u30C6\u30B9\u30C8",ko:"\uD074\uB9AD \uD14C\uC2A4\uD2B8"},test_success:{zh:"\u6D4B\u8BD5\u6210\u529F",en:"Test success",zh_TW:"\u6E2C\u8A66\u6210\u529F",ja:"\u30C6\u30B9\u30C8\u6210\u529F",ko:"\uD14C\uC2A4\uD2B8 \uC131\uACF5"},test_failed:{zh:"\u6D4B\u8BD5\u5931\u8D25",en:"Test failed",zh_TW:"\u6E2C\u8A66\u5931\u6557",ja:"\u30C6\u30B9\u30C8\u5931\u6557",ko:"\uD14C\uC2A4\uD2B8 \uC2E4\uD328"},clear_all_cache_now:{zh:"\u7ACB\u5373\u6E05\u9664\u5168\u90E8\u7F13\u5B58",en:"Clear all cache now",zh_TW:"\u7ACB\u5373\u6E05\u9664\u5168\u90E8\u5FEB\u53D6",ja:"\u3059\u3079\u3066\u306E\u30AD\u30E3\u30C3\u30B7\u30E5\u3092\u4ECA\u3059\u3050\u30AF\u30EA\u30A2",ko:"\uBAA8\uB4E0 \uCE90\uC2DC \uC9C0\uAE08 \uC9C0\uC6B0\uAE30"},clear_cache:{zh:"\u6E05\u9664\u7F13\u5B58",en:"Clear Cache",zh_TW:"\u6E05\u9664\u5FEB\u53D6",ja:"\u30AD\u30E3\u30C3\u30B7\u30E5\u3092\u30AF\u30EA\u30A2",ko:"\uCE90\uC2DC \uC9C0\uC6B0\uAE30"},clear_success:{zh:"\u6E05\u9664\u6210\u529F",en:"Clear success",zh_TW:"\u6E05\u9664\u6210\u529F",ja:"\u30AF\u30EA\u30A2\u6210\u529F",ko:"\uC9C0\uC6B0\uAE30 \uC131\uACF5"},clear_failed:{zh:"\u6E05\u9664\u5931\u8D25",en:"Clear failed",zh_TW:"\u6E05\u9664\u5931\u6557",ja:"\u30AF\u30EA\u30A2\u5931\u6557",ko:"\uC9C0\uC6B0\uAE30 \uC2E4\uD328"},share:{zh:"\u5206\u4EAB",en:"Share",zh_TW:"\u5206\u4EAB",ja:"\u5171\u6709",ko:"\uACF5\uC720"},clear_all:{zh:"\u6E05\u7A7A",en:"Clear All",zh_TW:"\u6E05\u7A7A",ja:"\u3059\u3079\u3066\u30AF\u30EA\u30A2",ko:"\uBAA8\uB450 \uC9C0\uC6B0\uAE30"},help:{zh:"\u6C42\u52A9",en:"Help",zh_TW:"\u6C42\u52A9",ja:"\u30D8\u30EB\u30D7",ko:"\uB3C4\uC6C0\uB9D0"},restore_default:{zh:"\u6062\u590D\u9ED8\u8BA4",en:"Restore Default",zh_TW:"\u6062\u5FA9\u9810\u8A2D",ja:"\u30C7\u30D5\u30A9\u30EB\u30C8\u306B\u623B\u3059",ko:"\uAE30\uBCF8\uAC12 \uBCF5\uC6D0"},shortcuts_setting:{zh:"\u5FEB\u6377\u952E\u8BBE\u7F6E",en:"Shortcuts Setting",zh_TW:"\u5FEB\u6377\u9375\u8A2D\u5B9A",ja:"\u30B7\u30E7\u30FC\u30C8\u30AB\u30C3\u30C8\u8A2D\u5B9A",ko:"\uB2E8\uCD95\uD0A4 \uC124\uC815"},toggle_translate_shortcut:{zh:"\"\u5F00\u542F\u7FFB\u8BD1\"\u5FEB\u6377\u952E",en:"\"Toggle Translate\" Shortcut",zh_TW:"\u300C\u958B\u555F\u7FFB\u8B6F\u300D\u5FEB\u6377\u9375",ja:"\u300C\u7FFB\u8A33\u5207\u308A\u66FF\u3048\u300D\u30B7\u30E7\u30FC\u30C8\u30AB\u30C3\u30C8",ko:"\"\uBC88\uC5ED \uCF1C\uAE30\" \uB2E8\uCD95\uD0A4"},toggle_style_shortcut:{zh:"\"\u5207\u6362\u6837\u5F0F\"\u5FEB\u6377\u952E",en:"\"Toggle Style\" Shortcut",zh_TW:"\u300C\u5207\u63DB\u6A23\u5F0F\u300D\u5FEB\u6377\u9375",ja:"\u300C\u30B9\u30BF\u30A4\u30EB\u5207\u308A\u66FF\u3048\u300D\u30B7\u30E7\u30FC\u30C8\u30AB\u30C3\u30C8",ko:"\"\uC2A4\uD0C0\uC77C \uC804\uD658\" \uB2E8\uCD95\uD0A4"},toggle_popup_shortcut:{zh:"\"\u6253\u5F00\u5F39\u7A97\"\u5FEB\u6377\u952E",en:"\"Open Popup\" Shortcut",zh_TW:"\u300C\u958B\u555F\u5F48\u7A97\u300D\u5FEB\u6377\u9375",ja:"\u300C\u30DD\u30C3\u30D7\u30A2\u30C3\u30D7\u3092\u958B\u304F\u300D\u30B7\u30E7\u30FC\u30C8\u30AB\u30C3\u30C8",ko:"\"\uD31D\uC5C5 \uC5F4\uAE30\" \uB2E8\uCD95\uD0A4"},open_setting_shortcut:{zh:"\"\u6253\u5F00\u8BBE\u7F6E\"\u5FEB\u6377\u952E",en:"\"Open Setting\" Shortcut",zh_TW:"\u300C\u958B\u555F\u8A2D\u5B9A\u300D\u5FEB\u6377\u9375",ja:"\u300C\u8A2D\u5B9A\u3092\u958B\u304F\u300D\u30B7\u30E7\u30FC\u30C8\u30AB\u30C3\u30C8",ko:"\"\uC124\uC815 \uC5F4\uAE30\" \uB2E8\uCD95\uD0A4"},hide_fab_button:{zh:"\u9690\u85CF\u60AC\u6D6E\u6309\u94AE",en:"Hide Fab Button",zh_TW:"\u96B1\u85CF\u61F8\u6D6E\u6309\u9215",ja:"\u30D5\u30ED\u30FC\u30C6\u30A3\u30F3\u30B0\u30DC\u30BF\u30F3\u3092\u96A0\u3059",ko:"\uD50C\uB85C\uD305 \uBC84\uD2BC \uC228\uAE30\uAE30"},fab_click_action:{zh:"\u5355\u51FB\u60AC\u6D6E\u6309\u94AE\u52A8\u4F5C",en:"Single Click Fab Action",zh_TW:"\u55AE\u64CA\u61F8\u6D6E\u6309\u94AE\u52D5\u4F5C",ja:"\u30D5\u30ED\u30FC\u30C6\u30A3\u30F3\u30B0\u30DC\u30BF\u30F3\u306E\u30AF\u30EA\u30C3\u30AF\u52D5\u4F5C",ko:"\uD50C\uB85C\uD305 \uBC84\uD2BC \uD074\uB9AD \uB3D9\uC791"},fab_click_menu:{zh:"\u5F39\u51FA\u83DC\u5355",en:"Popup Menu",zh_TW:"\u5F48\u51FA\u9078\u55AE",ja:"\u30E1\u30CB\u30E5\u30FC\u3092\u958B\u304F",ko:"\uD31D\uC5C5 \uBA54\uB274"},fab_click_translate:{zh:"\u76F4\u63A5\u7FFB\u8BD1",en:"Translate",zh_TW:"\u76F4\u63A5\u7FFB\u8B6F",ja:"\u76F4\u63A5\u7FFB\u8A33",ko:"\uBC14\uB85C \uBC88\uC5ED"},hide_tran_button:{zh:"\u9690\u85CF\u7FFB\u8BD1\u6309\u94AE",en:"Hide Translate Button",zh_TW:"\u96B1\u85CF\u7FFB\u8B6F\u6309\u9215",ja:"\u7FFB\u8A33\u30DC\u30BF\u30F3\u3092\u96A0\u3059",ko:"\uBC88\uC5ED \uBC84\uD2BC \uC228\uAE30\uAE30"},hide_click_away:{zh:"\u70B9\u51FB\u5916\u90E8\u5173\u95ED\u5F39\u7A97",en:"Click outside to close the pop-up window",zh_TW:"\u9EDE\u64CA\u5916\u90E8\u95DC\u9589\u5F48\u7A97",ja:"\u5916\u90E8\u30AF\u30EA\u30C3\u30AF\u3067\u30DD\u30C3\u30D7\u30A2\u30C3\u30D7\u3092\u9589\u3058\u308B",ko:"\uBC14\uAE65\uCABD \uD074\uB9AD \uC2DC \uD31D\uC5C5 \uB2EB\uAE30"},use_simple_style:{zh:"\u4F7F\u7528\u7B80\u6D01\u754C\u9762",en:"Use a simple interface",zh_TW:"\u4F7F\u7528\u7C21\u6F54\u4ECB\u9762",ja:"\u30B7\u30F3\u30D7\u30EBUI\u3092\u4F7F\u7528",ko:"\uAC04\uB2E8\uD55C \uC778\uD130\uD398\uC774\uC2A4 \uC0AC\uC6A9"},show:{zh:"\u663E\u793A",en:"Show",zh_TW:"\u986F\u793A",ja:"\u8868\u793A",ko:"\uD45C\uC2DC"},hide:{zh:"\u9690\u85CF",en:"Hide",zh_TW:"\u96B1\u85CF",ja:"\u975E\u8868\u793A",ko:"\uC228\uAE30\uAE30"},save_rule:{zh:"\u4FDD\u5B58\u672C\u7AD9\u89C4\u5219",en:"Save this site rule",zh_TW:"\u4FDD\u5B58\u672C\u7AD9\u898F\u5247",ja:"\u3053\u306E\u30B5\u30A4\u30C8\u306E\u30EB\u30FC\u30EB\u3092\u4FDD\u5B58",ko:"\uC774 \uC0AC\uC774\uD2B8 \uADDC\uCE59 \uC800\uC7A5"},global_rule:{zh:"\u5168\u5C40\u89C4\u5219",en:"Global Rule",zh_TW:"\u5168\u57DF\u898F\u5247",ja:"\u30B0\u30ED\u30FC\u30D0\u30EB\u30EB\u30FC\u30EB",ko:"\uC804\uC5ED \uADDC\uCE59"},input_translate:{zh:"\u8F93\u5165\u6846\u7FFB\u8BD1",en:"Input Box Translation",zh_TW:"\u8F38\u5165\u6846\u7FFB\u8B6F",ja:"\u5165\u529B\u30DC\u30C3\u30AF\u30B9\u7FFB\u8A33",ko:"\uC785\uB825\uCC3D \uBC88\uC5ED"},use_input_box_translation:{zh:"\u542F\u7528\u8F93\u5165\u6846\u7FFB\u8BD1",en:"Input Box Translation",zh_TW:"\u555F\u7528\u8F38\u5165\u6846\u7FFB\u8B6F",ja:"\u5165\u529B\u30DC\u30C3\u30AF\u30B9\u7FFB\u8A33\u3092\u6709\u52B9\u306B\u3059\u308B",ko:"\uC785\uB825\uCC3D \uBC88\uC5ED \uC0AC\uC6A9"},input_selector:{zh:"\u8F93\u5165\u6846\u9009\u62E9\u5668",en:"Input Selector",zh_TW:"\u8F38\u5165\u6846\u9078\u64C7\u5668",ja:"\u5165\u529B\u30DC\u30C3\u30AF\u30B9\u30BB\u30EC\u30AF\u30BF",ko:"\uC785\uB825\uCC3D \uC120\uD0DD\uC790"},input_selector_helper:{zh:"\u7528\u4E8E\u8F93\u5165\u6846\u7FFB\u8BD1\u3002",en:"Used for input box translation.",zh_TW:"\u7528\u65BC\u8F38\u5165\u6846\u7FFB\u8B6F\u3002",ja:"\u5165\u529B\u30DC\u30C3\u30AF\u30B9\u306E\u7FFB\u8A33\u306B\u4F7F\u7528\u3057\u307E\u3059\u3002",ko:"\uC785\uB825\uCC3D \uBC88\uC5ED\uC5D0 \uC0AC\uC6A9\uB429\uB2C8\uB2E4."},trigger_trans_shortcut:{zh:"\u89E6\u53D1\u7FFB\u8BD1\u5FEB\u6377\u952E",en:"Trigger Translation Shortcut Keys",zh_TW:"\u89F8\u767C\u7FFB\u8B6F\u5FEB\u6377\u9375",ja:"\u7FFB\u8A33\u30B7\u30E7\u30FC\u30C8\u30AB\u30C3\u30C8\u30AD\u30FC",ko:"\uBC88\uC5ED \uC2E4\uD589 \uB2E8\uCD95\uD0A4"},trigger_trans_shortcut_help:{zh:"\u9ED8\u8BA4\u4E3A\u5355\u51FB\u201CAltLeft+KeyI\u201D",en:"Default is \"AltLeft+KeyI\"",zh_TW:"\u9810\u8A2D\u70BA\u6309\u4E0B\u300CAltLeft+KeyI\u300D",ja:"\u30C7\u30D5\u30A9\u30EB\u30C8\u306F\u300CAltLeft+KeyI\u300D\u3067\u3059",ko:"\uAE30\uBCF8\uAC12 \"AltLeft+KeyI\""},shortcut_press_count:{zh:"\u5FEB\u6377\u952E\u8FDE\u51FB\u6B21\u6570",en:"Shortcut Press Number",zh_TW:"\u5FEB\u6377\u9375\u9023\u64CA\u6B21\u6578",ja:"\u30B7\u30E7\u30FC\u30C8\u30AB\u30C3\u30C8\u306E\u9023\u7D9A\u30D7\u30EC\u30B9\u56DE\u6570",ko:"\uB2E8\uCD95\uD0A4 \uC5F0\uC18D \uC785\uB825 \uD69F\uC218"},combo_timeout:{zh:"\u8FDE\u51FB\u8D85\u65F6\u65F6\u95F4 (10-1000ms)",en:"Combo Timeout (10-1000ms)",zh_TW:"\u9023\u64CA\u903E\u6642 (10-1000ms)",ja:"\u9023\u7D9A\u30D7\u30EC\u30B9\u30BF\u30A4\u30E0\u30A2\u30A6\u30C8 (10-1000ms)",ko:"\uC5F0\uC18D \uC785\uB825 \uC2DC\uAC04 \uCD08\uACFC (10-1000ms)"},input_trans_start_sign:{zh:"\u7FFB\u8BD1\u8D77\u59CB\u6807\u8BC6",en:"Translation Start Sign",zh_TW:"\u7FFB\u8B6F\u8D77\u59CB\u6A19\u8A18",ja:"\u7FFB\u8A33\u958B\u59CB\u8A18\u53F7",ko:"\uBC88\uC5ED \uC2DC\uC791 \uD45C\uC2DC"},input_trans_start_sign_help:{zh:"\u6807\u8BC6\u540E\u9762\u53EF\u4EE5\u52A0\u76EE\u6807\u8BED\u8A00\u4EE3\u7801\uFF0C\u5982\uFF1A \u201C/en \u4F60\u597D\u201D\u3001\u201C/zh hello\u201D",en:"The target language code can be added after the sign, such as: \"/en \u4F60\u597D\", \"/zh hello\"",zh_TW:"\u6A19\u8A18\u5F8C\u53EF\u52A0\u4E0A\u76EE\u6A19\u8A9E\u8A00\u4EE3\u78BC\uFF0C\u4F8B\u5982\uFF1A\u300C/en \u4F60\u597D\u300D\u3001\u300C/zh hello\u300D",ja:"\u8A18\u53F7\u306E\u5F8C\u306B\u5BFE\u8C61\u8A00\u8A9E\u30B3\u30FC\u30C9\u3092\u8FFD\u52A0\u3067\u304D\u307E\u3059\u3002\u4F8B\uFF1A\u300C/en \u4F60\u597D\u300D\u3001\u300C/zh hello\u300D",ko:"\uD45C\uC2DC \uB4A4\uC5D0 \uB300\uC0C1 \uC5B8\uC5B4 \uCF54\uB4DC\uB97C \uCD94\uAC00\uD560 \uC218 \uC788\uC2B5\uB2C8\uB2E4. \uC608: \"/en \u4F60\u597D\", \"/zh hello\""},detect_lang_remote:{zh:"\u8FDC\u7A0B\u8BED\u8A00\u68C0\u6D4B",en:"Remote language detection",zh_TW:"\u9060\u7AEF\u8A9E\u8A00\u5075\u6E2C",ja:"\u30EA\u30E2\u30FC\u30C8\u8A00\u8A9E\u691C\u51FA",ko:"\uC6D0\uACA9 \uC5B8\uC5B4 \uAC10\uC9C0"},detect_lang_remote_help:{zh:"\u542F\u7528\u540E\u68C0\u6D4B\u51C6\u786E\u5EA6\u589E\u52A0\uFF0C\u4F46\u4F1A\u964D\u4F4E\u7FFB\u8BD1\u901F\u5EA6\uFF0C\u8BF7\u914C\u60C5\u5F00\u542F",en:"After enabling, the detection accuracy will increase, but it will reduce the translation speed. Please enable it as appropriate.",zh_TW:"\u555F\u7528\u5F8C\u53EF\u63D0\u5347\u5075\u6E2C\u6E96\u78BA\u5EA6\uFF0C\u4F46\u6703\u964D\u4F4E\u7FFB\u8B6F\u901F\u5EA6\uFF0C\u8ACB\u8996\u9700\u8981\u958B\u555F\u3002",ja:"\u6709\u52B9\u306B\u3059\u308B\u3068\u691C\u51FA\u7CBE\u5EA6\u304C\u5411\u4E0A\u3057\u307E\u3059\u304C\u3001\u7FFB\u8A33\u901F\u5EA6\u304C\u4F4E\u4E0B\u3059\u308B\u53EF\u80FD\u6027\u304C\u3042\u308A\u307E\u3059\u3002\u5FC5\u8981\u306B\u5FDC\u3058\u3066\u6709\u52B9\u306B\u3057\u3066\u304F\u3060\u3055\u3044\u3002",ko:"\uD65C\uC131\uD654\uD558\uBA74 \uAC10\uC9C0 \uC815\uD655\uB3C4\uAC00 \uB192\uC544\uC9C0\uC9C0\uB9CC \uBC88\uC5ED \uC18D\uB3C4\uAC00 \uB290\uB824\uC9C8 \uC218 \uC788\uC2B5\uB2C8\uB2E4. \uC801\uC808\uD788 \uD65C\uC131\uD654\uD558\uC2ED\uC2DC\uC624."},detect_lang_service:{zh:"\u8BED\u8A00\u68C0\u6D4B\u670D\u52A1",en:"Language detect service",zh_TW:"\u8A9E\u8A00\u6AA2\u6E2C\u670D\u52D9",ja:"\u8A00\u8A9E\u691C\u51FA\u30B5\u30FC\u30D3\u30B9",ko:"\uC5B8\uC5B4 \uAC10\uC9C0 \uC11C\uBE44\uC2A4"},disable:{zh:"\u7981\u7528",en:"Disable",zh_TW:"\u505C\u7528",ja:"\u7121\u52B9",ko:"\uBE44\uD65C\uC131\uD654"},enable:{zh:"\u542F\u7528",en:"Enable",zh_TW:"\u555F\u7528",ja:"\u6709\u52B9",ko:"\uD65C\uC131\uD654"},selection_translate:{zh:"\u5212\u8BCD\u7FFB\u8BD1",en:"Selection Translation",zh_TW:"\u5283\u8A5E\u7FFB\u8B6F",ja:"\u9078\u629E\u7FFB\u8A33",ko:"\uC120\uD0DD \uBC88\uC5ED"},toggle_selection_translate:{zh:"\u542F\u7528\u5212\u8BCD\u7FFB\u8BD1",en:"Use Selection Translate",zh_TW:"\u555F\u7528\u5283\u8A5E\u7FFB\u8B6F",ja:"\u9078\u629E\u7FFB\u8A33\u3092\u6709\u52B9\u306B\u3059\u308B",ko:"\uC120\uD0DD \uBC88\uC5ED \uC0AC\uC6A9"},trigger_tranbox_shortcut:{zh:"\u663E\u793A\u7FFB\u8BD1\u6846/\u7FFB\u8BD1\u9009\u4E2D\u6587\u5B57\u5FEB\u6377\u952E",en:"Open Translate Popup/Translate Selected Shortcut",zh_TW:"\u986F\u793A\u7FFB\u8B6F\u6846\uFF0F\u7FFB\u8B6F\u9078\u4E2D\u6587\u5B57\u5FEB\u6377\u9375",ja:"\u7FFB\u8A33\u30DD\u30C3\u30D7\u30A2\u30C3\u30D7\u8868\u793A/\u9078\u629E\u7FFB\u8A33\u30B7\u30E7\u30FC\u30C8\u30AB\u30C3\u30C8",ko:"\uBC88\uC5ED\uCC3D \uD45C\uC2DC/\uC120\uD0DD \uBC88\uC5ED \uB2E8\uCD95\uD0A4"},tranbtn_offset_x:{zh:"\u7FFB\u8BD1\u6309\u94AE\u504F\u79FBX\uFF08\xB1200\uFF09",en:"Translate Button Offset X (\xB1200)",zh_TW:"\u7FFB\u8B6F\u6309\u9215\u4F4D\u79FB X\uFF08\xB1200\uFF09",ja:"\u7FFB\u8A33\u30DC\u30BF\u30F3\u30AA\u30D5\u30BB\u30C3\u30C8X (\xB1200)",ko:"\uBC88\uC5ED \uBC84\uD2BC \uC624\uD504\uC14B X (\xB1200)"},tranbtn_offset_y:{zh:"\u7FFB\u8BD1\u6309\u94AE\u504F\u79FBY\uFF08\xB1200\uFF09",en:"Translate Button Offset Y (\xB1200)",zh_TW:"\u7FFB\u8B6F\u6309\u9215\u4F4D\u79FB Y\uFF08\xB1200\uFF09",ja:"\u7FFB\u8A33\u30DC\u30BF\u30F3\u30AA\u30D5\u30BB\u30C3\u30C8Y (\xB1200)",ko:"\uBC88\uC5ED \uBC84\uD2BC \uC624\uD504\uC14B Y (\xB1200)"},tranbox_offset_x:{zh:"\u7FFB\u8BD1\u6846\u504F\u79FBX\uFF08\xB1200\uFF09",en:"Translate Box Offset X (\xB1200)",zh_TW:"\u7FFB\u8B6F\u6846\u4F4D\u79FB X\uFF08\xB1200\uFF09",ja:"\u7FFB\u8A33\u30DC\u30C3\u30AF\u30B9\u30AA\u30D5\u30BB\u30C3\u30C8X (\xB1200)",ko:"\uBC88\uC5ED\uCC3D \uC624\uD504\uC14B X (\xB1200)"},tranbox_offset_y:{zh:"\u7FFB\u8BD1\u6846\u504F\u79FBY\uFF08\xB1200\uFF09",en:"Translate Box Offset Y (\xB1200)",zh_TW:"\u7FFB\u8B6F\u6846\u4F4D\u79FB Y\uFF08\xB1200\uFF09",ja:"\u7FFB\u8A33\u30DC\u30C3\u30AF\u30B9\u30AA\u30D5\u30BB\u30C3\u30C8Y (\xB1200)",ko:"\uBC88\uC5ED\uCC3D \uC624\uD504\uC14B Y (\xB1200)"},translated_text:{zh:"\u8BD1\u6587",en:"Translated Text",zh_TW:"\u8B6F\u6587",ja:"\u7FFB\u8A33\u6E08\u307F\u30C6\u30AD\u30B9\u30C8",ko:"\uBC88\uC5ED\uB41C \uD14D\uC2A4\uD2B8"},original_text:{zh:"\u539F\u6587",en:"Original Text",zh_TW:"\u539F\u6587",ja:"\u539F\u6587",ko:"\uC6D0\uBCF8 \uD14D\uC2A4\uD2B8"},favorite_words:{zh:"\u6536\u85CF\u8BCD\u6C47",en:"Favorite Words",zh_TW:"\u6536\u85CF\u8A5E\u5F59",ja:"\u304A\u6C17\u306B\u5165\u308A\u5358\u8A9E",ko:"\uC990\uACA8\uCC3E\uB294 \uB2E8\uC5B4"},touch_setting:{zh:"\u89E6\u5C4F\u8BBE\u7F6E",en:"Touch Setting",zh_TW:"\u89F8\u63A7\u8A2D\u5B9A",ja:"\u30BF\u30C3\u30C1\u8A2D\u5B9A",ko:"\uD130\uCE58 \uC124\uC815"},touch_translate_shortcut:{zh:"\u89E6\u5C4F\u7FFB\u8BD1\u5FEB\u6377\u65B9\u5F0F (\u652F\u6301\u591A\u9009)",en:"Touch Translate Shortcut (multiple supported)",zh_TW:"\u89F8\u63A7\u7FFB\u8B6F\u6377\u5F91 (\u652F\u63F4\u591A\u9078)",ja:"\u30BF\u30C3\u30C1\u7FFB\u8A33\u30B7\u30E7\u30FC\u30C8\u30AB\u30C3\u30C8 (\u8907\u6570\u9078\u629E\u53EF)",ko:"\uD130\uCE58 \uBC88\uC5ED \uB2E8\uCD95\uD0A4 (\uB2E4\uC911 \uC120\uD0DD \uC9C0\uC6D0)"},touch_tap_0:{zh:"\u7981\u7528",en:"Disable",zh_TW:"\u505C\u7528",ja:"\u7121\u52B9",ko:"\uBE44\uD65C\uC131\uD654"},touch_tap_2:{zh:"\u53CC\u6307\u8F7B\u89E6",en:"Two finger tap",zh_TW:"\u96D9\u6307\u8F15\u89F8",ja:"2\u672C\u6307\u30BF\u30C3\u30D7",ko:"\uB450 \uC190\uAC00\uB77D \uD0ED"},touch_tap_3:{zh:"\u4E09\u6307\u8F7B\u89E6",en:"Three finger tap",zh_TW:"\u4E09\u6307\u8F15\u89F8",ja:"3\u672C\u6307\u30BF\u30C3\u30D7",ko:"\uC138 \uC190\uAC00\uB77D \uD0ED"},touch_tap_4:{zh:"\u56DB\u6307\u8F7B\u89E6",en:"Four finger tap",zh_TW:"\u56DB\u6307\u8F15\u89F8",ja:"4\u672C\u6307\u30BF\u30C3\u30D7",ko:"\uB124 \uC190\uAC00\uB77D \uD0ED"},touch_tap_5:{zh:"\u5355\u6307\u53CC\u51FB",en:"Double-click",zh_TW:"\u55AE\u6307\u96D9\u64CA",ja:"\u30C0\u30D6\u30EB\u30AF\u30EA\u30C3\u30AF",ko:"\uB354\uBE14 \uD074\uB9AD"},touch_tap_6:{zh:"\u5355\u6307\u4E09\u51FB",en:"Triple-click",zh_TW:"\u55AE\u6307\u4E09\u64CA",ja:"\u30C8\u30EA\u30D7\u30EB\u30AF\u30EA\u30C3\u30AF",ko:"\uD2B8\uB9AC\uD50C \uD074\uB9AD"},touch_tap_7:{zh:"\u53CC\u6307\u53CC\u51FB",en:"Two-finger double-click",zh_TW:"\u96D9\u6307\u96D9\u64CA",ja:"2\u672C\u6307\u30C0\u30D6\u30EB\u30AF\u30EA\u30C3\u30AF",ko:"\uB450 \uC190\uAC00\uB77D \uB354\uBE14 \uD074\uB9AD"},translate_blacklist:{zh:"\u7981\u7528\u7FFB\u8BD1\u540D\u5355",en:"Translate Blacklist",zh_TW:"\u505C\u7528\u7FFB\u8B6F\u540D\u55AE",ja:"\u7FFB\u8A33\u30D6\u30E9\u30C3\u30AF\u30EA\u30B9\u30C8",ko:"\uBC88\uC5ED \uBE14\uB799\uB9AC\uC2A4\uD2B8"},disabled_orilist:{zh:"\u7981\u7528Origin\u540D\u5355",en:"Disabled Origin List",zh_TW:"\u505C\u7528 Origin \u540D\u55AE",ja:"\u7121\u52B9\u5316Origin\u30EA\u30B9\u30C8",ko:"\uBE44\uD65C\uC131\uD654\uB41C Origin \uBAA9\uB85D"},disabled_csplist:{zh:"\u7981\u7528CSP\u540D\u5355",en:"Disabled CSP List",zh_TW:"\u505C\u7528 CSP \u540D\u55AE",ja:"\u7121\u52B9\u5316CSP\u30EA\u30B9\u30C8",ko:"\uBE44\uD65C\uC131\uD654\uB41C CSP \uBAA9\uB85D"},disabled_csplist_helper:{zh:"3\u3001\u901A\u8FC7\u8C03\u6574CSP\u7B56\u7565\uFF0C\u4F7F\u5F97\u67D0\u4E9B\u9875\u9762\u80FD\u591F\u6CE8\u5165JS/CSS/Media\uFF0C\u8BF7\u8C28\u614E\u4F7F\u7528\uFF0C\u9664\u975E\u60A8\u5DF2\u77E5\u6653\u76F8\u5173\u98CE\u9669\u3002",en:"3. By adjusting the CSP policy, some pages can inject JS/CSS/Media. Please use it with caution unless you are aware of the related risks.",zh_TW:"3. \u900F\u904E\u8ABF\u6574 CSP \u653F\u7B56\uFF0C\u4F7F\u90E8\u5206\u9801\u9762\u53EF\u6CE8\u5165 JS/CSS/Media\u3002\u8ACB\u8B39\u614E\u4F7F\u7528\uFF0C\u9664\u975E\u60A8\u5DF2\u77E5\u6089\u76F8\u95DC\u98A8\u96AA\u3002",ja:"3. CSP\u30DD\u30EA\u30B7\u30FC\u3092\u8ABF\u6574\u3059\u308B\u3053\u3068\u306B\u3088\u308A\u3001\u4E00\u90E8\u306E\u30DA\u30FC\u30B8\u3067JS/CSS/Media\u306E\u6CE8\u5165\u304C\u53EF\u80FD\u306B\u306A\u308A\u307E\u3059\u3002\u95A2\u9023\u3059\u308B\u30EA\u30B9\u30AF\u3092\u627F\u77E5\u3057\u3066\u3044\u306A\u3044\u9650\u308A\u3001\u614E\u91CD\u306B\u4F7F\u7528\u3057\u3066\u304F\u3060\u3055\u3044\u3002",ko:"3. CSP \uC815\uCC45\uC744 \uC870\uC815\uD558\uC5EC \uC77C\uBD80 \uD398\uC774\uC9C0\uC5D0\uC11C JS/CSS/Media\uB97C \uC8FC\uC785\uD560 \uC218 \uC788\uC2B5\uB2C8\uB2E4. \uAD00\uB828\uB41C \uC704\uD5D8\uC744 \uC778\uC9C0\uD558\uACE0 \uC788\uB294 \uACBD\uC6B0\uAC00 \uC544\uB2C8\uB77C\uBA74 \uC8FC\uC758\uD574\uC11C \uC0AC\uC6A9\uD558\uC2ED\uC2DC\uC624."},skip_langs:{zh:"\u4E0D\u7FFB\u8BD1\u7684\u8BED\u8A00",en:"Disable Languages",zh_TW:"\u4E0D\u7FFB\u8B6F\u7684\u8A9E\u8A00",ja:"\u7FFB\u8A33\u3057\u306A\u3044\u8A00\u8A9E",ko:"\uBC88\uC5ED\uD558\uC9C0 \uC54A\uC744 \uC5B8\uC5B4"},skip_langs_helper:{zh:"\u6B64\u529F\u80FD\u4F9D\u8D56\u51C6\u786E\u7684\u8BED\u8A00\u68C0\u6D4B\uFF0C\u5EFA\u8BAE\u542F\u7528\u8FDC\u7A0B\u8BED\u8A00\u68C0\u6D4B\u3002",en:"This feature relies on accurate language detection. It is recommended to enable remote language detection.",zh_TW:"\u6B64\u529F\u80FD\u4EF0\u8CF4\u6E96\u78BA\u7684\u8A9E\u8A00\u5075\u6E2C\uFF0C\u5EFA\u8B70\u555F\u7528\u9060\u7AEF\u8A9E\u8A00\u5075\u6E2C\u3002",ja:"\u3053\u306E\u6A5F\u80FD\u306F\u6B63\u78BA\u306A\u8A00\u8A9E\u691C\u51FA\u306B\u4F9D\u5B58\u3057\u3066\u3044\u308B\u305F\u3081\u3001\u30EA\u30E2\u30FC\u30C8\u8A00\u8A9E\u691C\u51FA\u3092\u6709\u52B9\u306B\u3059\u308B\u3053\u3068\u3092\u304A\u52E7\u3081\u3057\u307E\u3059\u3002",ko:"\uC774 \uAE30\uB2A5\uC740 \uC815\uD655\uD55C \uC5B8\uC5B4 \uAC10\uC9C0\uC5D0 \uC758\uC874\uD558\uBBC0\uB85C \uC6D0\uACA9 \uC5B8\uC5B4 \uAC10\uC9C0\uB97C \uD65C\uC131\uD654\uD558\uB294 \uAC83\uC774 \uC88B\uC2B5\uB2C8\uB2E4."},context_menus:{zh:"\u53F3\u952E\u83DC\u5355",en:"Context Menus",zh_TW:"\u53F3\u9375\u9078\u55AE",ja:"\u30B3\u30F3\u30C6\u30AD\u30B9\u30C8\u30E1\u30CB\u30E5\u30FC",ko:"\uCEE8\uD14D\uC2A4\uD2B8 \uBA54\uB274"},hide_context_menus:{zh:"\u9690\u85CF\u53F3\u952E\u83DC\u5355",en:"Hide Context Menus",zh_TW:"\u96B1\u85CF\u53F3\u9375\u9078\u55AE",ja:"\u30B3\u30F3\u30C6\u30AD\u30B9\u30C8\u30E1\u30CB\u30E5\u30FC\u3092\u96A0\u3059",ko:"\uCEE8\uD14D\uC2A4\uD2B8 \uBA54\uB274 \uC228\uAE30\uAE30"},simple_context_menus:{zh:"\u7B80\u5355\u53F3\u952E\u83DC\u5355",en:"Simple_context_menus Context Menus",zh_TW:"\u7C21\u6613\u53F3\u9375\u9078\u55AE",ja:"\u30B7\u30F3\u30D7\u30EB\u30B3\u30F3\u30C6\u30AD\u30B9\u30C8\u30E1\u30CB\u30E5\u30FC",ko:"\uAC04\uB2E8\uD55C \uCEE8\uD14D\uC2A4\uD2B8 \uBA54\uB274"},secondary_context_menus:{zh:"\u4E8C\u7EA7\u53F3\u952E\u83DC\u5355",en:"Secondary Context Menus",zh_TW:"\u6B21\u7D1A\u53F3\u9375\u9078\u55AE",ja:"\u30B5\u30D6\u30B3\u30F3\u30C6\u30AD\u30B9\u30C8\u30E1\u30CB\u30E5\u30FC",ko:"\uBCF4\uC870 \uCEE8\uD14D\uC2A4\uD2B8 \uBA54\uB274"},mulkeys_help:{zh:"\u652F\u6301\u7528\u6362\u884C\u6216\u82F1\u6587\u9017\u53F7\u201C,\u201D\u5206\u9694\uFF0C\u8F6E\u8BE2\u8C03\u7528\u3002",en:"Supports polling calls separated by newlines or English commas \",\".",zh_TW:"\u652F\u63F4\u4EE5\u63DB\u884C\u6216\u82F1\u6587\u9017\u865F\u300C,\u300D\u5206\u9694\uFF0C\u8F2A\u8A62\u547C\u53EB\u3002",ja:"\u6539\u884C\u307E\u305F\u306F\u82F1\u8A9E\u306E\u30B3\u30F3\u30DE\u300C,\u300D\u3067\u533A\u5207\u3063\u3066\u30DD\u30FC\u30EA\u30F3\u30B0\u30B3\u30FC\u30EB\u3092\u30B5\u30DD\u30FC\u30C8\u3057\u307E\u3059\u3002",ko:"\uC904\uBC14\uAFC8 \uB610\uB294 \uC601\uC5B4 \uC27C\uD45C \",\"\uB85C \uAD6C\uBD84\uB41C \uD3F4\uB9C1 \uD638\uCD9C\uC744 \uC9C0\uC6D0\uD569\uB2C8\uB2E4."},translation_element_tag:{zh:"\u8BD1\u6587\u5143\u7D20\u6807\u7B7E",en:"Translation Element Tag",zh_TW:"\u8B6F\u6587\u5143\u7D20\u6A19\u7C64",ja:"\u7FFB\u8A33\u8981\u7D20\u30BF\u30B0",ko:"\uBC88\uC5ED \uC694\uC18C \uD0DC\uADF8"},show_only_translations:{zh:"\u4EC5\u663E\u793A\u8BD1\u6587",en:"Show Only Translations",zh_TW:"\u50C5\u986F\u793A\u8B6F\u6587",ja:"\u7FFB\u8A33\u306E\u307F\u8868\u793A",ko:"\uBC88\uC5ED\uB9CC \uBCF4\uAE30"},show_only_translations_help:{zh:"\u975E\u5B8C\u7F8E\u5B9E\u73B0\uFF0C\u67D0\u4E9B\u9875\u9762\u53EF\u80FD\u6709\u6837\u5F0F\u7B49\u95EE\u9898\u3002",en:"It is not a perfect implementation and some pages may have style issues.",zh_TW:"\u6B64\u70BA\u975E\u5B8C\u7F8E\u5BE6\u4F5C\uFF0C\u90E8\u5206\u9801\u9762\u53EF\u80FD\u51FA\u73FE\u6A23\u5F0F\u7B49\u554F\u984C\u3002",ja:"\u5B8C\u5168\u306A\u5B9F\u88C5\u3067\u306F\u306A\u304F\u3001\u4E00\u90E8\u306E\u30DA\u30FC\u30B8\u3067\u30B9\u30BF\u30A4\u30EB\u306E\u554F\u984C\u304C\u767A\u751F\u3059\u308B\u53EF\u80FD\u6027\u304C\u3042\u308A\u307E\u3059\u3002",ko:"\uC644\uBCBD\uD55C \uAD6C\uD604\uC774 \uC544\uB2C8\uBA70 \uC77C\uBD80 \uD398\uC774\uC9C0\uC5D0\uC11C \uC2A4\uD0C0\uC77C \uBB38\uC81C\uAC00 \uBC1C\uC0DD\uD560 \uC218 \uC788\uC2B5\uB2C8\uB2E4."},translate_page_title:{zh:"\u662F\u5426\u7FFB\u8BD1\u9875\u9762\u6807\u9898",en:"Translate Page Title",zh_TW:"\u662F\u5426\u7FFB\u8B6F\u9801\u9762\u6A19\u984C",ja:"\u30DA\u30FC\u30B8\u30BF\u30A4\u30C8\u30EB\u3092\u7FFB\u8A33\u3059\u308B",ko:"\uD398\uC774\uC9C0 \uC81C\uBAA9 \uBC88\uC5ED"},more:{zh:"\u66F4\u591A",en:"More",zh_TW:"\u66F4\u591A",ja:"\u3082\u3063\u3068\u898B\u308B",ko:"\uB354\uBCF4\uAE30"},less:{zh:"\u66F4\u5C11",en:"Less",zh_TW:"\u66F4\u5C11",ja:"\u5C11\u306A\u304F",ko:"\uC904\uC774\uAE30"},fixer_selector:{zh:"\u7F51\u9875\u4FEE\u590D\u9009\u62E9\u5668",en:"Fixer Selector",zh_TW:"\u7DB2\u9801\u4FEE\u5FA9\u9078\u64C7\u5668",ja:"Web\u4FEE\u6B63\u30BB\u30EC\u30AF\u30BF",ko:"\uC6F9\uD398\uC774\uC9C0 \uC218\uC815 \uC120\uD0DD\uC790"},reg_niutrans:{zh:"\u83B7\u53D6\u5C0F\u725B\u7FFB\u8BD1\u5BC6\u94A5\u3010\u7B80\u7EA6\u7FFB\u8BD1\u4E13\u5C5E\u65B0\u7528\u6237\u6CE8\u518C\u8D60\u9001300\u4E07\u5B57\u7B26\u3011",en:"Get NiuTrans APIKey [KISS Translator Exclusive New User Registration Free 3 Million Characters]",zh_TW:"\u53D6\u5F97\u5C0F\u725B\u7FFB\u8B6F\u91D1\u9470\u3010\u7C21\u7D04\u7FFB\u8B6F\u5C08\u5C6C\u65B0\u7528\u6236\u8A3B\u518A\u8D08\u9001 300 \u842C\u5B57\u5143\u3011",ja:"NiuTrans API\u30AD\u30FC\u3092\u53D6\u5F97 [KISS\u7FFB\u8A33 \u5C02\u7528 \u65B0\u898F\u30E6\u30FC\u30B6\u30FC\u767B\u9332\u3067300\u4E07\u6587\u5B57\u7121\u6599]",ko:"NiuTrans API \uD0A4 \uBC1B\uAE30 [KISS \uBC88\uC5ED\uAE30 \uC2E0\uADDC \uC0AC\uC6A9\uC790 \uB4F1\uB85D \uC2DC 300\uB9CC \uC790 \uBB34\uB8CC \uC81C\uACF5]"},trigger_mode:{zh:"\u89E6\u53D1\u65B9\u5F0F",en:"Trigger Mode",zh_TW:"\u89F8\u767C\u65B9\u5F0F",ja:"\u30C8\u30EA\u30AC\u30FC\u30E2\u30FC\u30C9",ko:"\uD2B8\uB9AC\uAC70 \uBAA8\uB4DC"},trigger_click:{zh:"\u70B9\u51FB\u89E6\u53D1",en:"Click Trigger",zh_TW:"\u9EDE\u64CA\u89F8\u767C",ja:"\u30AF\u30EA\u30C3\u30AF\u30C8\u30EA\u30AC\u30FC",ko:"\uD074\uB9AD \uD2B8\uB9AC\uAC70"},trigger_hover:{zh:"\u9F20\u6807\u60AC\u505C\u89E6\u53D1",en:"Hover Trigger",zh_TW:"\u6ED1\u9F20\u61F8\u505C\u89F8\u767C",ja:"\u30DB\u30D0\u30FC\u30C8\u30EA\u30AC\u30FC",ko:"\uD638\uBC84 \uD2B8\uB9AC\uAC70"},trigger_select:{zh:"\u9009\u4E2D\u89E6\u53D1",en:"Select Trigger",zh_TW:"\u9078\u53D6\u89F8\u767C",ja:"\u9078\u629E\u30C8\u30EA\u30AC\u30FC",ko:"\uC120\uD0DD \uD2B8\uB9AC\uAC70"},extend_styles:{zh:"\u9644\u52A0\u6837\u5F0F",en:"Extend Styles",zh_TW:"\u9644\u52A0\u6A23\u5F0F",ja:"\u62E1\u5F35\u30B9\u30BF\u30A4\u30EB",ko:"\uD655\uC7A5 \uC2A4\uD0C0\uC77C"},custom_option:{zh:"\u81EA\u5B9A\u4E49\u9009\u9879",en:"Custom Option",zh_TW:"\u81EA\u8A02\u9078\u9805",ja:"\u30AB\u30B9\u30BF\u30E0\u30AA\u30D7\u30B7\u30E7\u30F3",ko:"\uC0AC\uC6A9\uC790 \uC9C0\uC815 \uC635\uC158"},translate_selected_text:{zh:"\u7FFB\u8BD1\u9009\u4E2D\u6587\u5B57",en:"Translate Selected Text",zh_TW:"\u7FFB\u8B6F\u9078\u53D6\u6587\u5B57",ja:"\u9078\u629E\u3057\u305F\u30C6\u30AD\u30B9\u30C8\u3092\u7FFB\u8A33",ko:"\uC120\uD0DD\uD55C \uD14D\uC2A4\uD2B8 \uBC88\uC5ED"},toggle_style:{zh:"\u5207\u6362\u6837\u5F0F",en:"Toggle Style",zh_TW:"\u5207\u63DB\u6A23\u5F0F",ja:"\u30B9\u30BF\u30A4\u30EB\u3092\u5207\u308A\u66FF\u3048",ko:"\uC2A4\uD0C0\uC77C \uC804\uD658"},open_menu:{zh:"\u6253\u5F00\u5F39\u7A97\u83DC\u5355",en:"Open Popup Menu",zh_TW:"\u958B\u555F\u5F48\u7A97\u9078\u55AE",ja:"\u30DD\u30C3\u30D7\u30A2\u30C3\u30D7\u30E1\u30CB\u30E5\u30FC\u3092\u958B\u304F",ko:"\uD31D\uC5C5 \uBA54\uB274 \uC5F4\uAE30"},open_setting:{zh:"\u6253\u5F00\u8BBE\u7F6E",en:"Open Setting",zh_TW:"\u958B\u555F\u8A2D\u5B9A",ja:"\u8A2D\u5B9A\u3092\u958B\u304F",ko:"\uC124\uC815 \uC5F4\uAE30"},follow_selection:{zh:"\u7FFB\u8BD1\u6846\u8DDF\u968F\u9009\u4E2D\u6587\u672C",en:"Transbox Follow Selection",zh_TW:"\u7FFB\u8B6F\u6846\u8DDF\u96A8\u9078\u53D6\u6587\u5B57",ja:"\u7FFB\u8A33\u30DC\u30C3\u30AF\u30B9\u3092\u9078\u629E\u7BC4\u56F2\u306B\u8FFD\u5F93",ko:"\uBC88\uC5ED \uC0C1\uC790\uAC00 \uC120\uD0DD \uD56D\uBAA9 \uB530\uB77C\uAC00\uAE30"},tranbox_auto_height:{zh:"\u7FFB\u8BD1\u6846\u81EA\u9002\u5E94\u9AD8\u5EA6",en:"Translation box adaptive height",zh_TW:"\u7FFB\u8B6F\u6846\u81EA\u9069\u61C9\u9AD8\u5EA6",ja:"\u7FFB\u8A33\u30DC\u30C3\u30AF\u30B9\u306E\u9AD8\u3055\u81EA\u52D5\u8ABF\u6574",ko:"\uBC88\uC5ED \uC0C1\uC790 \uB192\uC774 \uC790\uB3D9 \uC870\uC808"},translate_start_hook:{zh:"\u7FFB\u8BD1\u5F00\u59CB\u94A9\u5B50\u51FD\u6570",en:"Translate Start Hook",zh_TW:"\u7FFB\u8B6F\u958B\u59CB Hook",ja:"\u7FFB\u8A33\u958B\u59CB\u30D5\u30C3\u30AF",ko:"\uBC88\uC5ED \uC2DC\uC791 \uD6C4\uD06C"},translate_start_hook_helper:{zh:"\u7FFB\u8BD1\u524D\u65F6\u8FD0\u884C\uFF0C\u5165\u53C2\u4E3A\uFF1A {text,\n fromLang,\n toLang,\n apiSetting,\n docInfo,\n glossary,}",en:"Run before translation, input parameters are: {text,\n fromLang,\n toLang,\n apiSetting,\n docInfo,\n glossary,}",zh_TW:"\u7FFB\u8B6F\u524D\u6642\u904B\u884C\uFF0C\u5165\u53C3\u70BA\uFF1A {text,\n fromLang,\n toLang,\n apiSetting,\n docInfo,\n glossary,}",ja:"\u7FFB\u8A33\u524D\u306B\u5B9F\u884C\u3001\u5165\u529B\u30D1\u30E9\u30E1\u30FC\u30BF: {text,\n fromLang,\n toLang,\n apiSetting,\n docInfo,\n glossary,}",ko:"\uBC88\uC5ED \uC804 \uC2E4\uD589, \uC785\uB825 \uB9E4\uAC1C\uBCC0\uC218: {text,\n fromLang,\n toLang,\n apiSetting,\n docInfo,\n glossary,}"},translate_end_hook:{zh:"\u7FFB\u8BD1\u5B8C\u6210\u94A9\u5B50\u51FD\u6570",en:"Translate End Hook",zh_TW:"\u7FFB\u8B6F\u5B8C\u6210 Hook",ja:"\u7FFB\u8A33\u5B8C\u4E86\u30D5\u30C3\u30AF",ko:"\uBC88\uC5ED \uC644\uB8CC \uD6C4\uD06C"},translate_end_hook_helper:{zh:"\u7FFB\u8BD1\u5B8C\u6210\u65F6\u8FD0\u884C\uFF0C\u5165\u53C2\u4E3A\uFF1A ({hostNode, parentNode, nodes, wrapperNode, innerNode})",en:"Run when translation is complete, input parameters are: ({hostNode, parentNode, nodes, wrapperNode, innerNode})",zh_TW:"\u7FFB\u8B6F\u5B8C\u6210\u6642\u904B\u884C\uFF0C\u5165\u53C3\u70BA\uFF1A ({hostNode, parentNode, nodes, wrapperNode, innerNode})",ja:"\u7FFB\u8A33\u5B8C\u4E86\u6642\u306B\u5B9F\u884C\u3001\u5165\u529B\u30D1\u30E9\u30E1\u30FC\u30BF: ({hostNode, parentNode, nodes, wrapperNode, innerNode})",ko:"\uBC88\uC5ED \uC644\uB8CC \uC2DC \uC2E4\uD589, \uC785\uB825 \uB9E4\uAC1C\uBCC0\uC218: ({hostNode, parentNode, nodes, wrapperNode, innerNode})"},translate_remove_hook:{zh:"\u7FFB\u8BD1\u79FB\u9664\u94A9\u5B50\u51FD\u6570",en:"Translate Removed Hook",zh_TW:"\u7FFB\u8B6F\u79FB\u9664 Hook",ja:"\u7FFB\u8A33\u524A\u9664\u30D5\u30C3\u30AF",ko:"\uBC88\uC5ED \uC81C\uAC70 \uD6C4\uD06C"},translate_remove_hook_helper:{zh:"\u7FFB\u8BD1\u79FB\u9664\u65F6\u8FD0\u884C\uFF0C\u5165\u53C2\u4E3A\uFF1A \u7FFB\u8BD1\u8282\u70B9\u3002",en:"Run when translation is removed, the input parameters are: translation node.",zh_TW:"\u79FB\u9664\u7FFB\u8B6F\u6642\u57F7\u884C\uFF0C\u5165\u53C3\u70BA\uFF1A\u7FFB\u8B6F\u7BC0\u9EDE\u3002",ja:"\u7FFB\u8A33\u524A\u9664\u6642\u306B\u5B9F\u884C\u3001\u5165\u529B\u30D1\u30E9\u30E1\u30FC\u30BF: \u7FFB\u8A33\u30CE\u30FC\u30C9\u3002",ko:"\uBC88\uC5ED \uC81C\uAC70 \uC2DC \uC2E4\uD589, \uC785\uB825 \uB9E4\uAC1C\uBCC0\uC218: \uBC88\uC5ED \uB178\uB4DC."},english_dict:{zh:"\u82F1\u6587\u8BCD\u5178",en:"English Dictionary",zh_TW:"\u82F1\u6587\u5B57\u5178",ja:"\u82F1\u8A9E\u8F9E\u66F8",ko:"\uC601\uC5B4 \uC0AC\uC804"},english_suggest:{zh:"\u82F1\u6587\u5EFA\u8BAE",en:"English Suggest",zh_TW:"\u82F1\u6587\u5EFA\u8B70",ja:"\u82F1\u8A9E\u30B5\u30B8\u30A7\u30B9\u30C8",ko:"\uC601\uC5B4 \uC81C\uC548"},api_name:{zh:"\u63A5\u53E3\u540D\u79F0",en:"API Name",zh_TW:"\u4ECB\u9762\u540D\u7A31",ja:"API\u540D",ko:"API \uC774\uB984"},is_disabled:{zh:"\u662F\u5426\u7981\u7528",en:"Is Disabled",zh_TW:"\u662F\u5426\u505C\u7528",ja:"\u7121\u52B9\u306B\u3059\u308B",ko:"\uBE44\uD65C\uC131\uD654 \uC5EC\uBD80"},translate_selected:{zh:"\u662F\u5426\u542F\u7528\u5212\u8BCD\u7FFB\u8BD1",en:"If translate selected",zh_TW:"\u662F\u5426\u555F\u7528\u5283\u8A5E\u7FFB\u8B6F",ja:"\u9078\u629E\u7BC4\u56F2\u306E\u7FFB\u8A33\u3092\u6709\u52B9\u306B\u3059\u308B",ko:"\uC120\uD0DD \uBC88\uC5ED \uC0AC\uC6A9 \uC5EC\uBD80"},use_batch_fetch:{zh:"\u662F\u5426\u805A\u5408\u53D1\u9001\u7FFB\u8BD1\u8BF7\u6C42",en:"Whether to aggregate and send translation requests",zh_TW:"\u662F\u5426\u805A\u5408\u767C\u9001\u7FFB\u8B6F\u8ACB\u6C42",ja:"\u7FFB\u8A33\u30EA\u30AF\u30A8\u30B9\u30C8\u3092\u307E\u3068\u3081\u3066\u9001\u4FE1",ko:"\uBC88\uC5ED \uC694\uCCAD \uC77C\uAD04 \uC804\uC1A1 \uC5EC\uBD80"},batch_interval:{zh:"\u805A\u5408\u8BF7\u6C42\u7B49\u5F85\u65F6\u95F4(100-10000)",en:"Aggregation request waiting time (100-10000)",zh_TW:"\u805A\u5408\u8ACB\u6C42\u7B49\u5F85\u6642\u9593(100-10000)",ja:"\u4E00\u62EC\u30EA\u30AF\u30A8\u30B9\u30C8\u306E\u5F85\u6A5F\u6642\u9593(100-10000)",ko:"\uC77C\uAD04 \uC694\uCCAD \uB300\uAE30 \uC2DC\uAC04(100-10000)"},batch_size:{zh:"\u805A\u5408\u8BF7\u6C42\u6700\u5927\u6BB5\u843D\u6570(1-100)",en:"Maximum number of paragraphs in an aggregation request (1-100)",zh_TW:"\u805A\u5408\u8ACB\u6C42\u6700\u5927\u6BB5\u843D\u6578(1-100)",ja:"\u4E00\u62EC\u30EA\u30AF\u30A8\u30B9\u30C8\u306E\u6700\u5927\u6BB5\u843D\u6570(1-100)",ko:"\uC77C\uAD04 \uC694\uCCAD \uCD5C\uB300 \uB2E8\uB77D \uC218(1-100)"},batch_length:{zh:"\u805A\u5408\u8BF7\u6C42\u6700\u5927\u6587\u672C\u957F\u5EA6(1000-100000)",en:"Maximum text length for aggregation requests (1000-100000)",zh_TW:"\u805A\u5408\u8ACB\u6C42\u6700\u5927\u6587\u5B57\u9577\u5EA6(1000-100000)",ja:"\u4E00\u62EC\u30EA\u30AF\u30A8\u30B9\u30C8\u306E\u6700\u5927\u30C6\u30AD\u30B9\u30C8\u9577(1000-100000)",ko:"\uC77C\uAD04 \uC694\uCCAD \uCD5C\uB300 \uD14D\uC2A4\uD2B8 \uAE38\uC774(1000-100000)"},use_context:{zh:"\u662F\u5426\u542F\u7528\u667A\u80FD\u4E0A\u4E0B\u6587",en:"Whether to enable AI context",zh_TW:"\u662F\u5426\u555F\u7528\u667A\u6167\u4E0A\u4E0B\u6587",ja:"AI\u30B3\u30F3\u30C6\u30AD\u30B9\u30C8\u3092\u6709\u52B9\u306B\u3059\u308B",ko:"AI \uCEE8\uD14D\uC2A4\uD2B8 \uD65C\uC131\uD654 \uC5EC\uBD80"},context_size:{zh:"\u4E0A\u4E0B\u6587\u4F1A\u8BDD\u6570\u91CF(1-20)",en:"Number of context sessions(1-20)",zh_TW:"\u4E0A\u4E0B\u6587\u6703\u8A71\u6578\u91CF(1-20)",ja:"\u30B3\u30F3\u30C6\u30AD\u30B9\u30C8\u30BB\u30C3\u30B7\u30E7\u30F3\u6570(1-20)",ko:"\uCEE8\uD14D\uC2A4\uD2B8 \uC138\uC158 \uC218(1-20)"},auto_scan_page:{zh:"\u81EA\u52A8\u626B\u63CF\u9875\u9762",en:"Auto scan page",zh_TW:"\u81EA\u52D5\u6383\u63CF\u9801\u9762",ja:"\u30DA\u30FC\u30B8\u3092\u81EA\u52D5\u30B9\u30AD\u30E3\u30F3",ko:"\uD398\uC774\uC9C0 \uC790\uB3D9 \uC2A4\uCE94"},has_rich_text:{zh:"\u542F\u7528\u5BCC\u6587\u672C\u7FFB\u8BD1",en:"Enable rich text translation",zh_TW:"\u555F\u7528\u5BCC\u6587\u672C\u7FFB\u8B6F",ja:"\u30EA\u30C3\u30C1\u30C6\u30AD\u30B9\u30C8\u7FFB\u8A33\u3092\u6709\u52B9\u306B\u3059\u308B",ko:"\uB9AC\uCE58 \uD14D\uC2A4\uD2B8 \uBC88\uC5ED \uD65C\uC131\uD654"},has_shadowroot:{zh:"\u626B\u63CFShadowroot",en:"Scan Shadowroot",zh_TW:"\u6383\u63CFShadowroot",ja:"Shadowroot\u3092\u30B9\u30AD\u30E3\u30F3",ko:"Shadowroot \uC2A4\uCE94"},mousehover_translate:{zh:"\u9F20\u6807\u60AC\u505C\u7FFB\u8BD1",en:"Mouseover Translation",zh_TW:"\u6ED1\u9F20\u61F8\u505C\u7FFB\u8B6F",ja:"\u30DE\u30A6\u30B9\u30AA\u30FC\u30D0\u30FC\u7FFB\u8A33",ko:"\uB9C8\uC6B0\uC2A4\uC624\uBC84 \uBC88\uC5ED"},use_mousehover_translation:{zh:"\u542F\u7528\u9F20\u6807\u60AC\u505C\u7FFB\u8BD1",en:"Enable mouseover translation",zh_TW:"\u555F\u7528\u6ED1\u9F20\u61F8\u505C\u7FFB\u8B6F",ja:"\u30DE\u30A6\u30B9\u30AA\u30FC\u30D0\u30FC\u7FFB\u8A33\u3092\u6709\u52B9\u306B\u3059\u308B",ko:"\uB9C8\uC6B0\uC2A4\uC624\uBC84 \uBC88\uC5ED \uD65C\uC131\uD654"},selected_translation_alert:{zh:"\u5212\u8BCD\u7FFB\u8BD1\u7684\u5F00\u542F\u548C\u5173\u95ED\u8BF7\u5230\u201C\u89C4\u5219\u8BBE\u7F6E\u201D\u91CC\u9762\u8BBE\u7F6E\u3002",en:"To turn selected translation on or off, please go to \"Rule Settings\".",zh_TW:"\u5283\u8A5E\u7FFB\u8B6F\u7684\u958B\u555F\u548C\u95DC\u9589\u8ACB\u5230\u300C\u898F\u5247\u8A2D\u5B9A\u300D\u88E1\u9762\u8A2D\u5B9A\u3002",ja:"\u9078\u629E\u7FFB\u8A33\u306E\u30AA\u30F3/\u30AA\u30D5\u306F\u300C\u30EB\u30FC\u30EB\u8A2D\u5B9A\u300D\u3067\u884C\u3063\u3066\u304F\u3060\u3055\u3044\u3002",ko:"\uC120\uD0DD \uBC88\uC5ED \uD65C\uC131\uD654/\uBE44\uD65C\uC131\uD654\uB294 \"\uADDC\uCE59 \uC124\uC815\"\uC5D0\uC11C \uD558\uC2ED\uC2DC\uC624."},mousehover_key_help:{zh:"\u5F53\u5FEB\u6377\u952E\u7F6E\u7A7A\u65F6\u8868\u793A\u9F20\u6807\u61F8\u505C\u76F4\u63A5\u7FFB\u8BD1",en:"When the shortcut key is empty, it means that the mouse hovers to translate directly",zh_TW:"\u7576\u5FEB\u6377\u9375\u7F6E\u7A7A\u6642\u8868\u793A\u6ED1\u9F20\u61F8\u505C\u76F4\u63A5\u7FFB\u8B6F",ja:"\u30B7\u30E7\u30FC\u30C8\u30AB\u30C3\u30C8\u30AD\u30FC\u304C\u7A7A\u306E\u5834\u5408\u3001\u30DE\u30A6\u30B9\u30AA\u30FC\u30D0\u30FC\u3067\u76F4\u63A5\u7FFB\u8A33\u3057\u307E\u3059",ko:"\uB2E8\uCD95\uD0A4\uAC00 \uBE44\uC5B4 \uC788\uC73C\uBA74 \uB9C8\uC6B0\uC2A4\uC624\uBC84 \uC2DC \uBC14\uB85C \uBC88\uC5ED\uD569\uB2C8\uB2E4"},autoscan_alt:{zh:"\u81EA\u52A8\u626B\u63CF",en:"Auto Scan",zh_TW:"\u81EA\u52D5\u6383\u63CF",ja:"\u81EA\u52D5\u30B9\u30AD\u30E3\u30F3",ko:"\uC790\uB3D9 \uC2A4\uCE94"},shadowroot_alt:{zh:"ShadowRoot",en:"ShadowRoot",zh_TW:"ShadowRoot",ja:"ShadowRoot",ko:"ShadowRoot"},richtext_alt:{zh:"\u4FDD\u7559\u5BCC\u6587\u672C",en:"Rich Text",zh_TW:"\u4FDD\u7559\u5BCC\u6587\u672C",ja:"\u30EA\u30C3\u30C1\u30C6\u30AD\u30B9\u30C8",ko:"\uB9AC\uCE58 \uD14D\uC2A4\uD2B8"},transonly_alt:{zh:"\u9690\u85CF\u539F\u6587",en:"Hide Original",zh_TW:"\u96B1\u85CF\u539F\u6587",ja:"\u539F\u6587\u3092\u96A0\u3059",ko:"\uC6D0\uBB38 \uC228\uAE30\uAE30"},confirm_title:{zh:"\u786E\u8BA4",en:"Confirm",zh_TW:"\u78BA\u8A8D",ja:"\u78BA\u8A8D",ko:"\uD655\uC778"},confirm_message:{zh:"\u786E\u5B9A\u64CD\u4F5C\u5417\uFF1F",en:"Are you sure you want to proceed?",zh_TW:"\u78BA\u5B9A\u64CD\u4F5C\u55CE\uFF1F",ja:"\u64CD\u4F5C\u3092\u7D9A\u884C\u3057\u307E\u3059\u304B\uFF1F",ko:"\uACC4\uC18D\uD558\uC2DC\uACA0\uC2B5\uB2C8\uAE4C?"},confirm_action:{zh:"\u786E\u5B9A",en:"Confirm",zh_TW:"\u78BA\u5B9A",ja:"\u78BA\u8A8D",ko:"\uD655\uC778"},cancel_action:{zh:"\u53D6\u6D88",en:"Cancel",zh_TW:"\u53D6\u6D88",ja:"\u30AD\u30E3\u30F3\u30BB\u30EB",ko:"\uCDE8\uC18C"},pls_press_shortcut:{zh:"\u8BF7\u6309\u4E0B\u5FEB\u6377\u952E\u7EC4\u5408",en:"Please press the shortcut key combination",zh_TW:"\u8ACB\u6309\u4E0B\u5FEB\u901F\u9375\u7D44\u5408",ja:"\u30B7\u30E7\u30FC\u30C8\u30AB\u30C3\u30C8\u30AD\u30FC\u3092\u62BC\u3057\u3066\u304F\u3060\u3055\u3044",ko:"\uB2E8\uCD95\uD0A4 \uC870\uD569\uC744 \uB204\uB974\uC138\uC694"},load_setting_err:{zh:"\u6570\u636E\u52A0\u8F7D\u51FA\u9519\uFF0C\u8BF7\u5237\u65B0\u9875\u9762\u6216\u5378\u8F7D\u540E\u91CD\u65B0\u5B89\u88C5\u3002",en:"Please press the shortcut key combination",// 注意:这里的英文和繁体是用户上次错误的拷贝 +zh_TW:"\u8ACB\u6309\u4E0B\u5FEB\u901F\u9375\u7D44\u5408",// 注意:这里的英文和繁体是用户上次错误的拷贝 +ja:"\u30C7\u30FC\u30BF\u8AAD\u307F\u8FBC\u307F\u30A8\u30E9\u30FC\u3002\u30DA\u30FC\u30B8\u3092\u66F4\u65B0\u3059\u308B\u304B\u3001\u30A2\u30F3\u30A4\u30F3\u30B9\u30C8\u30FC\u30EB\u5F8C\u306B\u518D\u30A4\u30F3\u30B9\u30C8\u30FC\u30EB\u3057\u3066\u304F\u3060\u3055\u3044\u3002",// 翻译自 "zh" +ko:"\uB370\uC774\uD130 \uB85C\uB529 \uC624\uB958. \uD398\uC774\uC9C0\uB97C \uC0C8\uB85C \uACE0\uCE58\uAC70\uB098 \uC81C\uAC70 \uD6C4 \uB2E4\uC2DC \uC124\uCE58\uD558\uC138\uC694."// 翻译自 "zh" +},translation_style:{zh:"\u7FFB\u8BD1\u98CE\u683C",en:"Translation style",zh_TW:"\u7FFB\u8B6F\u98A8\u683C",ja:"\u7FFB\u8A33\u30B9\u30BF\u30A4\u30EB",ko:"\uBC88\uC5ED \uC2A4\uD0C0\uC77C"},placeholder:{zh:"\u5360\u4F4D\u7B26",en:"Placeholder",zh_TW:"\u4F54\u4F4D\u7B26",ja:"\u30D7\u30EC\u30FC\u30B9\u30DB\u30EB\u30C0\u30FC",ko:"\uD50C\uB808\uC774\uC2A4\uD640\uB354"},tag_name:{zh:"\u5360\u4F4D\u6807\u7B7E\u540D",en:"Placeholder tag name",zh_TW:"\u4F54\u4F4D\u6A19\u540D",ja:"\u30D7\u30EC\u30FC\u30B9\u30DB\u30EB\u30C0\u30FC\u30BF\u30B0\u540D",ko:"\uD50C\uB808\uC774\uC2A4\uD640\uB354 \uD0DC\uADF8 \uC774\uB984"},system_prompt_helper:{zh:"\u5728\u672A\u5B8C\u5168\u7406\u89E3\u9ED8\u8BA4Prompt\u7684\u60C5\u51B5\u4E0B\uFF0C\u8BF7\u52FF\u968F\u610F\u4FEE\u6539\uFF0C\u5426\u5219\u53EF\u80FD\u65E0\u6CD5\u5DE5\u4F5C\u3002",en:"Do not modify the default prompt without fully understanding it, otherwise it may not work.",zh_TW:"\u5728\u672A\u5B8C\u5168\u7406\u89E3\u9810\u8A2DPrompt\u7684\u60C5\u6CC1\u4E0B\uFF0C\u8ACB\u52FF\u96A8\u610F\u4FEE\u6539\uFF0C\u5426\u5247\u53EF\u80FD\u7121\u6CD5\u904B\u4F5C\u3002",ja:"\u30C7\u30D5\u30A9\u30EB\u30C8\u306E\u30D7\u30ED\u30F3\u30D7\u30C8\u3092\u5B8C\u5168\u306B\u7406\u89E3\u305B\u305A\u306B\u5909\u66F4\u3057\u306A\u3044\u3067\u304F\u3060\u3055\u3044\u3002\u52D5\u4F5C\u3057\u306A\u304F\u306A\u308B\u53EF\u80FD\u6027\u304C\u3042\u308A\u307E\u3059\u3002",ko:"\uAE30\uBCF8 \uD504\uB86C\uD504\uD2B8\uB97C \uC644\uC804\uD788 \uC774\uD574\uD558\uC9C0 \uC54A\uACE0 \uC218\uC815\uD558\uC9C0 \uB9C8\uC2ED\uC2DC\uC624. \uC791\uB3D9\uD558\uC9C0 \uC54A\uC744 \uC218 \uC788\uC2B5\uB2C8\uB2E4."},if_pre_init:{zh:"\u662F\u5426\u9884\u521D\u59CB\u5316",en:"Whether to pre-initialize",zh_TW:"\u662F\u5426\u9810\u521D\u59CB\u5316",ja:"\u4E8B\u524D\u521D\u671F\u5316\u3059\u308B\u304B",ko:"\uC0AC\uC804 \uCD08\uAE30\uD654 \uC5EC\uBD80"},export_old:{zh:"\u5BFC\u51FA\u65E7\u7248",en:"Export old version",zh_TW:"\u532F\u51FA\u820A\u7248",ja:"\u65E7\u30D0\u30FC\u30B8\u30E7\u30F3\u3092\u30A8\u30AF\u30B9\u30DD\u30FC\u30C8",ko:"\uC774\uC804 \uBC84\uC804 \uB0B4\uBCF4\uB0B4\uAE30"},favorite_words_helper:{zh:"\u5BFC\u5165\u8BCD\u6C47\u8BF7\u4F7F\u7528txt\u6587\u4EF6\uFF0C\u6BCF\u4E00\u884C\u4E00\u4E2A\u5355\u8BCD\u3002",en:"To import vocabulary, please use a txt file with one word per line.",zh_TW:"\u532F\u5165\u8A5E\u5F59\u8ACB\u4F7F\u7528txt\u6587\u4EF6\uFF0C\u6BCF\u4E00\u884C\u4E00\u500B\u55AE\u5B57\u3002",ja:"\u5358\u8A9E\u3092\u30A4\u30F3\u30DD\u30FC\u30C8\u3059\u308B\u306B\u306F\u30011\u884C\u306B1\u5358\u8A9E\u305A\u3064\u8A18\u8FF0\u3057\u305Ftxt\u30D5\u30A1\u30A4\u30EB\u3092\u4F7F\u7528\u3057\u3066\u304F\u3060\u3055\u3044\u3002",ko:"\uB2E8\uC5B4\uB97C \uAC00\uC838\uC624\uB824\uBA74 \uD55C \uC904\uC5D0 \uD55C \uB2E8\uC5B4\uC529 .txt \uD30C\uC77C\uC744 \uC0AC\uC6A9\uD558\uC138\uC694."},btn_tip_click_away:{zh:"\u5931\u7126\u9690\u85CF/\u663E\u793A",en:"Loss of focus hide/show",zh_TW:"\u5931\u7126\u96B1\u85CF/\u986F\u793A",ja:"\u30D5\u30A9\u30FC\u30AB\u30B9\u3092\u5931\u3063\u305F\u6642\u306B\u975E\u8868\u793A/\u8868\u793A",ko:"\uD3EC\uCEE4\uC2A4 \uC783\uC744 \uC2DC \uC228\uAE30\uAE30/\uD45C\uC2DC"},btn_tip_follow_selection:{zh:"\u8DDF\u968F/\u56FA\u5B9A\u6A21\u5F0F",en:"Follow/Fixed Mode",zh_TW:"\u8DDF\u96A8/\u56FA\u5B9A\u6A21\u5F0F",ja:"\u8FFD\u5F93/\u56FA\u5B9A\u30E2\u30FC\u30C9",ko:"\uB530\uB77C\uAC00\uAE30/\uACE0\uC815 \uBAA8\uB4DC"},btn_tip_simple_style:{zh:"\u8FF7\u4F60/\u5E38\u89C4\u6A21\u5F0F",en:"Mini/Regular Mode",zh_TW:"\u8FF7\u4F60/\u5E38\u898F\u6A21\u5F0F",ja:"\u30DF\u30CB/\u901A\u5E38\u30E2\u30FC\u30C9",ko:"\uBBF8\uB2C8/\uC77C\uBC18 \uBAA8\uB4DC"},api_placeholder:{zh:"\u5360\u4F4D\u7B26",en:"Placeholder",zh_TW:"\u4F54\u4F4D\u7B26",ja:"\u30D7\u30EC\u30FC\u30B9\u30DB\u30EB\u30C0\u30FC",ko:"\uD50C\uB808\uC774\uC2A4\uD640\uB354"},api_placetag:{zh:"\u5360\u4F4D\u6807\u7B7E",en:"Placeholder tags",zh_TW:"\u4F54\u4F4D\u6A19",ja:"\u30D7\u30EC\u30FC\u30B9\u30DB\u30EB\u30C0\u30BF\u30B0",ko:"\uD50C\uB808\uC774\uC2A4\uD640\uB354 \uD0DC\uADF8"},detected_lang:{zh:"\u8BED\u8A00\u68C0\u6D4B",en:"Language detection",zh_TW:"\u8A9E\u8A00\u5075\u6E2C",ja:"\u8A00\u8A9E\u691C\u51FA",ko:"\uC5B8\uC5B4 \uAC10\uC9C0"},detected_result:{zh:"\u68C0\u6D4B\u7ED3\u679C",en:"Detect result",zh_TW:"\u6AA2\u6E2C\u7D50\u679C",ja:"\u691C\u51FA\u7D50\u679C",ko:"\uAC10\uC9C0 \uACB0\uACFC"},subtitle_translate:{zh:"\u5B57\u5E55\u7FFB\u8BD1",en:"Subtitle Translation",zh_TW:"\u5B57\u5E55\u7FFB\u8B6F",ja:"\u5B57\u5E55\u7FFB\u8A33",ko:"\uC790\uB9C9 \uBC88\uC5ED"},toggle_subtitle_translate:{zh:"\u542F\u7528\u5B57\u5E55\u7FFB\u8BD1",en:"Enable subtitle translation",zh_TW:"\u555F\u7528\u5B57\u5E55\u7FFB\u8B6F",ja:"\u5B57\u5E55\u7FFB\u8A33\u3092\u6709\u52B9\u306B\u3059\u308B",ko:"\uC790\uB9C9 \uBC88\uC5ED \uD65C\uC131\uD654"},is_bilingual_view:{zh:"\u53CC\u8BED\u663E\u793A",en:"Enable bilingual display",zh_TW:"\u96D9\u8A9E\u986F\u793A",ja:"\u30D0\u30A4\u30EA\u30F3\u30AC\u30EB\u8868\u793A",ko:"\uC774\uC911 \uC5B8\uC5B4 \uD45C\uC2DC"},is_skip_ad:{zh:"\u5FEB\u8FDB\u5E7F\u544A",en:"Skip AD",zh_TW:"\u5FEB\u8F49\u5EE3\u544A",ja:"\u5E83\u544A\u3092\u30B9\u30AD\u30C3\u30D7",ko:"\uAD11\uACE0 \uAC74\uB108\uB6F0\uAE30"},download_subtitles:{zh:"\u4E0B\u8F7D\u5B57\u5E55",en:"Download subtitles",zh_TW:"\u4E0B\u8F7D\u5B57\u5E55",ja:"\u5B57\u5E55\u3092\u30C0\u30A6\u30F3\u30ED\u30FC\u30C9",ko:"\uC790\uB9C9 \uB2E4\uC6B4\uB85C\uB4DC"},background_styles:{zh:"\u80CC\u666F\u6837\u5F0F",en:"DBackground Style",zh_TW:"\u80CC\u666F\u6A23\u5F0F",ja:"\u80CC\u666F\u30B9\u30BF\u30A4\u30EB",ko:"\uBC30\uACBD \uC2A4\uD0C0\uC77C"},origin_styles:{zh:"\u539F\u6587\u6837\u5F0F",en:"Original style",zh_TW:"\u539F\u6587\u6A23\u5F0F",ja:"\u539F\u6587\u30B9\u30BF\u30A4\u30EB",ko:"\uC6D0\uBB38 \uC2A4\uD0C0\uC77C"},translation_styles:{zh:"\u8BD1\u6587\u6837\u5F0F",en:"Translation style",zh_TW:"\u8B6F\u6587\u6A23\u5F0F",ja:"\u7FFB\u8A33\u30B9\u30BF\u30A4\u30EB",ko:"\uBC88\uC5ED\uBB38 \uC2A4\uD0C0\uC77C"},ai_segmentation:{zh:"AI\u667A\u80FD\u65AD\u53E5",en:"AI intelligent punctuation",zh_TW:"AI\u667A\u6167\u65B7\u53E5",ja:"AI\u306B\u3088\u308B\u30A4\u30F3\u30C6\u30EA\u30B8\u30A7\u30F3\u30C8\u306A\u6587\u5206\u5272",ko:"AI \uC9C0\uB2A5\uD615 \uBB38\uC7A5 \uBD84\uB9AC"},ai_chunk_length:{zh:"AI\u5904\u7406\u5207\u5272\u957F\u5EA6(200-20000)",en:"AI processing chunk length(200-20000)",zh_TW:"AI\u5904\u7406\u5207\u5272\u957F\u5EA6(200-20000)",ja:"AI\u51E6\u7406\u306E\u30C1\u30E3\u30F3\u30AF\u9577(200-20000)",ko:"AI \uCC98\uB9AC \uCCAD\uD06C \uAE38\uC774(200-20000)"},subtitle_helper_1:{zh:"1\u3001\u76EE\u524D\u4EC5\u652F\u6301Youtube\u684C\u9762\u7F51\u7AD9\u3002",en:"1. Currently only supports Youtube desktop website.",zh_TW:"1.\u76EE\u524D\u50C5\u652F\u63F4Youtube\u684C\u9762\u7DB2\u7AD9\uFF0C\u4E14\u50C5\u652F\u63F4\u700F\u89BD\u5668\u64F4\u5145\u529F\u80FD\u3002",ja:"1. \u73FE\u5728\u3001Youtube\u306E\u30C7\u30B9\u30AF\u30C8\u30C3\u30D7\u30B5\u30A4\u30C8\u306E\u307F\u30B5\u30DD\u30FC\u30C8\u3057\u3066\u3044\u307E\u3059\u3002",ko:"1. \uD604\uC7AC Youtube \uB370\uC2A4\uD06C\uD1B1 \uC6F9\uC0AC\uC774\uD2B8\uB9CC \uC9C0\uC6D0\uD569\uB2C8\uB2E4."},subtitle_helper_2:{zh:"2\u3001\u63D2\u4EF6\u5185\u7F6E\u57FA\u7840\u7684\u5B57\u5E55\u5408\u5E76\u3001\u65AD\u53E5\u7B97\u6CD5\uFF0C\u53EF\u6EE1\u8DB3\u5927\u90E8\u5206\u60C5\u51B5\u3002",en:"2. The plug-in has built-in basic subtitle merging and sentence segmentation algorithms, which can meet most situations.",zh_TW:"2.\u63D2\u4EF6\u5167\u5EFA\u57FA\u790E\u7684\u5B57\u5E55\u5408\u4F75\u3001\u65B7\u53E5\u6F14\u7B97\u6CD5\uFF0C\u53EF\u6EFF\u8DB3\u5927\u90E8\u5206\u60C5\u6CC1\u3002",ja:"2. \u30D7\u30E9\u30B0\u30A4\u30F3\u306B\u306F\u57FA\u672C\u7684\u306A\u5B57\u5E55\u7D50\u5408\u3068\u6587\u5206\u5272\u30A2\u30EB\u30B4\u30EA\u30BA\u30E0\u304C\u7D44\u307F\u8FBC\u307E\u308C\u3066\u304A\u308A\u3001\u307B\u3068\u3093\u3069\u306E\u72B6\u6CC1\u306B\u5BFE\u5FDC\u3067\u304D\u307E\u3059\u3002",ko:"2. \uD50C\uB7EC\uADF8\uC778\uC5D0\uB294 \uAE30\uBCF8\uC801\uC778 \uC790\uB9C9 \uBCD1\uD569 \uBC0F \uBB38\uC7A5 \uBD84\uB9AC \uC54C\uACE0\uB9AC\uC998\uC774 \uB0B4\uC7A5\uB418\uC5B4 \uC788\uC5B4 \uB300\uBD80\uBD84\uC758 \uC0C1\uD669\uC5D0 \uB300\uC751\uD560 \uC218 \uC788\uC2B5\uB2C8\uB2E4."},subtitle_helper_3:{zh:"3\u3001\u4EA6\u53EF\u4EE5\u542F\u7528AI\u667A\u80FD\u65AD\u53E5\uFF0C\u4F46\u9700\u8003\u8651\u5207\u5272\u957F\u5EA6\u53CAAI\u63A5\u53E3\u80FD\u529B\uFF0C\u53EF\u80FD\u5904\u7406\u65F6\u95F4\u4F1A\u5F88\u957F\uFF0C\u751A\u81F3\u5904\u7406\u5931\u8D25\uFF0C\u5BFC\u81F4\u65E0\u6CD5\u770B\u5230\u5B57\u5E55\u3002",en:"3. You can also enable AI intelligent segmentation, but you need to consider the segmentation length and AI interface capabilities. The processing time may be very long or even fail, resulting in the inability to see subtitles.",zh_TW:"3.\u4EA6\u53EF\u555F\u7528AI\u667A\u80FD\u65B7\u53E5\uFF0C\u4F46\u9700\u8003\u616E\u5207\u5272\u9577\u5EA6\u53CAAI\u4ECB\u9762\u80FD\u529B\uFF0C\u53EF\u80FD\u8655\u7406\u6642\u9593\u6703\u5F88\u9577\uFF0C\u751A\u81F3\u8655\u7406\u5931\u6557\uFF0C\u5C0E\u81F4\u7121\u6CD5\u770B\u5230\u5B57\u5E55\u3002",ja:"3. AI\u30A4\u30F3\u30C6\u30EA\u30B8\u30A7\u30F3\u30C8\u6587\u5206\u5272\u3092\u6709\u52B9\u306B\u3059\u308B\u3053\u3068\u3082\u3067\u304D\u307E\u3059\u304C\u3001\u5206\u5272\u9577\u3068AI\u30A4\u30F3\u30BF\u30FC\u30D5\u30A7\u30FC\u30B9\u306E\u80FD\u529B\u3092\u8003\u616E\u3059\u308B\u5FC5\u8981\u304C\u3042\u308A\u3001\u51E6\u7406\u6642\u9593\u304C\u9577\u304F\u306A\u3063\u305F\u308A\u3001\u5931\u6557\u3057\u3066\u5B57\u5E55\u304C\u8868\u793A\u3055\u308C\u306A\u304F\u306A\u308B\u53EF\u80FD\u6027\u304C\u3042\u308A\u307E\u3059\u3002",ko:"3. AI \uC9C0\uB2A5\uD615 \uBD84\uB9AC\uB97C \uD65C\uC131\uD654\uD560 \uC218\uB3C4 \uC788\uC9C0\uB9CC, \uBD84\uB9AC \uAE38\uC774\uC640 AI \uC778\uD130\uD398\uC774\uC2A4\uC758 \uB2A5\uB825\uC744 \uACE0\uB824\uD574\uC57C \uD558\uBA70, \uCC98\uB9AC \uC2DC\uAC04\uC774 \uB9E4\uC6B0 \uAE38\uAC70\uB098 \uC2E4\uD328\uD558\uC5EC \uC790\uB9C9\uC744 \uBCFC \uC218 \uC5C6\uAC8C \uB420 \uC218\uB3C4 \uC788\uC2B5\uB2C8\uB2E4."},default_styles_example:{zh:"\u9ED8\u8BA4\u6837\u5F0F\u53C2\u8003\uFF1A",en:"Default styles reference:",zh_TW:"\u8A8D\u6A23\u5F0F\u53C3\u8003\uFF1A",ja:"\u30C7\u30D5\u30A9\u30EB\u30C8\u30B9\u30BF\u30A4\u30EB\u306E\u4F8B\uFF1A",ko:"\uAE30\uBCF8 \uC2A4\uD0C0\uC77C \uC608\uC2DC:"},subtitle_load_succeed:{zh:"\u53CC\u8BED\u5B57\u5E55\u52A0\u8F7D\u6210\u529F\uFF01",en:"Bilingual subtitles loaded successfully!",zh_TW:"\u53CC\u8BED\u5B57\u5E55\u52A0\u8F7D\u6210\u529F\uFF01",ja:"\u30D0\u30A4\u30EA\u30F3\u30AC\u30EB\u5B57\u5E55\u306E\u8AAD\u307F\u8FBC\u307F\u306B\u6210\u529F\u3057\u307E\u3057\u305F\uFF01",ko:"\uC774\uC911 \uC5B8\uC5B4 \uC790\uB9C9 \uB85C\uB529 \uC131\uACF5!"},subtitle_load_failed:{zh:"\u53CC\u8BED\u5B57\u5E55\u52A0\u8F7D\u5931\u8D25\uFF01",en:"Failed to load bilingual subtitles!",zh_TW:"\u53CC\u8BED\u5B57\u5E55\u52A0\u8F7D\u5931\u8D25\uFF01",ja:"\u30D0\u30A4\u30EA\u30F3\u30AC\u30EB\u5B57\u5E55\u306E\u8AAD\u307F\u8FBC\u307F\u306B\u5931\u6557\u3057\u307E\u3057\u305F\uFF01",ko:"\uC774\uC911 \uC5B8\uC5B4 \uC790\uB9C9 \uB85C\uB529 \uC2E4\uD328!"},try_get_subtitle_data:{zh:"\u5C1D\u8BD5\u83B7\u53D6\u5B57\u5E55\u6570\u636E\uFF0C\u8BF7\u7A0D\u5019...",en:"Trying to get subtitle data, please wait...",zh_TW:"\u5C1D\u8BD5\u83B7\u53D6\u5B57\u5E55\u6570\u636E\uFF0C\u8BF7\u7A0D\u5019...",ja:"\u5B57\u5E55\u30C7\u30FC\u30BF\u3092\u53D6\u5F97\u3057\u3066\u3044\u307E\u3059\u3002\u304A\u5F85\u3061\u304F\u3060\u3055\u3044...",ko:"\uC790\uB9C9 \uB370\uC774\uD130\uB97C \uAC00\uC838\uC624\uB294 \uC911\uC785\uB2C8\uB2E4. \uC7A0\uC2DC \uAE30\uB2E4\uB824\uC8FC\uC138\uC694..."},subtitle_data_processing:{zh:"\u5B57\u5E55\u6570\u636E\u5904\u7406\u4E2D...",en:"Subtitle data processing...",zh_TW:"\u5B57\u5E55\u6570\u636E\u5904\u7406\u4E2D...",ja:"\u5B57\u5E55\u30C7\u30FC\u30BF\u3092\u51E6\u7406\u4E2D...",ko:"\uC790\uB9C9 \uB370\uC774\uD130 \uCC98\uB9AC \uC911..."},starting_to_process_subtitle:{zh:"\u5F00\u59CB\u5904\u7406\u5B57\u5E55\u6570\u636E...",en:"Starting to process subtitle data...",zh_TW:"\u5F00\u59CB\u5904\u7406\u5B57\u5E55\u6570\u636E...",ja:"\u5B57\u5E55\u30C7\u30FC\u30BF\u306E\u51E6\u7406\u3092\u958B\u59CB\u3057\u307E\u3059...",ko:"\uC790\uB9C9 \uB370\uC774\uD130 \uCC98\uB9AC\uB97C \uC2DC\uC791\uD569\uB2C8\uB2E4..."},subtitle_data_is_ready:{zh:"\u5B57\u5E55\u6570\u636E\u5DF2\u51C6\u5907\u5C31\u7EEA\uFF0C\u8BF7\u70B9\u51FBKT\u6309\u94AE\u52A0\u8F7D",en:"The subtitle data is ready, please click the KT button to load it",zh_TW:"\u5B57\u5E55\u8CC7\u6599\u5DF2\u6E96\u5099\u5C31\u7DD2\uFF0C\u8ACB\u9EDE\u64CAKT\u6309\u9215\u52A0\u8F09",ja:"\u5B57\u5E55\u30C7\u30FC\u30BF\u306E\u6E96\u5099\u304C\u3067\u304D\u307E\u3057\u305F\u3002KT\u30DC\u30BF\u30F3\u3092\u30AF\u30EA\u30C3\u30AF\u3057\u3066\u8AAD\u307F\u8FBC\u3093\u3067\u304F\u3060\u3055\u3044",ko:"\uC790\uB9C9 \uB370\uC774\uD130\uAC00 \uC900\uBE44\uB418\uC5C8\uC2B5\uB2C8\uB2E4. KT \uBC84\uD2BC\uC744 \uD074\uB9AD\uD558\uC5EC \uB85C\uB4DC\uD558\uC138\uC694"},starting_reprocess_events:{zh:"\u91CD\u65B0\u5904\u7406\u5B57\u5E55\u6570\u636E...",en:"Reprocess the subtitle data...",zh_TW:"\u91CD\u65B0\u5904\u7406\u5B57\u5E55\u6570\u636E...",ja:"\u5B57\u5E55\u30C7\u30FC\u30BF\u3092\u518D\u51E6\u7406\u3057\u3066\u3044\u307E\u3059...",ko:"\uC790\uB9C9 \uB370\uC774\uD130\uB97C \uB2E4\uC2DC \uCC98\uB9AC \uC911..."},waitting_for_subtitle:{zh:"\u8BF7\u7B49\u5F85\u5B57\u5E55\u6570\u636E",en:"Please wait for the subtitle data.",zh_TW:"\u8BF7\u7B49\u5F85\u5B57\u5E55\u6570\u636E",ja:"\u5B57\u5E55\u30C7\u30FC\u30BF\u3092\u5F85\u6A5F\u4E2D",ko:"\uC790\uB9C9 \uB370\uC774\uD130\uB97C \uAE30\uB2E4\uB824\uC8FC\uC138\uC694"},ai_processing_pls_wait:{zh:"AI\u5904\u7406\u4E2D\uFF0C\u8BF7\u7A0D\u7B49...",en:"AI processing in progress, please wait...",zh_TW:"AI\u5904\u7406\u4E2D\uFF0C\u8BF7\u7A0D\u7B49...",ja:"AI\u51E6\u7406\u4E2D\u3067\u3059\u3002\u304A\u5F85\u3061\u304F\u3060\u3055\u3044...",ko:"AI \uCC98\uB9AC \uC911\uC785\uB2C8\uB2E4. \uC7A0\uC2DC \uAE30\uB2E4\uB824\uC8FC\uC138\uC694..."},processing_subtitles:{zh:"\u5B57\u5E55\u5904\u7406\u4E2D...",en:"Subtitle processing...",zh_TW:"\u5B57\u5E55\u5904\u7406\u4E2D...",ja:"\u5B57\u5E55\u51E6\u7406\u4E2D...",ko:"\uC790\uB9C9 \uCC98\uB9AC \uC911..."},waiting_subtitles:{zh:"\u7B49\u5F85\u5B57\u5E55\u4E2D",en:"Waiting for subtitles",zh_TW:"\u7B49\u5F85\u5B57\u5E55\u4E2D",ja:"\u5B57\u5E55\u5F85\u6A5F\u4E2D",ko:"\uC790\uB9C9 \uB300\uAE30 \uC911"},subtitle_is_not_yet_ready:{zh:"\u5B57\u5E55\u6570\u636E\u5C1A\u672A\u51C6\u5907\u597D",en:"Subtitle is not yet ready.",zh_TW:"\u5B57\u5E55\u6570\u636E\u5C1A\u672A\u51C6\u5907\u597D",ja:"\u5B57\u5E55\u30C7\u30FC\u30BF\u306E\u6E96\u5099\u304C\u307E\u3060\u3067\u304D\u3066\u3044\u307E\u305B\u3093\u3002",ko:"\uC790\uB9C9 \uB370\uC774\uD130\uAC00 \uC544\uC9C1 \uC900\uBE44\uB418\uC9C0 \uC54A\uC558\uC2B5\uB2C8\uB2E4."},log_level:{zh:"\u65E5\u5FD7\u7EA7\u522B",en:"Log Level",zh_TW:"\u65E5\u8A8C\u7B49\u7D1A",ja:"\u30ED\u30B0\u30EC\u30D9\u30EB",ko:"\uB85C\uADF8 \uB808\uBCA8"},goto_custom_api_example:{zh:"\u70B9\u51FB\u67E5\u770B\u3010\u81EA\u5B9A\u4E49\u63A5\u53E3\u793A\u4F8B\u3011",en:"Click to view [Custom Interface Example]",zh_TW:"\u9EDE\u9078\u67E5\u770B\u3010\u81EA\u8A02\u4ECB\u9762\u7BC4\u4F8B\u3011",ja:"\u3010\u30AB\u30B9\u30BF\u30E0\u30A4\u30F3\u30BF\u30FC\u30D5\u30A7\u30FC\u30B9\u306E\u4F8B\u3011\u3092\u898B\u308B",ko:"[\uC0AC\uC6A9\uC790 \uC9C0\uC815 \uC778\uD130\uD398\uC774\uC2A4 \uC608\uC2DC] \uBCF4\uAE30"},split_paragraph:{zh:"\u5207\u5206\u957F\u6BB5\u843D",en:"Split long paragraph",zh_TW:"\u5207\u5206\u9577\u6BB5\u843D",ja:"\u9577\u3044\u6BB5\u843D\u3092\u5206\u5272",ko:"\uAE34 \uB2E8\uB77D \uB098\uB204\uAE30"},split_length:{zh:"\u5207\u5206\u957F\u5EA6 (0-10000)",en:"Segmentation length(0-10000)",zh_TW:"\u5207\u5206\u9577\u5EA6(0-10000)",ja:"\u5206\u5272\u9577(0-10000)",ko:"\uBD84\uD560 \uAE38\uC774(0-10000)"},highlight_words:{zh:"\u9AD8\u4EAE\u6536\u85CF\u8BCD\u6C47",en:"Highlight favorite words",zh_TW:"\u9AD8\u4EAE\u6536\u85CF\u8A5E\u5F59",ja:"\u304A\u6C17\u306B\u5165\u308A\u5358\u8A9E\u3092\u30CF\u30A4\u30E9\u30A4\u30C8",ko:"\uC990\uACA8\uCC3E\uB294 \uB2E8\uC5B4 \uD558\uC774\uB77C\uC774\uD2B8"},split_disable:{zh:"\u7981\u7528",en:"Disable",zh_TW:"\u505C\u7528",ja:"\u7121\u52B9",ko:"\uBE44\uD65C\uC131\uD654"},split_textlength:{zh:"\u6309\u7167\u957F\u5EA6\u5207\u5206",en:"Split by length",zh_TW:"\u4F9D\u9577\u5EA6\u5207\u5206",ja:"\u9577\u3055\u3067\u5206\u5272",ko:"\uAE38\uC774\uB85C \uB098\uB204\uAE30"},split_punctuation:{zh:"\u6309\u7167\u53E5\u5B50\u5207\u5206",en:"Split by sentence",zh_TW:"\u6309\u7167\u53E5\u5B50\u5207\u5206",ja:"\u6587\u3067\u5206\u5272",ko:"\uBB38\uC7A5\uC73C\uB85C \uB098\uB204\uAE30"},highlight_disable:{zh:"\u7981\u7528",en:"Disable",zh_TW:"\u505C\u7528",ja:"\u7121\u52B9",ko:"\uBE44\uD65C\uC131\uD654"},highlight_beforetrans:{zh:"\u7FFB\u8BD1\u524D\u9AD8\u4EAE",en:"Highlight before translation",zh_TW:"\u7FFB\u8B6F\u524D\u9AD8\u4EAE",ja:"\u7FFB\u8A33\u524D\u306B\u30CF\u30A4\u30E9\u30A4\u30C8",ko:"\uBC88\uC5ED \uC804 \uD558\uC774\uB77C\uC774\uD2B8"},highlight_aftertrans:{zh:"\u7FFB\u8BD1\u540E\u9AD8\u4EAE",en:"Highlight after translation",zh_TW:"\u7FFB\u8B6F\u5F8C\u9AD8\u4EAE",ja:"\u7FFB\u8A33\u5F8C\u306B\u30CF\u30A4\u30E9\u30A4\u30C8",ko:"\uBC88\uC5ED \uD6C4 \uD558\uC774\uB77C\uC774\uD2B8"},pagescroll_root_margin:{zh:"\u6EDA\u52A8\u52A0\u8F7D\u63D0\u524D\u89E6\u53D1 (0-10000px)",en:"Early triggering of scroll loading (0-10000px)",zh_TW:"\u6EFE\u52D5\u8F09\u5165\u63D0\u524D\u89F8\u767C (0-10000px)",ja:"\u30B9\u30AF\u30ED\u30FC\u30EB\u8AAD\u307F\u8FBC\u307F\u306E\u4E8B\u524D\u30C8\u30EA\u30AC\u30FC (0-10000px)",ko:"\uC2A4\uD06C\uB864 \uB85C\uB529 \uBBF8\uB9AC \uD2B8\uB9AC\uAC70 (0-10000px)"},styles_setting:{zh:"\u6837\u5F0F\u8BBE\u7F6E",en:"Style Setting",zh_TW:"\u6A23\u5F0F\u8A2D\u5B9A",ja:"\u30B9\u30BF\u30A4\u30EB\u8A2D\u5B9A",ko:"\uC2A4\uD0C0\uC77C \uC124\uC815"},style_name:{zh:"\u6837\u5F0F\u540D\u79F0",en:"Style Name",zh_TW:"\u6A23\u5F0F\u540D\u7A31",ja:"\u30B9\u30BF\u30A4\u30EB\u540D",ko:"\uC2A4\uD0C0\uC77C \uC774\uB984"},style_code:{zh:"\u6837\u5F0F\u4EE3\u7801",en:"Style Code",zh_TW:"\u6A23\u5F0F\u7A0B\u5F0F\u78BC",ja:"\u30B9\u30BF\u30A4\u30EB\u30B3\u30FC\u30C9",ko:"\uC2A4\uD0C0\uC77C \uCF54\uB4DC"},pre_trans_seconds:{zh:"\u63D0\u524D\u7FFB\u8BD1\u65F6\u957F (10-36000s)",en:"Pre translation seconds (10-36000s)",zh_TW:"\u63D0\u524D\u7FFB\u8BD1\u65F6\u957F (10-36000s)",ja:"\u4E8B\u524D\u7FFB\u8A33\u6642\u9593 (10-36000s)",ko:"\uBBF8\uB9AC \uBC88\uC5ED \uC2DC\uAC04 (10-36000s)"},throttle_trans_interval:{zh:"\u8282\u6D41\u7FFB\u8BD1\u95F4\u9694 (1-3600s)",en:"Throttling translation interval (1-3600s)",zh_TW:"\u8282\u6D41\u7FFB\u8BD1\u95F4\u9694 (1-3600s)",ja:"\u7FFB\u8A33\u9593\u9694\u306E\u30B9\u30ED\u30C3\u30C8\u30EA\u30F3\u30B0 (1-3600s)",ko:"\uBC88\uC5ED \uAC04\uACA9 \uC870\uC808 (1-3600s)"},show_origin_subtitle:{zh:"\u663E\u793A\u539F\u5B57\u5E55",en:"Show original subtitles",zh_TW:"\u663E\u793A\u539F\u5B57\u5E55",ja:"\u539F\u5B57\u5E55\u3092\u8868\u793A",ko:"\uC6D0\uBCF8 \uC790\uB9C9 \uD45C\uC2DC"}};const newI18n=lang=>key=>{var _I18N$key;return((_I18N$key=I18N[key])===null||_I18N$key===void 0?void 0:_I18N$key[lang])||"";}; ;// CONCATENATED MODULE: ./src/config/storage.js const KV_RULES_KEY="kiss-rules_v".concat(APP_VERSION[0],".json");const storage_KV_WORDS_KEY="kiss-words.json";const storage_KV_RULES_SHARE_KEY="kiss-rules-share_v".concat(APP_VERSION[0],".json");const storage_KV_SETTING_KEY="kiss-setting_v".concat(APP_VERSION[0],".json");const KV_SALT_SYNC="KISS-Translator-SYNC";const storage_KV_SALT_SHARE="KISS-Translator-SHARE";const STOKEY_MSAUTH="".concat(APP_NAME,"_msauth");const storage_STOKEY_BDAUTH="".concat(APP_NAME,"_bdauth");const storage_STOKEY_SETTING_OLD="".concat(APP_NAME,"_setting");const storage_STOKEY_RULES_OLD="".concat(APP_NAME,"_rules");const storage_STOKEY_SETTING="".concat(APP_NAME,"_setting_v").concat(APP_VERSION[0]);const storage_STOKEY_RULES="".concat(APP_NAME,"_rules_v").concat(APP_VERSION[0]);const storage_STOKEY_WORDS="".concat(APP_NAME,"_words");const storage_STOKEY_SYNC="".concat(APP_NAME,"_sync");const storage_STOKEY_FAB="".concat(APP_NAME,"_fab");const STOKEY_TRANBOX="".concat(APP_NAME,"_tranbox");const storage_STOKEY_RULESCACHE_PREFIX="".concat(APP_NAME,"_rulescache_");const CACHE_NAME="".concat(APP_NAME,"_cache");const DEFAULT_CACHE_TIMEOUT=3600*24*7;// 缓存超时时间(7天) ;// CONCATENATED MODULE: ./src/config/url.js @@ -29945,7 +29951,7 @@ return mimeMap[extension]||defaultType;}/** * @param {*} filename */function downloadBlobFile(str){let filename=arguments.length>1&&arguments[1]!==undefined?arguments[1]:"kiss-file.txt";const mimeType=getMimeTypeFromFilename(filename);const blob=new Blob([str],{type:mimeType});const url=URL.createObjectURL(blob);const a=document.createElement("a");a.style.display="none";a.href=url;a.download=filename||"kiss-file.txt";document.body.appendChild(a);a.click();document.body.removeChild(a);URL.revokeObjectURL(url);} ;// CONCATENATED MODULE: ./src/libs/storage.js -async function set(key,val){if(isExt){await browser.storage.local.set({[key]:val});}else if(isGm){await(window.KISS_GM||GM).setValue(key,val);}else{window.localStorage.setItem(key,val);}}async function get(key){if(isExt){const val=await browser.storage.local.get([key]);return val[key];}else if(isGm){const val=await(window.KISS_GM||GM).getValue(key);return val;}return window.localStorage.getItem(key);}async function del(key){if(isExt){await browser.storage.local.remove([key]);}else if(isGm){await(window.KISS_GM||GM).deleteValue(key);}else{window.localStorage.removeItem(key);}}async function setObj(key,obj){await set(key,JSON.stringify(obj));}async function trySetObj(key,obj){if(!(await get(key))){await setObj(key,obj);}}async function getObj(key){const val=await get(key);if(val===null||val===undefined)return null;try{return JSON.parse(val);}catch(err){log_kissLog("parse json in storage err: ",key);}return null;}async function putObj(key,obj){var _await$getObj;const cur=(_await$getObj=await getObj(key))!==null&&_await$getObj!==void 0?_await$getObj:{};await setObj(key,_objectSpread2(_objectSpread2({},cur),obj));}/** +async function set(key,val){if(isExt){await browser.storage.local.set({[key]:val});}else if(isGm){await(window.KISS_GM||GM).setValue(key,val);}else{var _window;(_window=window)===null||_window===void 0?void 0:_window.localStorage.setItem(key,val);}}async function get(key){var _window2;if(isExt){const val=await browser.storage.local.get([key]);return val[key];}else if(isGm){const val=await(window.KISS_GM||GM).getValue(key);return val;}return(_window2=window)===null||_window2===void 0?void 0:_window2.localStorage.getItem(key);}async function del(key){if(isExt){await browser.storage.local.remove([key]);}else if(isGm){await(window.KISS_GM||GM).deleteValue(key);}else{var _window3;(_window3=window)===null||_window3===void 0?void 0:_window3.localStorage.removeItem(key);}}async function setObj(key,obj){await set(key,JSON.stringify(obj));}async function trySetObj(key,obj){if(!(await get(key))){await setObj(key,obj);}}async function getObj(key){const val=await get(key);if(val===null||val===undefined)return null;try{return JSON.parse(val);}catch(err){log_kissLog("parse json in storage err: ",key);}return null;}async function putObj(key,obj){var _await$getObj;const cur=(_await$getObj=await getObj(key))!==null&&_await$getObj!==void 0?_await$getObj:{};await setObj(key,_objectSpread2(_objectSpread2({},cur),obj));}/** * 对storage的封装 */const storage={get,set,del,setObj,trySetObj,getObj,putObj// onChanged, };/** @@ -30136,7 +30142,7 @@ return fnPolyfill({fn:fetchHandle,input,init,opts});}; const MSG_GM_xmlHttpRequest="xmlHttpRequest";const MSG_GM_setValue="setValue";const MSG_GM_getValue="getValue";const MSG_GM_deleteValue="deleteValue";const MSG_GM_info="info";/** * 注入页面的脚本,请求并接受GM接口信息 * @param {*} param0 - */const injectScript=ping=>{window.APP_INFO={name:"KISS Translator",version:"2.0.8",eventName:ping};};/** + */const injectScript=ping=>{window.APP_INFO={name:"KISS Translator",version:"2.0.9",eventName:ping};};/** * 适配GM脚本 */const adaptScript=ping=>{const promiseGM=function(action,args){let timeout=arguments.length>2&&arguments[2]!==undefined?arguments[2]:5000;return new Promise((resolve,reject)=>{const pong=genEventName();const handleEvent=e=>{window.removeEventListener(pong,handleEvent);const{data,error}=e.detail;if(error){reject(new Error(error));}else{resolve(data);}};window.addEventListener(pong,handleEvent);window.dispatchEvent(new CustomEvent(ping,{detail:{action,args,pong}}));setTimeout(()=>{window.removeEventListener(pong,handleEvent);reject(new Error("timeout"));},timeout);});};window.KISS_GM={fetch:(input,init)=>promiseGM(MSG_GM_xmlHttpRequest,{input,init}),setValue:(key,val)=>promiseGM(MSG_GM_setValue,{key,val}),getValue:key=>promiseGM(MSG_GM_getValue,{key}),deleteValue:key=>promiseGM(MSG_GM_deleteValue,{key}),getInfo:async()=>{if(!window.GM_info){window.GM_info=await promiseGM(MSG_GM_info);}return window.GM_info;}};};/** * 监听并回应页面对GM接口的请求 @@ -30728,7 +30734,7 @@ contents:[{role:"model",parts:[{text:systemPrompt}]},...hisMsgs,userMsg],generat // }, safetySettings:[{category:"HARM_CATEGORY_HARASSMENT",threshold:"BLOCK_NONE"},{category:"HARM_CATEGORY_HATE_SPEECH",threshold:"BLOCK_NONE"},{category:"HARM_CATEGORY_SEXUALLY_EXPLICIT",threshold:"BLOCK_NONE"},{category:"HARM_CATEGORY_DANGEROUS_CONTENT",threshold:"BLOCK_NONE"}]};const headers={"Content-type":"application/json"};return{url,body,headers,userMsg};};const genGemini2=_ref14=>{let{url,key,systemPrompt,userPrompt,model,temperature,maxTokens,hisMsgs=[]}=_ref14;const userMsg={role:"user",content:userPrompt};const body={model,messages:[{role:"system",content:systemPrompt},...hisMsgs,userMsg],temperature,max_tokens:maxTokens};const headers={"Content-type":"application/json",Authorization:"Bearer ".concat(key)};return{url,body,headers,userMsg};};const genClaude=_ref15=>{let{url,key,systemPrompt,userPrompt,model,temperature,maxTokens,hisMsgs=[]}=_ref15;const userMsg={role:"user",content:userPrompt};const body={model,system:systemPrompt,messages:[...hisMsgs,userMsg],temperature,max_tokens:maxTokens};const headers={"Content-type":"application/json","anthropic-version":"2023-06-01","anthropic-dangerous-direct-browser-access":"true","x-api-key":key};return{url,body,headers,userMsg};};const genOpenRouter=_ref16=>{let{url,key,systemPrompt,userPrompt,model,temperature,maxTokens,hisMsgs=[]}=_ref16;const userMsg={role:"user",content:userPrompt};const body={model,messages:[{role:"system",content:systemPrompt},...hisMsgs,userMsg],temperature,max_tokens:maxTokens};const headers={"Content-type":"application/json",Authorization:"Bearer ".concat(key)};return{url,body,headers,userMsg};};const genOllama=_ref17=>{let{// think, url,key,systemPrompt,userPrompt,model,temperature,maxTokens,hisMsgs=[]}=_ref17;const userMsg={role:"user",content:userPrompt};const body={model,messages:[{role:"system",content:systemPrompt},...hisMsgs,userMsg],temperature,max_tokens:maxTokens,// think, -stream:false};const headers={"Content-type":"application/json"};if(key){headers.Authorization="Bearer ".concat(key);}return{url,body,headers,userMsg};};const genCloudflareAI=_ref18=>{let{texts,from,to,url,key}=_ref18;const body={text:texts.join(" "),source_lang:from,target_lang:to};const headers={"Content-type":"application/json",Authorization:"Bearer ".concat(key)};return{url,body,headers};};const genCustom=_ref19=>{let{texts,fromLang,toLang,url,key}=_ref19;const body={texts,from:fromLang,to:toLang};const headers={"Content-type":"application/json",Authorization:"Bearer ".concat(key)};return{url,body,headers};};const genReqFuncs={[OPT_TRANS_GOOGLE]:genGoogle,[OPT_TRANS_GOOGLE_2]:genGoogle2,[OPT_TRANS_MICROSOFT]:genMicrosoft,[OPT_TRANS_AZUREAI]:genAzureAI,[OPT_TRANS_DEEPL]:genDeepl,[OPT_TRANS_DEEPLFREE]:genDeeplFree,[OPT_TRANS_DEEPLX]:genDeeplX,[OPT_TRANS_NIUTRANS]:genNiuTrans,[OPT_TRANS_BAIDU]:genBaidu,[OPT_TRANS_TENCENT]:genTencent,[OPT_TRANS_VOLCENGINE]:genVolcengine,[OPT_TRANS_OPENAI]:genOpenAI,[OPT_TRANS_GEMINI]:genGemini,[OPT_TRANS_GEMINI_2]:genGemini2,[OPT_TRANS_CLAUDE]:genClaude,[OPT_TRANS_CLOUDFLAREAI]:genCloudflareAI,[OPT_TRANS_OLLAMA]:genOllama,[OPT_TRANS_OPENROUTER]:genOpenRouter,[OPT_TRANS_CUSTOMIZE]:genCustom};const genInit=_ref20=>{let{url="",body=null,headers={},userMsg=null,method="POST"}=_ref20;if(!url){throw new Error("genInit: url is empty");}const init={method,headers};if(method!=="GET"&&method!=="HEAD"&&body){var _body$params;let payload=JSON.stringify(body);const id=body===null||body===void 0?void 0:(_body$params=body.params)===null||_body$params===void 0?void 0:_body$params.id;if(id){payload=payload.replace('method":"',(id+3)%13===0||(id+5)%29===0?'method" : "':'method": "');}Object.assign(init,{body:payload});}return[url,init,userMsg];};/** +stream:false};const headers={"Content-type":"application/json"};if(key){headers.Authorization="Bearer ".concat(key);}return{url,body,headers,userMsg};};const genCloudflareAI=_ref18=>{let{texts,from,to,url,key}=_ref18;const body={text:texts.join(" "),source_lang:from,target_lang:to};const headers={"Content-type":"application/json",Authorization:"Bearer ".concat(key)};return{url,body,headers};};const genCustom=_ref19=>{let{texts,fromLang,toLang,url,key,useBatchFetch}=_ref19;const body=useBatchFetch?{texts,from:fromLang,to:toLang}:{text:texts[0],from:fromLang,to:toLang};const headers={"Content-type":"application/json",Authorization:"Bearer ".concat(key)};return{url,body,headers};};const genReqFuncs={[OPT_TRANS_GOOGLE]:genGoogle,[OPT_TRANS_GOOGLE_2]:genGoogle2,[OPT_TRANS_MICROSOFT]:genMicrosoft,[OPT_TRANS_AZUREAI]:genAzureAI,[OPT_TRANS_DEEPL]:genDeepl,[OPT_TRANS_DEEPLFREE]:genDeeplFree,[OPT_TRANS_DEEPLX]:genDeeplX,[OPT_TRANS_NIUTRANS]:genNiuTrans,[OPT_TRANS_BAIDU]:genBaidu,[OPT_TRANS_TENCENT]:genTencent,[OPT_TRANS_VOLCENGINE]:genVolcengine,[OPT_TRANS_OPENAI]:genOpenAI,[OPT_TRANS_GEMINI]:genGemini,[OPT_TRANS_GEMINI_2]:genGemini2,[OPT_TRANS_CLAUDE]:genClaude,[OPT_TRANS_CLOUDFLAREAI]:genCloudflareAI,[OPT_TRANS_OLLAMA]:genOllama,[OPT_TRANS_OPENROUTER]:genOpenRouter,[OPT_TRANS_CUSTOMIZE]:genCustom};const genInit=_ref20=>{let{url="",body=null,headers={},userMsg=null,method="POST"}=_ref20;if(!url){throw new Error("genInit: url is empty");}const init={method,headers};if(method!=="GET"&&method!=="HEAD"&&body){var _body$params;let payload=JSON.stringify(body);const id=body===null||body===void 0?void 0:(_body$params=body.params)===null||_body$params===void 0?void 0:_body$params.id;if(id){payload=payload.replace('method":"',(id+3)%13===0||(id+5)%29===0?'method" : "':'method": "');}Object.assign(init,{body:payload});}return[url,init,userMsg];};/** * 构造翻译接口请求参数 * @param {*} * @returns @@ -30740,16 +30746,16 @@ if(reqHook!==null&&reqHook!==void 0&&reqHook.trim()&&!events){try{interpreter.ru * @param {*} res * @param {*} param3 * @returns - */const parseTransRes=async(res,_ref22)=>{var _res$sentences,_res$,_res$translations,_res$result,_res$result$texts,_res$result2,_res$auto_translation,_res$choices,_res$choices$,_modelMsg,_res$candidates,_res$candidates$,_modelMsg$parts$0$tex,_modelMsg2,_modelMsg2$parts,_modelMsg2$parts$,_res$content,_res$content$0$text,_res$content2,_res$content2$,_res$result3,_res$choices2,_res$choices2$,_modelMsg3,_ref23,_res$translations2;let{texts,from,to,fromLang,toLang,langMap,resHook,// thinkIgnore, + */const parseTransRes=async(res,_ref22)=>{var _res$sentences,_res$,_res$translations,_res$result,_res$result$texts,_res$result2,_res$auto_translation,_res$choices,_res$choices$,_modelMsg,_res$candidates,_res$candidates$,_modelMsg$parts$0$tex,_modelMsg2,_modelMsg2$parts,_modelMsg2$parts$,_res$content,_res$content$0$text,_res$content2,_res$content2$,_res$result3,_res$choices2,_res$choices2$,_modelMsg3;let{texts,from,to,fromLang,toLang,langMap,resHook,// thinkIgnore, history,userMsg,apiType,useBatchFetch}=_ref22;// 执行 response hook -if(resHook!==null&&resHook!==void 0&&resHook.trim()){try{interpreter.run("exports.resHook = ".concat(resHook));const hookResult=await interpreter.exports.resHook({apiType,userMsg,res,texts,from,to,fromLang,toLang,langMap,extractJson: extractJson,parseAIRes});if(hookResult&&Array.isArray(hookResult.translations)){if(history&&userMsg&&hookResult.modelMsg){history.add(userMsg,hookResult.modelMsg);}return hookResult.translations;}}catch(err){log_kissLog("run res hook",err);}}let modelMsg="";// todo: 根据结果抛出实际异常信息 +if(resHook!==null&&resHook!==void 0&&resHook.trim()){try{interpreter.run("exports.resHook = ".concat(resHook));const hookResult=await interpreter.exports.resHook({apiType,userMsg,res,texts,from,to,fromLang,toLang,langMap,extractJson: extractJson,parseAIRes});if(hookResult&&Array.isArray(hookResult.translations)){if(history&&userMsg&&hookResult.modelMsg){history.add(userMsg,hookResult.modelMsg);}return hookResult.translations;}else if(Array.isArray(hookResult)){return hookResult;}}catch(err){log_kissLog("run res hook",err);}}let modelMsg="";// todo: 根据结果抛出实际异常信息 switch(apiType){case OPT_TRANS_GOOGLE:return[[res===null||res===void 0?void 0:(_res$sentences=res.sentences)===null||_res$sentences===void 0?void 0:_res$sentences.map(item=>item.trans).join(" "),res===null||res===void 0?void 0:res.src]];case OPT_TRANS_GOOGLE_2:return res===null||res===void 0?void 0:(_res$=res[0])===null||_res$===void 0?void 0:_res$.map((_,i)=>{var _res$2,_res$3;return[res===null||res===void 0?void 0:(_res$2=res[0])===null||_res$2===void 0?void 0:_res$2[i],res===null||res===void 0?void 0:(_res$3=res[1])===null||_res$3===void 0?void 0:_res$3[i]];});case OPT_TRANS_MICROSOFT:case OPT_TRANS_AZUREAI:return res===null||res===void 0?void 0:res.map(item=>{var _item$detectedLanguag;return[item.translations.map(item=>item.text).join(" "),(_item$detectedLanguag=item.detectedLanguage)===null||_item$detectedLanguag===void 0?void 0:_item$detectedLanguag.language];});case OPT_TRANS_DEEPL:return res===null||res===void 0?void 0:(_res$translations=res.translations)===null||_res$translations===void 0?void 0:_res$translations.map(item=>[item.text,item.detected_source_language]);case OPT_TRANS_DEEPLFREE:return[[res===null||res===void 0?void 0:(_res$result=res.result)===null||_res$result===void 0?void 0:(_res$result$texts=_res$result.texts)===null||_res$result$texts===void 0?void 0:_res$result$texts.map(item=>item.text).join(" "),res===null||res===void 0?void 0:(_res$result2=res.result)===null||_res$result2===void 0?void 0:_res$result2.lang]];case OPT_TRANS_DEEPLX:return[[res===null||res===void 0?void 0:res.data,res===null||res===void 0?void 0:res.source_lang]];case OPT_TRANS_NIUTRANS:const json=JSON.parse(res);if(json.error_msg){throw new Error(json.error_msg);}return[[json.tgt_text,json.from]];case OPT_TRANS_BAIDU:if(res.type===1){return[[Object.keys(JSON.parse(res.result).content[0].mean[0].cont)[0],res.from]];}else if(res.type===2){return[[res.data.map(item=>item.dst).join(" "),res.from]];}break;case OPT_TRANS_TENCENT:return res===null||res===void 0?void 0:(_res$auto_translation=res.auto_translation)===null||_res$auto_translation===void 0?void 0:_res$auto_translation.map(text=>[text,res===null||res===void 0?void 0:res.src_lang]);case OPT_TRANS_VOLCENGINE:return[[res===null||res===void 0?void 0:res.translation,res===null||res===void 0?void 0:res.detected_language]];case OPT_TRANS_OPENAI:case OPT_TRANS_GEMINI_2:case OPT_TRANS_OPENROUTER:modelMsg=res===null||res===void 0?void 0:(_res$choices=res.choices)===null||_res$choices===void 0?void 0:(_res$choices$=_res$choices[0])===null||_res$choices$===void 0?void 0:_res$choices$.message;if(history&&userMsg&&modelMsg){history.add(userMsg,{role:modelMsg.role,content:modelMsg.content});}return parseAIRes((_modelMsg=modelMsg)===null||_modelMsg===void 0?void 0:_modelMsg.content,useBatchFetch);case OPT_TRANS_GEMINI:modelMsg=res===null||res===void 0?void 0:(_res$candidates=res.candidates)===null||_res$candidates===void 0?void 0:(_res$candidates$=_res$candidates[0])===null||_res$candidates$===void 0?void 0:_res$candidates$.content;if(history&&userMsg&&modelMsg){history.add(userMsg,modelMsg);}return parseAIRes((_modelMsg$parts$0$tex=(_modelMsg2=modelMsg)===null||_modelMsg2===void 0?void 0:(_modelMsg2$parts=_modelMsg2.parts)===null||_modelMsg2$parts===void 0?void 0:(_modelMsg2$parts$=_modelMsg2$parts[0])===null||_modelMsg2$parts$===void 0?void 0:_modelMsg2$parts$.text)!==null&&_modelMsg$parts$0$tex!==void 0?_modelMsg$parts$0$tex:"",useBatchFetch);case OPT_TRANS_CLAUDE:modelMsg={role:res===null||res===void 0?void 0:res.role,content:res===null||res===void 0?void 0:(_res$content=res.content)===null||_res$content===void 0?void 0:_res$content.text};if(history&&userMsg&&modelMsg){history.add(userMsg,{role:modelMsg.role,content:modelMsg.content});}return parseAIRes((_res$content$0$text=res===null||res===void 0?void 0:(_res$content2=res.content)===null||_res$content2===void 0?void 0:(_res$content2$=_res$content2[0])===null||_res$content2$===void 0?void 0:_res$content2$.text)!==null&&_res$content$0$text!==void 0?_res$content$0$text:"",useBatchFetch);case OPT_TRANS_CLOUDFLAREAI:return[[res===null||res===void 0?void 0:(_res$result3=res.result)===null||_res$result3===void 0?void 0:_res$result3.translated_text]];case OPT_TRANS_OLLAMA:modelMsg=res===null||res===void 0?void 0:(_res$choices2=res.choices)===null||_res$choices2===void 0?void 0:(_res$choices2$=_res$choices2[0])===null||_res$choices2$===void 0?void 0:_res$choices2$.message;// const deepModels = thinkIgnore // .split(",") // .filter((model) => model?.trim()); // if (deepModels.some((model) => res?.model?.startsWith(model))) { // modelMsg?.content.replace(/[\s\S]*<\/think>/i, ""); // } -if(history&&userMsg&&modelMsg){history.add(userMsg,{role:modelMsg.role,content:modelMsg.content});}return parseAIRes((_modelMsg3=modelMsg)===null||_modelMsg3===void 0?void 0:_modelMsg3.content,useBatchFetch);case OPT_TRANS_CUSTOMIZE:return(_ref23=(_res$translations2=res===null||res===void 0?void 0:res.translations)!==null&&_res$translations2!==void 0?_res$translations2:res)===null||_ref23===void 0?void 0:_ref23.map(item=>[item.text,item.src]);default:}throw new Error("parse translate result: apiType not matched",apiType);};/** +if(history&&userMsg&&modelMsg){history.add(userMsg,{role:modelMsg.role,content:modelMsg.content});}return parseAIRes((_modelMsg3=modelMsg)===null||_modelMsg3===void 0?void 0:_modelMsg3.content,useBatchFetch);case OPT_TRANS_CUSTOMIZE:if(useBatchFetch){var _ref23,_res$translations2;return(_ref23=(_res$translations2=res===null||res===void 0?void 0:res.translations)!==null&&_res$translations2!==void 0?_res$translations2:res)===null||_ref23===void 0?void 0:_ref23.map(item=>[item.text,item.src]);}return[[res.text,res.src||res.from]];default:}throw new Error("parse translate result: apiType not matched",apiType);};/** * 发送翻译请求并解析 * @param {*} param0 * @returns @@ -30844,7 +30850,7 @@ keyfrom:"webdict"});const init={headers:{accept:"application/json, text/plain, * * @param {*} param0 * @returns */const apiTranslate=async _ref2=>{let{text,fromLang="auto",toLang,apiSetting=DEFAULT_API_SETTING,docInfo={},glossary,useCache=true,usePool=true}=_ref2;if(!text){throw new Error("The text cannot be empty.");}const{apiType,apiSlug,useBatchFetch}=apiSetting;const langMap=OPT_LANGS_TO_SPEC[apiType]||OPT_LANGS_SPEC_DEFAULT;const from=langMap.get(fromLang);const to=langMap.get(toLang);if(!to){throw new Error("The target lang: ".concat(toLang," not support"));}// todo: 优化缓存失效因素 -const[v1,v2]="2.0.8".split(".");const cacheOpts={apiSlug,text,fromLang,toLang,version:[v1,v2].join(".")};const cacheInput="".concat(URL_CACHE_TRAN,"?").concat(query_string.stringify(cacheOpts));// 查询缓存数据 +const[v1,v2]="2.0.9".split(".");const cacheOpts={apiSlug,text,fromLang,toLang,version:[v1,v2].join(".")};const cacheInput="".concat(URL_CACHE_TRAN,"?").concat(query_string.stringify(cacheOpts));// 查询缓存数据 if(useCache){const cache=await getHttpCachePolyfill(cacheInput);if(cache!==null&&cache!==void 0&&cache.trText){return cache;}}// 请求接口数据 let tranlation=[];if(apiType===OPT_TRANS_BUILTINAI){tranlation=await apiBuiltinAITranslate({text,from,to,apiSetting});}else if(useBatchFetch&&API_SPE_TYPES.batch.has(apiType)){const{apiSlug,batchInterval,batchSize,batchLength}=apiSetting;const key="".concat(apiSlug,"_").concat(fromLang,"_").concat(toLang);const queue=getBatchQueue(key,handleTranslate,{batchInterval,batchSize,batchLength});tranlation=await queue.addTask(text,{from,to,fromLang,toLang,langMap,docInfo,glossary,apiSetting,usePool});}else{[tranlation]=await handleTranslate([text],{from,to,fromLang,toLang,langMap,docInfo,glossary,apiSetting,usePool});}let trText="";let srLang="";let srCode="";if(Array.isArray(tranlation)){[trText,srLang=""]=tranlation;if(srLang){srCode=OPT_LANGS_TO_CODE[apiType].get(srLang)||"";}}else if(typeof tranlation==="string"){trText=tranlation;}if(!trText){throw new Error("tanslate api got empty trtext");}const isSame=fromLang==="auto"&&srLang===to;// 插入缓存 if(useCache){putHttpCachePolyfill(cacheInput,null,{trText,isSame,srLang,srCode});}return{trText,srLang,srCode,isSame};};// 字幕处理/翻译 @@ -33684,7 +33690,7 @@ var n = {}; return t.length === e && "." !== t && ".." !== t; }; }, - te = "object" === ("undefined" == typeof process ? "undefined" : Nt(process)) && process ? "object" === Nt(({"NODE_ENV":"production","PUBLIC_URL":"","WDS_SOCKET_HOST":undefined,"WDS_SOCKET_PATH":undefined,"WDS_SOCKET_PORT":undefined,"FAST_REFRESH":true,"REACT_APP_CLIENT":"userscript","REACT_APP_NAME":"KISS Translator","REACT_APP_NAME_CN":"简约翻译","REACT_APP_VERSION":"2.0.8","REACT_APP_HOMEPAGE":"https://github.com/fishjar/kiss-translator","REACT_APP_OPTIONSPAGE":"https://fishjar.github.io/kiss-translator/options.html","REACT_APP_OPTIONSPAGE_DEV":"http://localhost:3000/options.html","REACT_APP_LOGOURL":"https://fishjar.github.io/kiss-translator/images/logo192.png","REACT_APP_RULESURL":"https://fishjar.github.io/kiss-rules/kiss-rules_v2.json","REACT_APP_RULESURL_ON":"https://fishjar.github.io/kiss-rules/kiss-rules-on_v2.json","REACT_APP_RULESURL_OFF":"https://fishjar.github.io/kiss-rules/kiss-rules-off_v2.json","REACT_APP_USERSCRIPT_DOWNLOADURL":"https://fishjar.github.io/kiss-translator/kiss-translator.user.js","REACT_APP_USERSCRIPT_IOS_DOWNLOADURL":"https://fishjar.github.io/kiss-translator/kiss-translator-ios-safari.user.js"})) && ({"NODE_ENV":"production","PUBLIC_URL":"","WDS_SOCKET_HOST":undefined,"WDS_SOCKET_PATH":undefined,"WDS_SOCKET_PORT":undefined,"FAST_REFRESH":true,"REACT_APP_CLIENT":"userscript","REACT_APP_NAME":"KISS Translator","REACT_APP_NAME_CN":"简约翻译","REACT_APP_VERSION":"2.0.8","REACT_APP_HOMEPAGE":"https://github.com/fishjar/kiss-translator","REACT_APP_OPTIONSPAGE":"https://fishjar.github.io/kiss-translator/options.html","REACT_APP_OPTIONSPAGE_DEV":"http://localhost:3000/options.html","REACT_APP_LOGOURL":"https://fishjar.github.io/kiss-translator/images/logo192.png","REACT_APP_RULESURL":"https://fishjar.github.io/kiss-rules/kiss-rules_v2.json","REACT_APP_RULESURL_ON":"https://fishjar.github.io/kiss-rules/kiss-rules-on_v2.json","REACT_APP_RULESURL_OFF":"https://fishjar.github.io/kiss-rules/kiss-rules-off_v2.json","REACT_APP_USERSCRIPT_DOWNLOADURL":"https://fishjar.github.io/kiss-translator/kiss-translator.user.js","REACT_APP_USERSCRIPT_IOS_DOWNLOADURL":"https://fishjar.github.io/kiss-translator/kiss-translator-ios-safari.user.js"}) && ({"NODE_ENV":"production","PUBLIC_URL":"","WDS_SOCKET_HOST":undefined,"WDS_SOCKET_PATH":undefined,"WDS_SOCKET_PORT":undefined,"FAST_REFRESH":true,"REACT_APP_CLIENT":"userscript","REACT_APP_NAME":"KISS Translator","REACT_APP_NAME_CN":"简约翻译","REACT_APP_VERSION":"2.0.8","REACT_APP_HOMEPAGE":"https://github.com/fishjar/kiss-translator","REACT_APP_OPTIONSPAGE":"https://fishjar.github.io/kiss-translator/options.html","REACT_APP_OPTIONSPAGE_DEV":"http://localhost:3000/options.html","REACT_APP_LOGOURL":"https://fishjar.github.io/kiss-translator/images/logo192.png","REACT_APP_RULESURL":"https://fishjar.github.io/kiss-rules/kiss-rules_v2.json","REACT_APP_RULESURL_ON":"https://fishjar.github.io/kiss-rules/kiss-rules-on_v2.json","REACT_APP_RULESURL_OFF":"https://fishjar.github.io/kiss-rules/kiss-rules-off_v2.json","REACT_APP_USERSCRIPT_DOWNLOADURL":"https://fishjar.github.io/kiss-translator/kiss-translator.user.js","REACT_APP_USERSCRIPT_IOS_DOWNLOADURL":"https://fishjar.github.io/kiss-translator/kiss-translator-ios-safari.user.js"}).__MINIMATCH_TESTING_PLATFORM__ || process.platform : "posix"; + te = "object" === ("undefined" == typeof process ? "undefined" : Nt(process)) && process ? "object" === Nt(({"NODE_ENV":"production","PUBLIC_URL":"","WDS_SOCKET_HOST":undefined,"WDS_SOCKET_PATH":undefined,"WDS_SOCKET_PORT":undefined,"FAST_REFRESH":true,"REACT_APP_CLIENT":"userscript","REACT_APP_NAME":"KISS Translator","REACT_APP_NAME_CN":"简约翻译","REACT_APP_VERSION":"2.0.9","REACT_APP_HOMEPAGE":"https://github.com/fishjar/kiss-translator","REACT_APP_OPTIONSPAGE":"https://fishjar.github.io/kiss-translator/options.html","REACT_APP_OPTIONSPAGE_DEV":"http://localhost:3000/options.html","REACT_APP_LOGOURL":"https://fishjar.github.io/kiss-translator/images/logo192.png","REACT_APP_RULESURL":"https://fishjar.github.io/kiss-rules/kiss-rules_v2.json","REACT_APP_RULESURL_ON":"https://fishjar.github.io/kiss-rules/kiss-rules-on_v2.json","REACT_APP_RULESURL_OFF":"https://fishjar.github.io/kiss-rules/kiss-rules-off_v2.json","REACT_APP_USERSCRIPT_DOWNLOADURL":"https://fishjar.github.io/kiss-translator/kiss-translator.user.js","REACT_APP_USERSCRIPT_IOS_DOWNLOADURL":"https://fishjar.github.io/kiss-translator/kiss-translator-ios-safari.user.js"})) && ({"NODE_ENV":"production","PUBLIC_URL":"","WDS_SOCKET_HOST":undefined,"WDS_SOCKET_PATH":undefined,"WDS_SOCKET_PORT":undefined,"FAST_REFRESH":true,"REACT_APP_CLIENT":"userscript","REACT_APP_NAME":"KISS Translator","REACT_APP_NAME_CN":"简约翻译","REACT_APP_VERSION":"2.0.9","REACT_APP_HOMEPAGE":"https://github.com/fishjar/kiss-translator","REACT_APP_OPTIONSPAGE":"https://fishjar.github.io/kiss-translator/options.html","REACT_APP_OPTIONSPAGE_DEV":"http://localhost:3000/options.html","REACT_APP_LOGOURL":"https://fishjar.github.io/kiss-translator/images/logo192.png","REACT_APP_RULESURL":"https://fishjar.github.io/kiss-rules/kiss-rules_v2.json","REACT_APP_RULESURL_ON":"https://fishjar.github.io/kiss-rules/kiss-rules-on_v2.json","REACT_APP_RULESURL_OFF":"https://fishjar.github.io/kiss-rules/kiss-rules-off_v2.json","REACT_APP_USERSCRIPT_DOWNLOADURL":"https://fishjar.github.io/kiss-translator/kiss-translator.user.js","REACT_APP_USERSCRIPT_IOS_DOWNLOADURL":"https://fishjar.github.io/kiss-translator/kiss-translator-ios-safari.user.js"}) && ({"NODE_ENV":"production","PUBLIC_URL":"","WDS_SOCKET_HOST":undefined,"WDS_SOCKET_PATH":undefined,"WDS_SOCKET_PORT":undefined,"FAST_REFRESH":true,"REACT_APP_CLIENT":"userscript","REACT_APP_NAME":"KISS Translator","REACT_APP_NAME_CN":"简约翻译","REACT_APP_VERSION":"2.0.9","REACT_APP_HOMEPAGE":"https://github.com/fishjar/kiss-translator","REACT_APP_OPTIONSPAGE":"https://fishjar.github.io/kiss-translator/options.html","REACT_APP_OPTIONSPAGE_DEV":"http://localhost:3000/options.html","REACT_APP_LOGOURL":"https://fishjar.github.io/kiss-translator/images/logo192.png","REACT_APP_RULESURL":"https://fishjar.github.io/kiss-rules/kiss-rules_v2.json","REACT_APP_RULESURL_ON":"https://fishjar.github.io/kiss-rules/kiss-rules-on_v2.json","REACT_APP_RULESURL_OFF":"https://fishjar.github.io/kiss-rules/kiss-rules-off_v2.json","REACT_APP_USERSCRIPT_DOWNLOADURL":"https://fishjar.github.io/kiss-translator/kiss-translator.user.js","REACT_APP_USERSCRIPT_IOS_DOWNLOADURL":"https://fishjar.github.io/kiss-translator/kiss-translator-ios-safari.user.js"}).__MINIMATCH_TESTING_PLATFORM__ || process.platform : "posix"; It.sep = "win32" === te ? "\\" : "/"; var ee = Symbol("globstar **"); It.GLOBSTAR = ee; @@ -35499,7 +35505,7 @@ textStyle:type(textStyle)==="string"&&textStyle.trim()!==""?textStyle.trim():GLO splitParagraph:matchValue([GLOBAL_KEY,...OPT_SPLIT_PARAGRAPH_ALL],splitParagraph),splitLength:Number.isInteger(splitLength)?splitLength:0,highlightWords:matchValue([GLOBAL_KEY,...OPT_HIGHLIGHT_WORDS_ALL],highlightWords)};});return rules;};/** * 保存或更新rule * @param {*} curRule - */const saveRule=async curRule=>{const rules=await getRulesWithDefault();const index=rules.findIndex(item=>item.pattern!==GLOBAL_KEY&&isMatch(curRule.pattern,item.pattern));if(index!==-1){const rule=rules.splice(index,1)[0];curRule=_objectSpread2(_objectSpread2(_objectSpread2({},rule),curRule),{},{pattern:rule.pattern});}const newRule={};Object.entries(GLOBLA_RULE).forEach(_ref4=>{let[key,val]=_ref4;newRule[key]=!curRule[key]||curRule[key]===val?DEFAULT_RULE[key]:curRule[key];});rules.unshift(newRule);await setRules(rules);trySyncRules();}; + */const saveRule=async curRule=>{const rules=await getRulesWithDefault();const index=rules.findIndex(item=>item.pattern!==GLOBAL_KEY&&isMatch(curRule.pattern,item.pattern));if(index!==-1){const rule=rules.splice(index,1)[0];curRule=_objectSpread2(_objectSpread2(_objectSpread2({},rule),curRule),{},{pattern:rule.pattern});}const newRule={};const globalRule=_objectSpread2(_objectSpread2({},GLOBLA_RULE),rules.find(r=>r.pattern===GLOBAL_KEY)||{});Object.keys(GLOBLA_RULE).forEach(key=>{newRule[key]=!curRule[key]||curRule[key]===globalRule[key]?DEFAULT_RULE[key]:curRule[key];});rules.unshift(newRule);await setRules(rules);trySyncRules();}; ;// CONCATENATED MODULE: ./src/libs/blacklist.js /** * 检查是否在黑名单中 @@ -35575,19 +35581,23 @@ var jsx_runtime = __webpack_require__(7394); ;// CONCATENATED MODULE: ./src/libs/shadowDomManager.js var _hostElement=/*#__PURE__*/_classPrivateFieldKey("hostElement");var _reactRoot=/*#__PURE__*/_classPrivateFieldKey("reactRoot");var _isVisible=/*#__PURE__*/_classPrivateFieldKey("isVisible");var _isProcessing=/*#__PURE__*/_classPrivateFieldKey("isProcessing");var _mount=/*#__PURE__*/_classPrivateFieldKey("mount");class ShadowDomManager{constructor(_ref){let{id,className="",reactComponent,props:_props={},rootElement=document.body}=_ref;Object.defineProperty(this,_mount,{value:_mount2});Object.defineProperty(this,_hostElement,{writable:true,value:null});Object.defineProperty(this,_reactRoot,{writable:true,value:null});Object.defineProperty(this,_isVisible,{writable:true,value:false});Object.defineProperty(this,_isProcessing,{writable:true,value:false});if(!id||!reactComponent){throw new Error("ID and a React Component must be provided.");}this._id=id;this._className=className;this._ReactComponent=reactComponent;this._props=_props;this._rootElement=rootElement;}get isVisible(){return _classPrivateFieldBase(this,_isVisible)[_isVisible];}show(props){if(_classPrivateFieldBase(this,_isVisible)[_isVisible]||_classPrivateFieldBase(this,_isProcessing)[_isProcessing]){return;}if(!_classPrivateFieldBase(this,_hostElement)[_hostElement]){_classPrivateFieldBase(this,_isProcessing)[_isProcessing]=true;try{_classPrivateFieldBase(this,_mount)[_mount](props||this._props);}catch(error){logger.warn("Failed to mount component with id \"".concat(this._id,"\":"),error);_classPrivateFieldBase(this,_isProcessing)[_isProcessing]=false;return;}finally{_classPrivateFieldBase(this,_isProcessing)[_isProcessing]=false;}}_classPrivateFieldBase(this,_hostElement)[_hostElement].style.display="";_classPrivateFieldBase(this,_isVisible)[_isVisible]=true;}hide(){if(!_classPrivateFieldBase(this,_isVisible)[_isVisible]||!_classPrivateFieldBase(this,_hostElement)[_hostElement]){return;}_classPrivateFieldBase(this,_hostElement)[_hostElement].style.display="none";_classPrivateFieldBase(this,_isVisible)[_isVisible]=false;}destroy(){if(!_classPrivateFieldBase(this,_hostElement)[_hostElement]){return;}_classPrivateFieldBase(this,_isProcessing)[_isProcessing]=true;if(_classPrivateFieldBase(this,_reactRoot)[_reactRoot]){_classPrivateFieldBase(this,_reactRoot)[_reactRoot].unmount();}_classPrivateFieldBase(this,_hostElement)[_hostElement].remove();_classPrivateFieldBase(this,_hostElement)[_hostElement]=null;_classPrivateFieldBase(this,_reactRoot)[_reactRoot]=null;_classPrivateFieldBase(this,_isVisible)[_isVisible]=false;_classPrivateFieldBase(this,_isProcessing)[_isProcessing]=false;logger.info("Component with id \"".concat(this._id,"\" has been destroyed."));}toggle(props){if(_classPrivateFieldBase(this,_isVisible)[_isVisible]){this.hide();}else{this.show(props||this._props);}}}function _mount2(props){const host=document.createElement("div");host.id=this._id;if(this._className){host.className=this._className;}this._rootElement.appendChild(host);_classPrivateFieldBase(this,_hostElement)[_hostElement]=host;const shadowContainer=host.attachShadow({mode:"open"});const appRoot=document.createElement("div");appRoot.className="".concat(this._id,"_wrapper");shadowContainer.appendChild(appRoot);const cache=(0,emotion_cache_browser_esm/* default */.Z)({key:this._id,prepend:true,container:shadowContainer});const enhancedProps=_objectSpread2(_objectSpread2({},props),{},{onClose:this.hide.bind(this)});const ComponentToRender=this._ReactComponent;_classPrivateFieldBase(this,_reactRoot)[_reactRoot]=react_dom_client.createRoot(appRoot);_classPrivateFieldBase(this,_reactRoot)[_reactRoot].render(/*#__PURE__*/(0,jsx_runtime.jsx)(react.StrictMode,{children:/*#__PURE__*/(0,jsx_runtime.jsx)(emotion_element_c39617d8_browser_esm.C,{value:cache,children:/*#__PURE__*/(0,jsx_runtime.jsx)(ComponentToRender,_objectSpread2({},enhancedProps))})}));} ;// CONCATENATED MODULE: ./src/subtitle/Menus.js -function Label(_ref){let{children}=_ref;return/*#__PURE__*/(0,jsx_runtime.jsx)("div",{style:{overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:children});}function MenuItem(_ref2){let{children,onClick,disabled=false}=_ref2;const[hover,setHover]=(0,react.useState)(false);return/*#__PURE__*/(0,jsx_runtime.jsx)("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"center",padding:"0px 8px",opacity:hover?1:0.8,background:"rgba(255, 255, 255, ".concat(hover?0.1:0,")"),cursor:disabled?"default":"pointer",transition:"background 0.2s, opacity 0.2s",borderRadius:5},onMouseEnter:()=>setHover(true),onMouseLeave:()=>setHover(false),onClick:onClick,children:children});}function Switch(_ref3){let{label,name,value,onChange,disabled}=_ref3;const handleClick=(0,react.useCallback)(()=>{if(disabled)return;onChange({name,value:!value});},[disabled,onChange,name,value]);return/*#__PURE__*/(0,jsx_runtime.jsxs)(MenuItem,{onClick:handleClick,disabled:disabled,children:[/*#__PURE__*/(0,jsx_runtime.jsx)(Label,{children:label}),/*#__PURE__*/(0,jsx_runtime.jsx)("div",{style:{width:40,height:24,borderRadius:12,background:value?"rgba(32,156,238,.8)":"rgba(255,255,255,.3)",position:"relative"},children:/*#__PURE__*/(0,jsx_runtime.jsx)("div",{style:{width:20,height:20,borderRadius:10,position:"absolute",left:2,top:2,background:"rgba(255,255,255,.9)",transform:"translateX(".concat(value?16:0,"px)")}})})]});}function Button(_ref4){let{label,onClick,disabled}=_ref4;const handleClick=(0,react.useCallback)(()=>{if(disabled)return;onClick();},[disabled,onClick]);return/*#__PURE__*/(0,jsx_runtime.jsx)(MenuItem,{onClick:handleClick,disabled:disabled,children:/*#__PURE__*/(0,jsx_runtime.jsx)(Label,{children:label})});}function Menus(_ref5){let{i18n,initData,updateSetting,downloadSubtitle,hasSegApi,eventName}=_ref5;const[formData,setFormData]=(0,react.useState)(initData);const[progressed,setProgressed]=(0,react.useState)(0);const handleChange=(0,react.useCallback)(_ref6=>{let{name,value}=_ref6;setFormData(pre=>_objectSpread2(_objectSpread2({},pre),{},{[name]:value}));updateSetting({name,value});},[updateSetting]);(0,react.useEffect)(()=>{const handler=e=>{const{action,data}=e.detail||{};if(action===MSG_MENUS_PROGRESSED){setProgressed(data);}else if(action===MSG_MENUS_UPDATEFORM){setFormData(pre=>_objectSpread2(_objectSpread2({},pre),data));}};window.addEventListener(eventName,handler);return()=>window.removeEventListener(eventName,handler);},[eventName]);const status=(0,react.useMemo)(()=>{if(progressed===0)return i18n("waiting_subtitles");if(progressed===100)return i18n("download_subtitles");return i18n("processing_subtitles");},[progressed,i18n]);const{isAISegment,skipAd,isBilingual}=formData;return/*#__PURE__*/(0,jsx_runtime.jsxs)("div",{style:{position:"absolute",left:0,bottom:100,background:"rgba(0,0,0,.6)",width:200,lineHeight:"40px",fontSize:16,padding:8,borderRadius:5},children:[/*#__PURE__*/(0,jsx_runtime.jsx)(Switch,{onChange:handleChange,name:"isAISegment",value:isAISegment,label:i18n("ai_segmentation"),disabled:!hasSegApi}),/*#__PURE__*/(0,jsx_runtime.jsx)(Switch,{onChange:handleChange,name:"isBilingual",value:isBilingual,label:i18n("is_bilingual_view")}),/*#__PURE__*/(0,jsx_runtime.jsx)(Switch,{onChange:handleChange,name:"skipAd",value:skipAd,label:i18n("is_skip_ad")}),/*#__PURE__*/(0,jsx_runtime.jsx)(Button,{label:"".concat(status," [").concat(progressed,"%] "),onClick:downloadSubtitle,disabled:progressed!==100})]});} +function Label(_ref){let{children}=_ref;return/*#__PURE__*/(0,jsx_runtime.jsx)("div",{style:{overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:children});}function MenuItem(_ref2){let{children,onClick,disabled=false}=_ref2;const[hover,setHover]=(0,react.useState)(false);return/*#__PURE__*/(0,jsx_runtime.jsx)("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"center",padding:"0px 8px",opacity:hover?1:0.8,background:"rgba(255, 255, 255, ".concat(hover?0.1:0,")"),cursor:disabled?"default":"pointer",transition:"background 0.2s, opacity 0.2s",borderRadius:5},onMouseEnter:()=>setHover(true),onMouseLeave:()=>setHover(false),onClick:onClick,children:children});}function Switch(_ref3){let{label,name,value,onChange,disabled}=_ref3;const handleClick=(0,react.useCallback)(()=>{if(disabled)return;onChange({name,value:!value});},[disabled,onChange,name,value]);return/*#__PURE__*/(0,jsx_runtime.jsxs)(MenuItem,{onClick:handleClick,disabled:disabled,children:[/*#__PURE__*/(0,jsx_runtime.jsx)(Label,{children:label}),/*#__PURE__*/(0,jsx_runtime.jsx)("div",{style:{width:40,height:24,borderRadius:12,background:value?"rgba(32,156,238,.8)":"rgba(255,255,255,.3)",position:"relative"},children:/*#__PURE__*/(0,jsx_runtime.jsx)("div",{style:{width:20,height:20,borderRadius:10,position:"absolute",left:2,top:2,background:"rgba(255,255,255,.9)",transform:"translateX(".concat(value?16:0,"px)")}})})]});}function Button(_ref4){let{label,onClick,disabled}=_ref4;const handleClick=(0,react.useCallback)(()=>{if(disabled)return;onClick();},[disabled,onClick]);return/*#__PURE__*/(0,jsx_runtime.jsx)(MenuItem,{onClick:handleClick,disabled:disabled,children:/*#__PURE__*/(0,jsx_runtime.jsx)(Label,{children:label})});}function Menus(_ref5){let{i18n,initData,updateSetting,downloadSubtitle,hasSegApi,eventName}=_ref5;const[formData,setFormData]=(0,react.useState)(initData);const[progressed,setProgressed]=(0,react.useState)(0);const handleChange=(0,react.useCallback)(_ref6=>{let{name,value}=_ref6;setFormData(pre=>_objectSpread2(_objectSpread2({},pre),{},{[name]:value}));updateSetting({name,value});},[updateSetting]);(0,react.useEffect)(()=>{const handler=e=>{const{action,data}=e.detail||{};if(action===MSG_MENUS_PROGRESSED){setProgressed(data);}else if(action===MSG_MENUS_UPDATEFORM){setFormData(pre=>_objectSpread2(_objectSpread2({},pre),data));}};window.addEventListener(eventName,handler);return()=>window.removeEventListener(eventName,handler);},[eventName]);const status=(0,react.useMemo)(()=>{if(progressed===0)return i18n("waiting_subtitles");if(progressed===100)return i18n("download_subtitles");return i18n("processing_subtitles");},[progressed,i18n]);const{isAISegment,skipAd,isBilingual,showOrigin}=formData;return/*#__PURE__*/(0,jsx_runtime.jsxs)("div",{style:{position:"absolute",left:0,bottom:100,background:"rgba(0,0,0,.6)",width:200,lineHeight:"40px",fontSize:16,padding:8,borderRadius:5},children:[/*#__PURE__*/(0,jsx_runtime.jsx)(Switch,{onChange:handleChange,name:"isAISegment",value:isAISegment,label:i18n("ai_segmentation"),disabled:!hasSegApi}),/*#__PURE__*/(0,jsx_runtime.jsx)(Switch,{onChange:handleChange,name:"isBilingual",value:isBilingual,label:i18n("is_bilingual_view")}),/*#__PURE__*/(0,jsx_runtime.jsx)(Switch,{onChange:handleChange,name:"showOrigin",value:showOrigin,label:i18n("show_origin_subtitle")}),/*#__PURE__*/(0,jsx_runtime.jsx)(Switch,{onChange:handleChange,name:"skipAd",value:skipAd,label:i18n("is_skip_ad")}),/*#__PURE__*/(0,jsx_runtime.jsx)(Button,{label:"".concat(status," [").concat(progressed,"%] "),onClick:downloadSubtitle,disabled:progressed!==100})]});} ;// CONCATENATED MODULE: ./src/subtitle/YouTubeCaptionProvider.js -const VIDEO_SELECT="#container video";const CONTORLS_SELECT=".ytp-right-controls";const YT_CAPTION_SELECT="#ytp-caption-window-container";const YT_AD_SELECT=".video-ads";const YT_SUBTITLE_BTN_SELECT="button.ytp-subtitles-button";var YouTubeCaptionProvider_setting=/*#__PURE__*/_classPrivateFieldKey("setting");var _subtitles=/*#__PURE__*/_classPrivateFieldKey("subtitles");var _flatEvents=/*#__PURE__*/_classPrivateFieldKey("flatEvents");var _progressedNum=/*#__PURE__*/_classPrivateFieldKey("progressedNum");var _fromLang=/*#__PURE__*/_classPrivateFieldKey("fromLang");var _processingId=/*#__PURE__*/_classPrivateFieldKey("processingId");var _managerInstance=/*#__PURE__*/_classPrivateFieldKey("managerInstance");var _toggleButton=/*#__PURE__*/_classPrivateFieldKey("toggleButton");var _isMenuShow=/*#__PURE__*/_classPrivateFieldKey("isMenuShow");var _notificationEl=/*#__PURE__*/_classPrivateFieldKey("notificationEl");var _notificationTimeout=/*#__PURE__*/_classPrivateFieldKey("notificationTimeout");var _i18n=/*#__PURE__*/_classPrivateFieldKey("i18n");var _menuEventName=/*#__PURE__*/_classPrivateFieldKey("menuEventName");var _videoId=/*#__PURE__*/_classPrivateFieldKey("videoId");var YouTubeCaptionProvider_videoEl=/*#__PURE__*/_classPrivateFieldKey("videoEl");var _progressed=/*#__PURE__*/_classPrivateFieldKey("progressed");var _moAds=/*#__PURE__*/_classPrivateFieldKey("moAds");var _waitForElement=/*#__PURE__*/_classPrivateFieldKey("waitForElement");var _sendMenusMsg=/*#__PURE__*/_classPrivateFieldKey("sendMenusMsg");var _injectToggleButton=/*#__PURE__*/_classPrivateFieldKey("injectToggleButton");var _isSameLang=/*#__PURE__*/_classPrivateFieldKey("isSameLang");var _findCaptionTrack=/*#__PURE__*/_classPrivateFieldKey("findCaptionTrack");var _getCaptionTracks=/*#__PURE__*/_classPrivateFieldKey("getCaptionTracks");var _getSubtitleEvents=/*#__PURE__*/_classPrivateFieldKey("getSubtitleEvents");var _aiSegment=/*#__PURE__*/_classPrivateFieldKey("aiSegment");var _handleInterceptedRequest=/*#__PURE__*/_classPrivateFieldKey("handleInterceptedRequest");var _processEvents=/*#__PURE__*/_classPrivateFieldKey("processEvents");var _reProcessEvents=/*#__PURE__*/_classPrivateFieldKey("reProcessEvents");var _eventsToSubtitles=/*#__PURE__*/_classPrivateFieldKey("eventsToSubtitles");var _startManager=/*#__PURE__*/_classPrivateFieldKey("startManager");var _destroyManager=/*#__PURE__*/_classPrivateFieldKey("destroyManager");var _formatSubtitles=/*#__PURE__*/_classPrivateFieldKey("formatSubtitles");var _isQualityPoor=/*#__PURE__*/_classPrivateFieldKey("isQualityPoor");var _processSubtitles=/*#__PURE__*/_classPrivateFieldKey("processSubtitles");var _genFlatEvents=/*#__PURE__*/_classPrivateFieldKey("genFlatEvents");var _splitEventsIntoChunks=/*#__PURE__*/_classPrivateFieldKey("splitEventsIntoChunks");var _processRemainingChunksAsync=/*#__PURE__*/_classPrivateFieldKey("processRemainingChunksAsync");var _createNotificationElement=/*#__PURE__*/_classPrivateFieldKey("createNotificationElement");var _showNotification=/*#__PURE__*/_classPrivateFieldKey("showNotification");class YouTubeCaptionProvider{constructor(){let setting=arguments.length>0&&arguments[0]!==undefined?arguments[0]:{};Object.defineProperty(this,_showNotification,{value:_showNotification2});Object.defineProperty(this,_createNotificationElement,{value:_createNotificationElement2});Object.defineProperty(this,_processRemainingChunksAsync,{value:_processRemainingChunksAsync2});Object.defineProperty(this,_splitEventsIntoChunks,{value:_splitEventsIntoChunks2});Object.defineProperty(this,_genFlatEvents,{value:_genFlatEvents2});Object.defineProperty(this,_processSubtitles,{value:_processSubtitles2});Object.defineProperty(this,_isQualityPoor,{value:_isQualityPoor2});Object.defineProperty(this,_formatSubtitles,{value:_formatSubtitles2});Object.defineProperty(this,_destroyManager,{value:_destroyManager2});Object.defineProperty(this,_startManager,{value:_startManager2});Object.defineProperty(this,_eventsToSubtitles,{value:_eventsToSubtitles2});Object.defineProperty(this,_reProcessEvents,{value:_reProcessEvents2});Object.defineProperty(this,_processEvents,{value:_processEvents2});Object.defineProperty(this,_handleInterceptedRequest,{value:_handleInterceptedRequest2});Object.defineProperty(this,_aiSegment,{value:_aiSegment2});Object.defineProperty(this,_getSubtitleEvents,{value:_getSubtitleEvents2});Object.defineProperty(this,_getCaptionTracks,{value:_getCaptionTracks2});// todo: 优化逻辑 -Object.defineProperty(this,_findCaptionTrack,{value:_findCaptionTrack2});Object.defineProperty(this,_isSameLang,{value:_isSameLang2});Object.defineProperty(this,_injectToggleButton,{value:_injectToggleButton2});Object.defineProperty(this,_sendMenusMsg,{value:_sendMenusMsg2});Object.defineProperty(this,_waitForElement,{value:_waitForElement2});Object.defineProperty(this,_moAds,{value:_moAds2});Object.defineProperty(this,_progressed,{get:_get_progressed,set:_set_progressed});Object.defineProperty(this,YouTubeCaptionProvider_videoEl,{get:_get_videoEl,set:void 0});Object.defineProperty(this,_videoId,{get:_get_videoId,set:void 0});Object.defineProperty(this,YouTubeCaptionProvider_setting,{writable:true,value:{}});Object.defineProperty(this,_subtitles,{writable:true,value:[]});Object.defineProperty(this,_flatEvents,{writable:true,value:[]});Object.defineProperty(this,_progressedNum,{writable:true,value:0});Object.defineProperty(this,_fromLang,{writable:true,value:"auto"});Object.defineProperty(this,_processingId,{writable:true,value:null});Object.defineProperty(this,_managerInstance,{writable:true,value:null});Object.defineProperty(this,_toggleButton,{writable:true,value:null});Object.defineProperty(this,_isMenuShow,{writable:true,value:false});Object.defineProperty(this,_notificationEl,{writable:true,value:null});Object.defineProperty(this,_notificationTimeout,{writable:true,value:null});Object.defineProperty(this,_i18n,{writable:true,value:()=>""});Object.defineProperty(this,_menuEventName,{writable:true,value:"kiss-event"});_classPrivateFieldBase(this,YouTubeCaptionProvider_setting)[YouTubeCaptionProvider_setting]=_objectSpread2(_objectSpread2({},setting),{},{isAISegment:false});_classPrivateFieldBase(this,_i18n)[_i18n]=newI18n(setting.uiLang||"zh");_classPrivateFieldBase(this,_menuEventName)[_menuEventName]=utils_genEventName();}initialize(){window.addEventListener("message",event=>{var _event$data;if(((_event$data=event.data)===null||_event$data===void 0?void 0:_event$data.type)===MSG_XHR_DATA_YOUTUBE){const{url,response}=event.data;if(url&&response){_classPrivateFieldBase(this,_handleInterceptedRequest)[_handleInterceptedRequest](url,response);}}});window.addEventListener("yt-navigate-finish",()=>{logger.debug("Youtube Provider: yt-navigate-finish",_classPrivateFieldBase(this,_videoId)[_videoId]);_classPrivateFieldBase(this,_destroyManager)[_destroyManager]();_classPrivateFieldBase(this,_subtitles)[_subtitles]=[];_classPrivateFieldBase(this,_flatEvents)[_flatEvents]=[];_classPrivateFieldBase(this,_progressed)[_progressed]=0;_classPrivateFieldBase(this,_fromLang)[_fromLang]="auto";_classPrivateFieldBase(this,YouTubeCaptionProvider_setting)[YouTubeCaptionProvider_setting].isAISegment=false;_classPrivateFieldBase(this,_sendMenusMsg)[_sendMenusMsg]({action:MSG_MENUS_UPDATEFORM,data:{isAISegment:false}});});_classPrivateFieldBase(this,_waitForElement)[_waitForElement](CONTORLS_SELECT,ytControls=>{const ytSubtitleBtn=ytControls.querySelector(YT_SUBTITLE_BTN_SELECT);if(ytSubtitleBtn){ytSubtitleBtn.addEventListener("click",()=>{if(ytSubtitleBtn.getAttribute("aria-pressed")==="true"){_classPrivateFieldBase(this,_startManager)[_startManager]();}else{_classPrivateFieldBase(this,_destroyManager)[_destroyManager]();}});}_classPrivateFieldBase(this,_injectToggleButton)[_injectToggleButton](ytControls);});_classPrivateFieldBase(this,_waitForElement)[_waitForElement](YT_AD_SELECT,adContainer=>{_classPrivateFieldBase(this,_moAds)[_moAds](adContainer);});}updateSetting(_ref){let{name,value}=_ref;if(_classPrivateFieldBase(this,YouTubeCaptionProvider_setting)[YouTubeCaptionProvider_setting][name]===value)return;logger.debug("Youtube Provider: update setting",name,value);_classPrivateFieldBase(this,YouTubeCaptionProvider_setting)[YouTubeCaptionProvider_setting][name]=value;if(name==="isBilingual"){var _classPrivateFieldLoo;(_classPrivateFieldLoo=_classPrivateFieldBase(this,_managerInstance)[_managerInstance])===null||_classPrivateFieldLoo===void 0?void 0:_classPrivateFieldLoo.updateSetting({[name]:value});}else if(name==="isAISegment"){_classPrivateFieldBase(this,_reProcessEvents)[_reProcessEvents]();}}downloadSubtitle(){if(!_classPrivateFieldBase(this,_subtitles)[_subtitles].length||_classPrivateFieldBase(this,_progressed)[_progressed]!==100){logger.debug("Youtube Provider: The subtitle is not yet ready.");return;}try{const vtt=buildBilingualVtt(_classPrivateFieldBase(this,_subtitles)[_subtitles]);downloadBlobFile(vtt,"kiss-subtitles-".concat(_classPrivateFieldBase(this,_videoId)[_videoId],"_").concat(Date.now(),".vtt"));}catch(error){logger.info("Youtube Provider: download subtitles:",error);}}}function _get_videoId(){const docUrl=new URL(document.location.href);return docUrl.searchParams.get("v");}function _get_videoEl(){return document.querySelector(VIDEO_SELECT);}function _set_progressed(num){_classPrivateFieldBase(this,_progressedNum)[_progressedNum]=num;_classPrivateFieldBase(this,_sendMenusMsg)[_sendMenusMsg]({action:MSG_MENUS_PROGRESSED,data:num});}function _get_progressed(){return _classPrivateFieldBase(this,_progressedNum)[_progressedNum];}function _moAds2(adContainer){const adLayoutSelector=".ytp-ad-player-overlay-layout";const skipBtnSelector=".ytp-skip-ad-button, .ytp-ad-skip-button, .ytp-ad-skip-button-modern";const observer=new MutationObserver(mutations=>{const{skipAd=false}=_classPrivateFieldBase(this,YouTubeCaptionProvider_setting)[YouTubeCaptionProvider_setting];for(const mutation of mutations){if(mutation.type==="childList"){const videoEl=_classPrivateFieldBase(this,YouTubeCaptionProvider_videoEl)[YouTubeCaptionProvider_videoEl];mutation.addedNodes.forEach(node=>{if(node.nodeType!==Node.ELEMENT_NODE)return;if(node.matches(adLayoutSelector)){logger.debug("Youtube Provider: AD start playing!",node);// todo: 顺带把广告快速跳过 -if(videoEl&&skipAd){videoEl.playbackRate=16;videoEl.currentTime=videoEl.duration;}if(_classPrivateFieldBase(this,_managerInstance)[_managerInstance]){_classPrivateFieldBase(this,_managerInstance)[_managerInstance].setIsAdPlaying(true);}}else if(node.matches(skipBtnSelector)&&skipAd){logger.debug("Youtube Provider: AD skip button!",node);node.click();}if(skipAd){const skipBtn=node===null||node===void 0?void 0:node.querySelector(skipBtnSelector);if(skipBtn){logger.debug("Youtube Provider: AD skip button!!",skipBtn);skipBtn.click();}}});mutation.removedNodes.forEach(node=>{if(node.nodeType!==Node.ELEMENT_NODE)return;if(node.matches(adLayoutSelector)){logger.debug("Youtube Provider: Ad ends!");if(videoEl&&skipAd){videoEl.playbackRate=1;}if(_classPrivateFieldBase(this,_managerInstance)[_managerInstance]){_classPrivateFieldBase(this,_managerInstance)[_managerInstance].setIsAdPlaying(false);}}});}}});observer.observe(adContainer,{childList:true,subtree:true});}function _waitForElement2(selector,callback){const element=document.querySelector(selector);if(element){callback(element);return;}const observer=new MutationObserver((mutations,obs)=>{const targetNode=document.querySelector(selector);if(targetNode){obs.disconnect();callback(targetNode);}});observer.observe(document.body,{childList:true,subtree:true});}function _sendMenusMsg2(_ref2){let{action,data}=_ref2;window.dispatchEvent(new CustomEvent(_classPrivateFieldBase(this,_menuEventName)[_menuEventName],{detail:{action,data}}));}function _injectToggleButton2(ytControls){const kissControls=document.createElement("div");kissControls.className="notranslate kiss-subtitle-controls";Object.assign(kissControls.style,{height:"100%",position:"relative"});const toggleButton=document.createElement("button");toggleButton.className="ytp-button kiss-subtitle-button";toggleButton.title=APP_NAME;toggleButton.appendChild(createLogoSVG());kissControls.appendChild(toggleButton);const{segApiSetting,isAISegment,skipAd,isBilingual}=_classPrivateFieldBase(this,YouTubeCaptionProvider_setting)[YouTubeCaptionProvider_setting];const menu=new ShadowDomManager({id:"kiss-subtitle-menus",className:"notranslate",reactComponent:Menus,rootElement:kissControls,props:{i18n:_classPrivateFieldBase(this,_i18n)[_i18n],updateSetting:this.updateSetting.bind(this),downloadSubtitle:this.downloadSubtitle.bind(this),hasSegApi:!!segApiSetting,eventName:_classPrivateFieldBase(this,_menuEventName)[_menuEventName],initData:{isAISegment,skipAd,isBilingual}}});toggleButton.onclick=()=>{if(!_classPrivateFieldBase(this,_isMenuShow)[_isMenuShow]){var _classPrivateFieldLoo2;_classPrivateFieldBase(this,_isMenuShow)[_isMenuShow]=true;(_classPrivateFieldLoo2=_classPrivateFieldBase(this,_toggleButton)[_toggleButton])===null||_classPrivateFieldLoo2===void 0?void 0:_classPrivateFieldLoo2.replaceChildren(createLogoSVG({isSelected:true}));menu.show();}else{var _classPrivateFieldLoo3;_classPrivateFieldBase(this,_isMenuShow)[_isMenuShow]=false;(_classPrivateFieldLoo3=_classPrivateFieldBase(this,_toggleButton)[_toggleButton])===null||_classPrivateFieldLoo3===void 0?void 0:_classPrivateFieldLoo3.replaceChildren(createLogoSVG());menu.hide();}};_classPrivateFieldBase(this,_toggleButton)[_toggleButton]=toggleButton;ytControls===null||ytControls===void 0?void 0:ytControls.prepend(kissControls);}function _isSameLang2(lang1,lang2){return lang1.slice(0,2)===lang2.slice(0,2);}function _findCaptionTrack2(captionTracks){if(!(captionTracks!==null&&captionTracks!==void 0&&captionTracks.length)){return null;}let captionTrack=null;const asrTrack=captionTracks.find(item=>item.kind==="asr");if(asrTrack){captionTrack=captionTracks.find(item=>item.kind!=="asr"&&_classPrivateFieldBase(this,_isSameLang)[_isSameLang](item.languageCode,asrTrack.languageCode));if(!captionTrack){captionTrack=asrTrack;}}if(!captionTrack){captionTrack=captionTracks.pop();}return captionTrack;}async function _getCaptionTracks2(videoId){try{var _data$captions,_data$captions$player;const url="https://www.youtube.com/watch?v=".concat(videoId);const html=await fetch(url).then(r=>r.text());const match=html.match(/ytInitialPlayerResponse\s*=\s*(\{[\s\S]*?\});/);if(!match)return[];const data=JSON.parse(match[1]);return(_data$captions=data.captions)===null||_data$captions===void 0?void 0:(_data$captions$player=_data$captions.playerCaptionsTracklistRenderer)===null||_data$captions$player===void 0?void 0:_data$captions$player.captionTracks;}catch(err){logger.info("Youtube Provider: get captionTracks",err);}}async function _getSubtitleEvents2(capUrl,potUrl,responseText){if(!potUrl.searchParams.get("tlang")&&potUrl.searchParams.get("kind")===capUrl.searchParams.get("kind")&&_classPrivateFieldBase(this,_isSameLang)[_isSameLang](potUrl.searchParams.get("lang"),capUrl.searchParams.get("lang"))){try{const json=JSON.parse(responseText);return json===null||json===void 0?void 0:json.events;}catch(err){logger.info("Youtube Provider: parse responseText",err);return null;}}try{potUrl.searchParams.delete("tlang");potUrl.searchParams.set("lang",capUrl.searchParams.get("lang"));potUrl.searchParams.set("fmt","json3");if(capUrl.searchParams.get("kind")){potUrl.searchParams.set("kind",capUrl.searchParams.get("kind"));}else{potUrl.searchParams.delete("kind");}const res=await fetch(potUrl.href);if(res!==null&&res!==void 0&&res.ok){const json=await res.json();return json===null||json===void 0?void 0:json.events;}logger.info("Youtube Provider: Failed to fetch subtitles: ".concat(res.status));return null;}catch(error){logger.info("Youtube Provider: fetching subtitles error",error);return null;}}async function _aiSegment2(_ref3){let{videoId,fromLang,toLang,chunkEvents,segApiSetting}=_ref3;try{const events=chunkEvents.filter(item=>item.text);const chunkSign="".concat(events[0].start," --> ").concat(events[events.length-1].end);logger.debug("Youtube Provider: aiSegment events",{videoId,chunkSign,fromLang,toLang,events});const subtitles=await apiSubtitle({videoId,chunkSign,fromLang,toLang,events,apiSetting:segApiSetting});logger.debug("Youtube Provider: aiSegment subtitles",subtitles);if(Array.isArray(subtitles)){return subtitles;}}catch(err){logger.info("Youtube Provider: ai segmentation",err);}return[];}async function _handleInterceptedRequest2(url,responseText){const videoId=_classPrivateFieldBase(this,_videoId)[_videoId];if(!videoId){logger.debug("Youtube Provider: videoId not found.");return;}const potUrl=new URL(url);if(videoId!==potUrl.searchParams.get("v")){logger.debug("Youtube Provider: skip other timedtext:",videoId);return;}if(_classPrivateFieldBase(this,_flatEvents)[_flatEvents].length){logger.debug("Youtube Provider: video was processed:",videoId);return;}if(videoId===_classPrivateFieldBase(this,_processingId)[_processingId]){logger.debug("Youtube Provider: video is processing:",videoId);return;}_classPrivateFieldBase(this,_processingId)[_processingId]=videoId;try{_classPrivateFieldBase(this,_showNotification)[_showNotification](_classPrivateFieldBase(this,_i18n)[_i18n]("starting_to_process_subtitle"));const{toLang}=_classPrivateFieldBase(this,YouTubeCaptionProvider_setting)[YouTubeCaptionProvider_setting];const captionTracks=await _classPrivateFieldBase(this,_getCaptionTracks)[_getCaptionTracks](videoId);const captionTrack=_classPrivateFieldBase(this,_findCaptionTrack)[_findCaptionTrack](captionTracks);if(!captionTrack){logger.debug("Youtube Provider: CaptionTrack not found:",videoId);return;}const capUrl=new URL(captionTrack.baseUrl);const events=await _classPrivateFieldBase(this,_getSubtitleEvents)[_getSubtitleEvents](capUrl,potUrl,responseText);if(!(events!==null&&events!==void 0&&events.length)){logger.debug("Youtube Provider: events not got:",videoId);return;}const lang=potUrl.searchParams.get("lang");const fromLang=OPT_LANGS_TO_CODE[OPT_TRANS_MICROSOFT].get(lang)||OPT_LANGS_TO_CODE[OPT_TRANS_MICROSOFT].get(lang.slice(0,2))||"auto";logger.debug("Youtube Provider: fromLang: ".concat(fromLang,", toLang: ").concat(toLang));if(_classPrivateFieldBase(this,_isSameLang)[_isSameLang](fromLang,toLang)){logger.debug("Youtube Provider: skip same lang",fromLang,toLang);return;}const flatEvents=_classPrivateFieldBase(this,_genFlatEvents)[_genFlatEvents](events);if(!(flatEvents!==null&&flatEvents!==void 0&&flatEvents.length)){logger.debug("Youtube Provider: flatEvents not got:",videoId);return;}_classPrivateFieldBase(this,_flatEvents)[_flatEvents]=flatEvents;_classPrivateFieldBase(this,_fromLang)[_fromLang]=fromLang;_classPrivateFieldBase(this,_processEvents)[_processEvents]({videoId,flatEvents,fromLang});}catch(error){logger.warn("Youtube Provider: handle subtitle",error);_classPrivateFieldBase(this,_showNotification)[_showNotification](_classPrivateFieldBase(this,_i18n)[_i18n]("subtitle_load_failed"));}finally{_classPrivateFieldBase(this,_processingId)[_processingId]=null;}}async function _processEvents2(_ref4){let{videoId,flatEvents,fromLang}=_ref4;try{const[subtitles,progressed]=await _classPrivateFieldBase(this,_eventsToSubtitles)[_eventsToSubtitles]({videoId,flatEvents,fromLang});if(!(subtitles!==null&&subtitles!==void 0&&subtitles.length)){logger.debug("Youtube Provider: events to subtitles got empty",videoId);return;}if(videoId!==_classPrivateFieldBase(this,_videoId)[_videoId]){logger.debug("Youtube Provider: videoId changed!",videoId,_classPrivateFieldBase(this,_videoId)[_videoId]);return;}_classPrivateFieldBase(this,_subtitles)[_subtitles]=subtitles;_classPrivateFieldBase(this,_progressed)[_progressed]=progressed;_classPrivateFieldBase(this,_startManager)[_startManager]();}catch(error){logger.info("Youtube Provider: process events",error);_classPrivateFieldBase(this,_showNotification)[_showNotification](_classPrivateFieldBase(this,_i18n)[_i18n]("subtitle_load_failed"));}}function _reProcessEvents2(){const videoId=_classPrivateFieldBase(this,_videoId)[_videoId];const flatEvents=_classPrivateFieldBase(this,_flatEvents)[_flatEvents];const fromLang=_classPrivateFieldBase(this,_fromLang)[_fromLang];if(!videoId||!flatEvents.length){return;}_classPrivateFieldBase(this,_showNotification)[_showNotification](_classPrivateFieldBase(this,_i18n)[_i18n]("starting_reprocess_events"));_classPrivateFieldBase(this,_destroyManager)[_destroyManager]();_classPrivateFieldBase(this,_processEvents)[_processEvents]({videoId,flatEvents,fromLang});}async function _eventsToSubtitles2(_ref5){let{videoId,flatEvents,fromLang}=_ref5;const{isAISegment,segApiSetting,chunkLength,toLang}=_classPrivateFieldBase(this,YouTubeCaptionProvider_setting)[YouTubeCaptionProvider_setting];const subtitlesFallback=()=>[_classPrivateFieldBase(this,_formatSubtitles)[_formatSubtitles](flatEvents,fromLang),100];// potUrl.searchParams.get("kind") === "asr" -if(isAISegment&&segApiSetting){logger.info("Youtube Provider: Starting AI ...");_classPrivateFieldBase(this,_showNotification)[_showNotification](_classPrivateFieldBase(this,_i18n)[_i18n]("ai_processing_pls_wait"));const eventChunks=_classPrivateFieldBase(this,_splitEventsIntoChunks)[_splitEventsIntoChunks](flatEvents,chunkLength);if(eventChunks.length===0){return subtitlesFallback();}const firstChunkEvents=eventChunks[0];const firstBatchSubtitles=await _classPrivateFieldBase(this,_aiSegment)[_aiSegment]({videoId,chunkEvents:firstChunkEvents,fromLang,toLang,segApiSetting});if(!(firstBatchSubtitles!==null&&firstBatchSubtitles!==void 0&&firstBatchSubtitles.length)){return subtitlesFallback();}const chunkCount=eventChunks.length;if(chunkCount>1){const remainingChunks=eventChunks.slice(1);_classPrivateFieldBase(this,_processRemainingChunksAsync)[_processRemainingChunksAsync]({chunks:remainingChunks,chunkCount,videoId,fromLang,toLang,segApiSetting});return[firstBatchSubtitles,100/eventChunks.length];}else{return[firstBatchSubtitles,100];}}return subtitlesFallback();}function _startManager2(){if(_classPrivateFieldBase(this,_managerInstance)[_managerInstance]){return;}if(!_classPrivateFieldBase(this,_subtitles)[_subtitles].length){_classPrivateFieldBase(this,_showNotification)[_showNotification](_classPrivateFieldBase(this,_i18n)[_i18n]("waitting_for_subtitle"));return;}const videoEl=_classPrivateFieldBase(this,YouTubeCaptionProvider_videoEl)[YouTubeCaptionProvider_videoEl];if(!videoEl){logger.warn("Youtube Provider: No video element found");return;}logger.info("Youtube Provider: Starting manager...");_classPrivateFieldBase(this,_managerInstance)[_managerInstance]=new BilingualSubtitleManager({videoEl,formattedSubtitles:_classPrivateFieldBase(this,_subtitles)[_subtitles],setting:_objectSpread2(_objectSpread2({},_classPrivateFieldBase(this,YouTubeCaptionProvider_setting)[YouTubeCaptionProvider_setting]),{},{fromLang:_classPrivateFieldBase(this,_fromLang)[_fromLang]})});_classPrivateFieldBase(this,_managerInstance)[_managerInstance].start();_classPrivateFieldBase(this,_showNotification)[_showNotification](_classPrivateFieldBase(this,_i18n)[_i18n]("subtitle_load_succeed"));const ytCaption=document.querySelector(YT_CAPTION_SELECT);ytCaption&&(ytCaption.style.display="none");}function _destroyManager2(){if(!_classPrivateFieldBase(this,_managerInstance)[_managerInstance]){return;}logger.info("Youtube Provider: Destroying manager...");_classPrivateFieldBase(this,_managerInstance)[_managerInstance].destroy();_classPrivateFieldBase(this,_managerInstance)[_managerInstance]=null;const ytCaption=document.querySelector(YT_CAPTION_SELECT);ytCaption&&(ytCaption.style.display="block");}function _formatSubtitles2(flatEvents,lang){if(!(flatEvents!==null&&flatEvents!==void 0&&flatEvents.length))return[];const noSpaceLanguages=["zh",// 中文 +const VIDEO_SELECT="#container video";const CONTORLS_SELECT=".ytp-right-controls";const YT_CAPTION_SELECT="#ytp-caption-window-container";const YT_AD_SELECT=".video-ads";const YT_SUBTITLE_BTN_SELECT="button.ytp-subtitles-button";var YouTubeCaptionProvider_setting=/*#__PURE__*/_classPrivateFieldKey("setting");var _subtitles=/*#__PURE__*/_classPrivateFieldKey("subtitles");var _flatEvents=/*#__PURE__*/_classPrivateFieldKey("flatEvents");var _progressedNum=/*#__PURE__*/_classPrivateFieldKey("progressedNum");var _fromLang=/*#__PURE__*/_classPrivateFieldKey("fromLang");var _processingId=/*#__PURE__*/_classPrivateFieldKey("processingId");var _managerInstance=/*#__PURE__*/_classPrivateFieldKey("managerInstance");var _toggleButton=/*#__PURE__*/_classPrivateFieldKey("toggleButton");var _isMenuShow=/*#__PURE__*/_classPrivateFieldKey("isMenuShow");var _notificationEl=/*#__PURE__*/_classPrivateFieldKey("notificationEl");var _notificationTimeout=/*#__PURE__*/_classPrivateFieldKey("notificationTimeout");var _i18n=/*#__PURE__*/_classPrivateFieldKey("i18n");var _menuEventName=/*#__PURE__*/_classPrivateFieldKey("menuEventName");var _videoId=/*#__PURE__*/_classPrivateFieldKey("videoId");var YouTubeCaptionProvider_videoEl=/*#__PURE__*/_classPrivateFieldKey("videoEl");var _progressed=/*#__PURE__*/_classPrivateFieldKey("progressed");var _moAds=/*#__PURE__*/_classPrivateFieldKey("moAds");var _waitForElement=/*#__PURE__*/_classPrivateFieldKey("waitForElement");var _toggleShowOrigin=/*#__PURE__*/_classPrivateFieldKey("toggleShowOrigin");var _sendMenusMsg=/*#__PURE__*/_classPrivateFieldKey("sendMenusMsg");var _injectToggleButton=/*#__PURE__*/_classPrivateFieldKey("injectToggleButton");var _isSameLang=/*#__PURE__*/_classPrivateFieldKey("isSameLang");var _findCaptionTrack=/*#__PURE__*/_classPrivateFieldKey("findCaptionTrack");var _getCaptionTracks=/*#__PURE__*/_classPrivateFieldKey("getCaptionTracks");var _getSubtitleEvents=/*#__PURE__*/_classPrivateFieldKey("getSubtitleEvents");var _aiSegment=/*#__PURE__*/_classPrivateFieldKey("aiSegment");var _handleInterceptedRequest=/*#__PURE__*/_classPrivateFieldKey("handleInterceptedRequest");var _processEvents=/*#__PURE__*/_classPrivateFieldKey("processEvents");var _reProcessEvents=/*#__PURE__*/_classPrivateFieldKey("reProcessEvents");var _eventsToSubtitles=/*#__PURE__*/_classPrivateFieldKey("eventsToSubtitles");var _startManager=/*#__PURE__*/_classPrivateFieldKey("startManager");var _destroyManager=/*#__PURE__*/_classPrivateFieldKey("destroyManager");var _hideYtCaption=/*#__PURE__*/_classPrivateFieldKey("hideYtCaption");var _showYtCaption=/*#__PURE__*/_classPrivateFieldKey("showYtCaption");var _formatSubtitles=/*#__PURE__*/_classPrivateFieldKey("formatSubtitles");var _isQualityPoor=/*#__PURE__*/_classPrivateFieldKey("isQualityPoor");var _processSubtitles=/*#__PURE__*/_classPrivateFieldKey("processSubtitles");var _genFlatEvents=/*#__PURE__*/_classPrivateFieldKey("genFlatEvents");var _splitEventsIntoChunks=/*#__PURE__*/_classPrivateFieldKey("splitEventsIntoChunks");var _processRemainingChunksAsync=/*#__PURE__*/_classPrivateFieldKey("processRemainingChunksAsync");var _createNotificationElement=/*#__PURE__*/_classPrivateFieldKey("createNotificationElement");var _showNotification=/*#__PURE__*/_classPrivateFieldKey("showNotification");class YouTubeCaptionProvider{constructor(){let setting=arguments.length>0&&arguments[0]!==undefined?arguments[0]:{};Object.defineProperty(this,_showNotification,{value:_showNotification2});Object.defineProperty(this,_createNotificationElement,{value:_createNotificationElement2});Object.defineProperty(this,_processRemainingChunksAsync,{value:_processRemainingChunksAsync2});Object.defineProperty(this,_splitEventsIntoChunks,{value:_splitEventsIntoChunks2});Object.defineProperty(this,_genFlatEvents,{value:_genFlatEvents2});Object.defineProperty(this,_processSubtitles,{value:_processSubtitles2});Object.defineProperty(this,_isQualityPoor,{value:_isQualityPoor2});Object.defineProperty(this,_formatSubtitles,{value:_formatSubtitles2});Object.defineProperty(this,_showYtCaption,{value:_showYtCaption2});Object.defineProperty(this,_hideYtCaption,{value:_hideYtCaption2});Object.defineProperty(this,_destroyManager,{value:_destroyManager2});Object.defineProperty(this,_startManager,{value:_startManager2});Object.defineProperty(this,_eventsToSubtitles,{value:_eventsToSubtitles2});Object.defineProperty(this,_reProcessEvents,{value:_reProcessEvents2});Object.defineProperty(this,_processEvents,{value:_processEvents2});Object.defineProperty(this,_handleInterceptedRequest,{value:_handleInterceptedRequest2});Object.defineProperty(this,_aiSegment,{value:_aiSegment2});Object.defineProperty(this,_getSubtitleEvents,{value:_getSubtitleEvents2});Object.defineProperty(this,_getCaptionTracks,{value:_getCaptionTracks2});// todo: 优化逻辑 +Object.defineProperty(this,_findCaptionTrack,{value:_findCaptionTrack2});Object.defineProperty(this,_isSameLang,{value:_isSameLang2});Object.defineProperty(this,_injectToggleButton,{value:_injectToggleButton2});Object.defineProperty(this,_sendMenusMsg,{value:_sendMenusMsg2});Object.defineProperty(this,_toggleShowOrigin,{value:_toggleShowOrigin2});Object.defineProperty(this,_waitForElement,{value:_waitForElement2});Object.defineProperty(this,_moAds,{value:_moAds2});Object.defineProperty(this,_progressed,{get:_get_progressed,set:_set_progressed});Object.defineProperty(this,YouTubeCaptionProvider_videoEl,{get:_get_videoEl,set:void 0});Object.defineProperty(this,_videoId,{get:_get_videoId,set:void 0});Object.defineProperty(this,YouTubeCaptionProvider_setting,{writable:true,value:{}});Object.defineProperty(this,_subtitles,{writable:true,value:[]});Object.defineProperty(this,_flatEvents,{writable:true,value:[]});Object.defineProperty(this,_progressedNum,{writable:true,value:0});Object.defineProperty(this,_fromLang,{writable:true,value:"auto"});Object.defineProperty(this,_processingId,{writable:true,value:null});Object.defineProperty(this,_managerInstance,{writable:true,value:null});Object.defineProperty(this,_toggleButton,{writable:true,value:null});Object.defineProperty(this,_isMenuShow,{writable:true,value:false});Object.defineProperty(this,_notificationEl,{writable:true,value:null});Object.defineProperty(this,_notificationTimeout,{writable:true,value:null});Object.defineProperty(this,_i18n,{writable:true,value:()=>""});Object.defineProperty(this,_menuEventName,{writable:true,value:"kiss-event"});_classPrivateFieldBase(this,YouTubeCaptionProvider_setting)[YouTubeCaptionProvider_setting]=_objectSpread2(_objectSpread2({},setting),{},{isAISegment:false,showOrigin:false});_classPrivateFieldBase(this,_i18n)[_i18n]=newI18n(setting.uiLang||"zh");_classPrivateFieldBase(this,_menuEventName)[_menuEventName]=utils_genEventName();}initialize(){window.addEventListener("message",event=>{var _event$data;if(((_event$data=event.data)===null||_event$data===void 0?void 0:_event$data.type)===MSG_XHR_DATA_YOUTUBE){const{url,response}=event.data;if(url&&response){_classPrivateFieldBase(this,_handleInterceptedRequest)[_handleInterceptedRequest](url,response);}}});window.addEventListener("yt-navigate-finish",()=>{logger.debug("Youtube Provider: yt-navigate-finish",_classPrivateFieldBase(this,_videoId)[_videoId]);_classPrivateFieldBase(this,_destroyManager)[_destroyManager]();_classPrivateFieldBase(this,_subtitles)[_subtitles]=[];_classPrivateFieldBase(this,_flatEvents)[_flatEvents]=[];_classPrivateFieldBase(this,_progressed)[_progressed]=0;_classPrivateFieldBase(this,_fromLang)[_fromLang]="auto";_classPrivateFieldBase(this,YouTubeCaptionProvider_setting)[YouTubeCaptionProvider_setting].isAISegment=false;_classPrivateFieldBase(this,_sendMenusMsg)[_sendMenusMsg]({action:MSG_MENUS_UPDATEFORM,data:{isAISegment:false}});});_classPrivateFieldBase(this,_waitForElement)[_waitForElement](CONTORLS_SELECT,ytControls=>{const ytSubtitleBtn=ytControls.querySelector(YT_SUBTITLE_BTN_SELECT);if(ytSubtitleBtn){ytSubtitleBtn.addEventListener("click",()=>{if(ytSubtitleBtn.getAttribute("aria-pressed")==="true"){_classPrivateFieldBase(this,_startManager)[_startManager]();}else{_classPrivateFieldBase(this,_destroyManager)[_destroyManager]();}});}_classPrivateFieldBase(this,_injectToggleButton)[_injectToggleButton](ytControls);});_classPrivateFieldBase(this,_waitForElement)[_waitForElement](YT_AD_SELECT,adContainer=>{_classPrivateFieldBase(this,_moAds)[_moAds](adContainer);});}updateSetting(_ref){let{name,value}=_ref;if(_classPrivateFieldBase(this,YouTubeCaptionProvider_setting)[YouTubeCaptionProvider_setting][name]===value)return;logger.debug("Youtube Provider: update setting",name,value);_classPrivateFieldBase(this,YouTubeCaptionProvider_setting)[YouTubeCaptionProvider_setting][name]=value;if(name==="isBilingual"){var _classPrivateFieldLoo;(_classPrivateFieldLoo=_classPrivateFieldBase(this,_managerInstance)[_managerInstance])===null||_classPrivateFieldLoo===void 0?void 0:_classPrivateFieldLoo.updateSetting({[name]:value});}else if(name==="isAISegment"){_classPrivateFieldBase(this,_reProcessEvents)[_reProcessEvents]();}else if(name==="showOrigin"){_classPrivateFieldBase(this,_toggleShowOrigin)[_toggleShowOrigin]();}}downloadSubtitle(){if(!_classPrivateFieldBase(this,_subtitles)[_subtitles].length||_classPrivateFieldBase(this,_progressed)[_progressed]!==100){logger.debug("Youtube Provider: The subtitle is not yet ready.");return;}try{const vtt=buildBilingualVtt(_classPrivateFieldBase(this,_subtitles)[_subtitles]);downloadBlobFile(vtt,"kiss-subtitles-".concat(_classPrivateFieldBase(this,_videoId)[_videoId],"_").concat(Date.now(),".vtt"));}catch(error){logger.info("Youtube Provider: download subtitles:",error);}}}function _get_videoId(){const docUrl=new URL(document.location.href);return docUrl.searchParams.get("v");}function _get_videoEl(){return document.querySelector(VIDEO_SELECT);}function _set_progressed(num){_classPrivateFieldBase(this,_progressedNum)[_progressedNum]=num;_classPrivateFieldBase(this,_sendMenusMsg)[_sendMenusMsg]({action:MSG_MENUS_PROGRESSED,data:num});}function _get_progressed(){return _classPrivateFieldBase(this,_progressedNum)[_progressedNum];}function _moAds2(adContainer){const adLayoutSelector=".ytp-ad-player-overlay-layout";const skipBtnSelector=".ytp-skip-ad-button, .ytp-ad-skip-button, .ytp-ad-skip-button-modern";const observer=new MutationObserver(mutations=>{const{skipAd=false}=_classPrivateFieldBase(this,YouTubeCaptionProvider_setting)[YouTubeCaptionProvider_setting];for(const mutation of mutations){if(mutation.type==="childList"){const videoEl=_classPrivateFieldBase(this,YouTubeCaptionProvider_videoEl)[YouTubeCaptionProvider_videoEl];mutation.addedNodes.forEach(node=>{if(node.nodeType!==Node.ELEMENT_NODE)return;if(node.matches(adLayoutSelector)){logger.debug("Youtube Provider: AD start playing!",node);// todo: 顺带把广告快速跳过 +if(videoEl&&skipAd){videoEl.playbackRate=16;videoEl.currentTime=videoEl.duration;}if(_classPrivateFieldBase(this,_managerInstance)[_managerInstance]){_classPrivateFieldBase(this,_managerInstance)[_managerInstance].setIsAdPlaying(true);}}else if(node.matches(skipBtnSelector)&&skipAd){logger.debug("Youtube Provider: AD skip button!",node);node.click();}if(skipAd){const skipBtn=node===null||node===void 0?void 0:node.querySelector(skipBtnSelector);if(skipBtn){logger.debug("Youtube Provider: AD skip button!!",skipBtn);skipBtn.click();}}});mutation.removedNodes.forEach(node=>{if(node.nodeType!==Node.ELEMENT_NODE)return;if(node.matches(adLayoutSelector)){logger.debug("Youtube Provider: Ad ends!");if(!_classPrivateFieldBase(this,YouTubeCaptionProvider_setting)[YouTubeCaptionProvider_setting].showOrigin){_classPrivateFieldBase(this,_hideYtCaption)[_hideYtCaption]();}if(videoEl&&skipAd){videoEl.playbackRate=1;}if(_classPrivateFieldBase(this,_managerInstance)[_managerInstance]){_classPrivateFieldBase(this,_managerInstance)[_managerInstance].setIsAdPlaying(false);}}});}}});observer.observe(adContainer,{childList:true,subtree:true});}function _waitForElement2(selector,callback){const element=document.querySelector(selector);if(element){callback(element);return;}const observer=new MutationObserver((mutations,obs)=>{const targetNode=document.querySelector(selector);if(targetNode){obs.disconnect();callback(targetNode);}});observer.observe(document.body,{childList:true,subtree:true});}function _toggleShowOrigin2(){if(_classPrivateFieldBase(this,YouTubeCaptionProvider_setting)[YouTubeCaptionProvider_setting].showOrigin){_classPrivateFieldBase(this,_destroyManager)[_destroyManager]();}else{_classPrivateFieldBase(this,_startManager)[_startManager]();}}function _sendMenusMsg2(_ref2){let{action,data}=_ref2;window.dispatchEvent(new CustomEvent(_classPrivateFieldBase(this,_menuEventName)[_menuEventName],{detail:{action,data}}));}function _injectToggleButton2(ytControls){const kissControls=document.createElement("div");kissControls.className="notranslate kiss-subtitle-controls";Object.assign(kissControls.style,{height:"100%",position:"relative"});const toggleButton=document.createElement("button");toggleButton.className="ytp-button kiss-subtitle-button";toggleButton.title=APP_NAME;toggleButton.appendChild(createLogoSVG());kissControls.appendChild(toggleButton);const{segApiSetting,isAISegment,skipAd,isBilingual,showOrigin}=_classPrivateFieldBase(this,YouTubeCaptionProvider_setting)[YouTubeCaptionProvider_setting];const menu=new ShadowDomManager({id:"kiss-subtitle-menus",className:"notranslate",reactComponent:Menus,rootElement:kissControls,props:{i18n:_classPrivateFieldBase(this,_i18n)[_i18n],updateSetting:this.updateSetting.bind(this),downloadSubtitle:this.downloadSubtitle.bind(this),hasSegApi:!!segApiSetting,eventName:_classPrivateFieldBase(this,_menuEventName)[_menuEventName],initData:{isAISegment,// AI智能断句 +skipAd,// 快进广告 +isBilingual,// 双语显示 +showOrigin// 显示原字幕 +}}});toggleButton.onclick=()=>{if(!_classPrivateFieldBase(this,_isMenuShow)[_isMenuShow]){var _classPrivateFieldLoo2;_classPrivateFieldBase(this,_isMenuShow)[_isMenuShow]=true;(_classPrivateFieldLoo2=_classPrivateFieldBase(this,_toggleButton)[_toggleButton])===null||_classPrivateFieldLoo2===void 0?void 0:_classPrivateFieldLoo2.replaceChildren(createLogoSVG({isSelected:true}));menu.show();_classPrivateFieldBase(this,_sendMenusMsg)[_sendMenusMsg]({action:MSG_MENUS_PROGRESSED,data:_classPrivateFieldBase(this,_progressed)[_progressed]});}else{var _classPrivateFieldLoo3;_classPrivateFieldBase(this,_isMenuShow)[_isMenuShow]=false;(_classPrivateFieldLoo3=_classPrivateFieldBase(this,_toggleButton)[_toggleButton])===null||_classPrivateFieldLoo3===void 0?void 0:_classPrivateFieldLoo3.replaceChildren(createLogoSVG());menu.hide();}};_classPrivateFieldBase(this,_toggleButton)[_toggleButton]=toggleButton;ytControls===null||ytControls===void 0?void 0:ytControls.prepend(kissControls);}function _isSameLang2(lang1,lang2){return lang1.slice(0,2)===lang2.slice(0,2);}function _findCaptionTrack2(captionTracks){if(!(captionTracks!==null&&captionTracks!==void 0&&captionTracks.length)){return null;}let captionTrack=null;const asrTrack=captionTracks.find(item=>item.kind==="asr");if(asrTrack){captionTrack=captionTracks.find(item=>item.kind!=="asr"&&_classPrivateFieldBase(this,_isSameLang)[_isSameLang](item.languageCode,asrTrack.languageCode));if(!captionTrack){captionTrack=asrTrack;}}if(!captionTrack){captionTrack=captionTracks.pop();}return captionTrack;}async function _getCaptionTracks2(videoId){try{var _data$captions,_data$captions$player;const url="https://www.youtube.com/watch?v=".concat(videoId);const html=await fetch(url).then(r=>r.text());const match=html.match(/ytInitialPlayerResponse\s*=\s*(\{[\s\S]*?\});/);if(!match)return[];const data=JSON.parse(match[1]);return(_data$captions=data.captions)===null||_data$captions===void 0?void 0:(_data$captions$player=_data$captions.playerCaptionsTracklistRenderer)===null||_data$captions$player===void 0?void 0:_data$captions$player.captionTracks;}catch(err){logger.info("Youtube Provider: get captionTracks",err);}}async function _getSubtitleEvents2(capUrl,potUrl,responseText){if(!potUrl.searchParams.get("tlang")&&potUrl.searchParams.get("kind")===capUrl.searchParams.get("kind")&&_classPrivateFieldBase(this,_isSameLang)[_isSameLang](potUrl.searchParams.get("lang"),capUrl.searchParams.get("lang"))){try{const json=JSON.parse(responseText);return json===null||json===void 0?void 0:json.events;}catch(err){logger.info("Youtube Provider: parse responseText",err);return null;}}try{potUrl.searchParams.delete("tlang");potUrl.searchParams.set("lang",capUrl.searchParams.get("lang"));potUrl.searchParams.set("fmt","json3");if(capUrl.searchParams.get("kind")){potUrl.searchParams.set("kind",capUrl.searchParams.get("kind"));}else{potUrl.searchParams.delete("kind");}const res=await fetch(potUrl.href);if(res!==null&&res!==void 0&&res.ok){const json=await res.json();return json===null||json===void 0?void 0:json.events;}logger.info("Youtube Provider: Failed to fetch subtitles: ".concat(res.status));return null;}catch(error){logger.info("Youtube Provider: fetching subtitles error",error);return null;}}async function _aiSegment2(_ref3){let{videoId,fromLang,toLang,chunkEvents,segApiSetting}=_ref3;try{const events=chunkEvents.filter(item=>item.text);const chunkSign="".concat(events[0].start," --> ").concat(events[events.length-1].end);logger.debug("Youtube Provider: aiSegment events",{videoId,chunkSign,fromLang,toLang,events});const subtitles=await apiSubtitle({videoId,chunkSign,fromLang,toLang,events,apiSetting:segApiSetting});logger.debug("Youtube Provider: aiSegment subtitles",subtitles);if(Array.isArray(subtitles)){return subtitles;}}catch(err){logger.info("Youtube Provider: ai segmentation",err);}return[];}async function _handleInterceptedRequest2(url,responseText){const videoId=_classPrivateFieldBase(this,_videoId)[_videoId];if(!videoId){logger.debug("Youtube Provider: videoId not found.");return;}const potUrl=new URL(url);if(videoId!==potUrl.searchParams.get("v")){logger.debug("Youtube Provider: skip other timedtext:",videoId);return;}if(_classPrivateFieldBase(this,_flatEvents)[_flatEvents].length){logger.debug("Youtube Provider: video was processed:",videoId);return;}if(videoId===_classPrivateFieldBase(this,_processingId)[_processingId]){logger.debug("Youtube Provider: video is processing:",videoId);return;}_classPrivateFieldBase(this,_processingId)[_processingId]=videoId;try{_classPrivateFieldBase(this,_showNotification)[_showNotification](_classPrivateFieldBase(this,_i18n)[_i18n]("starting_to_process_subtitle"));const{toLang}=_classPrivateFieldBase(this,YouTubeCaptionProvider_setting)[YouTubeCaptionProvider_setting];const captionTracks=await _classPrivateFieldBase(this,_getCaptionTracks)[_getCaptionTracks](videoId);const captionTrack=_classPrivateFieldBase(this,_findCaptionTrack)[_findCaptionTrack](captionTracks);if(!captionTrack){logger.debug("Youtube Provider: CaptionTrack not found:",videoId);return;}const capUrl=new URL(captionTrack.baseUrl);const events=await _classPrivateFieldBase(this,_getSubtitleEvents)[_getSubtitleEvents](capUrl,potUrl,responseText);if(!(events!==null&&events!==void 0&&events.length)){logger.debug("Youtube Provider: events not got:",videoId);return;}const lang=potUrl.searchParams.get("lang");const fromLang=OPT_LANGS_TO_CODE[OPT_TRANS_MICROSOFT].get(lang)||OPT_LANGS_TO_CODE[OPT_TRANS_MICROSOFT].get(lang.slice(0,2))||"auto";logger.debug("Youtube Provider: fromLang: ".concat(fromLang,", toLang: ").concat(toLang));if(_classPrivateFieldBase(this,_isSameLang)[_isSameLang](fromLang,toLang)){logger.debug("Youtube Provider: skip same lang",fromLang,toLang);return;}const flatEvents=_classPrivateFieldBase(this,_genFlatEvents)[_genFlatEvents](events);if(!(flatEvents!==null&&flatEvents!==void 0&&flatEvents.length)){logger.debug("Youtube Provider: flatEvents not got:",videoId);return;}_classPrivateFieldBase(this,_flatEvents)[_flatEvents]=flatEvents;_classPrivateFieldBase(this,_fromLang)[_fromLang]=fromLang;_classPrivateFieldBase(this,_processEvents)[_processEvents]({videoId,flatEvents,fromLang});}catch(error){logger.warn("Youtube Provider: handle subtitle",error);_classPrivateFieldBase(this,_showNotification)[_showNotification](_classPrivateFieldBase(this,_i18n)[_i18n]("subtitle_load_failed"));}finally{_classPrivateFieldBase(this,_processingId)[_processingId]=null;}}async function _processEvents2(_ref4){let{videoId,flatEvents,fromLang}=_ref4;try{const[subtitles,progressed]=await _classPrivateFieldBase(this,_eventsToSubtitles)[_eventsToSubtitles]({videoId,flatEvents,fromLang});if(!(subtitles!==null&&subtitles!==void 0&&subtitles.length)){logger.debug("Youtube Provider: events to subtitles got empty",videoId);return;}if(videoId!==_classPrivateFieldBase(this,_videoId)[_videoId]){logger.debug("Youtube Provider: videoId changed!",videoId,_classPrivateFieldBase(this,_videoId)[_videoId]);return;}_classPrivateFieldBase(this,_subtitles)[_subtitles]=subtitles;_classPrivateFieldBase(this,_progressed)[_progressed]=progressed;_classPrivateFieldBase(this,_startManager)[_startManager]();}catch(error){logger.info("Youtube Provider: process events",error);_classPrivateFieldBase(this,_showNotification)[_showNotification](_classPrivateFieldBase(this,_i18n)[_i18n]("subtitle_load_failed"));}}function _reProcessEvents2(){_classPrivateFieldBase(this,_progressed)[_progressed]=0;_classPrivateFieldBase(this,_subtitles)[_subtitles]=[];const videoId=_classPrivateFieldBase(this,_videoId)[_videoId];const flatEvents=_classPrivateFieldBase(this,_flatEvents)[_flatEvents];const fromLang=_classPrivateFieldBase(this,_fromLang)[_fromLang];if(!videoId||!flatEvents.length){return;}_classPrivateFieldBase(this,_showNotification)[_showNotification](_classPrivateFieldBase(this,_i18n)[_i18n]("starting_reprocess_events"));_classPrivateFieldBase(this,_destroyManager)[_destroyManager]();_classPrivateFieldBase(this,_processEvents)[_processEvents]({videoId,flatEvents,fromLang});}async function _eventsToSubtitles2(_ref5){let{videoId,flatEvents,fromLang}=_ref5;const{isAISegment,segApiSetting,chunkLength,toLang}=_classPrivateFieldBase(this,YouTubeCaptionProvider_setting)[YouTubeCaptionProvider_setting];const subtitlesFallback=()=>[_classPrivateFieldBase(this,_formatSubtitles)[_formatSubtitles](flatEvents,fromLang),100];// potUrl.searchParams.get("kind") === "asr" +if(isAISegment&&segApiSetting){logger.info("Youtube Provider: Starting AI ...");_classPrivateFieldBase(this,_showNotification)[_showNotification](_classPrivateFieldBase(this,_i18n)[_i18n]("ai_processing_pls_wait"));const eventChunks=_classPrivateFieldBase(this,_splitEventsIntoChunks)[_splitEventsIntoChunks](flatEvents,chunkLength);if(eventChunks.length===0){return subtitlesFallback();}const firstChunkEvents=eventChunks[0];const firstBatchSubtitles=await _classPrivateFieldBase(this,_aiSegment)[_aiSegment]({videoId,chunkEvents:firstChunkEvents,fromLang,toLang,segApiSetting});if(!(firstBatchSubtitles!==null&&firstBatchSubtitles!==void 0&&firstBatchSubtitles.length)){return subtitlesFallback();}if(eventChunks.length>1){const remainingChunks=eventChunks.slice(1);_classPrivateFieldBase(this,_processRemainingChunksAsync)[_processRemainingChunksAsync]({chunks:remainingChunks,videoId,fromLang,toLang,segApiSetting});const processed=Math.floor(100/eventChunks.length);return[firstBatchSubtitles,processed];}else{return[firstBatchSubtitles,100];}}return subtitlesFallback();}function _startManager2(){if(_classPrivateFieldBase(this,_managerInstance)[_managerInstance]){return;}if(_classPrivateFieldBase(this,YouTubeCaptionProvider_setting)[YouTubeCaptionProvider_setting].showOrigin){return;}if(!_classPrivateFieldBase(this,_subtitles)[_subtitles].length){_classPrivateFieldBase(this,_showNotification)[_showNotification](_classPrivateFieldBase(this,_i18n)[_i18n]("waitting_for_subtitle"));return;}const videoEl=_classPrivateFieldBase(this,YouTubeCaptionProvider_videoEl)[YouTubeCaptionProvider_videoEl];if(!videoEl){logger.warn("Youtube Provider: No video element found");return;}logger.info("Youtube Provider: Starting manager...");_classPrivateFieldBase(this,_managerInstance)[_managerInstance]=new BilingualSubtitleManager({videoEl,formattedSubtitles:_classPrivateFieldBase(this,_subtitles)[_subtitles],setting:_objectSpread2(_objectSpread2({},_classPrivateFieldBase(this,YouTubeCaptionProvider_setting)[YouTubeCaptionProvider_setting]),{},{fromLang:_classPrivateFieldBase(this,_fromLang)[_fromLang]})});_classPrivateFieldBase(this,_managerInstance)[_managerInstance].start();_classPrivateFieldBase(this,_showNotification)[_showNotification](_classPrivateFieldBase(this,_i18n)[_i18n]("subtitle_load_succeed"));_classPrivateFieldBase(this,_hideYtCaption)[_hideYtCaption]();}function _destroyManager2(){if(!_classPrivateFieldBase(this,_managerInstance)[_managerInstance]){return;}logger.info("Youtube Provider: Destroying manager...");_classPrivateFieldBase(this,_managerInstance)[_managerInstance].destroy();_classPrivateFieldBase(this,_managerInstance)[_managerInstance]=null;_classPrivateFieldBase(this,_showYtCaption)[_showYtCaption]();}function _hideYtCaption2(){const ytCaption=document.querySelector(YT_CAPTION_SELECT);ytCaption&&(ytCaption.style.display="none");}function _showYtCaption2(){const ytCaption=document.querySelector(YT_CAPTION_SELECT);ytCaption&&(ytCaption.style.display="block");}function _formatSubtitles2(flatEvents,lang){if(!(flatEvents!==null&&flatEvents!==void 0&&flatEvents.length))return[];const noSpaceLanguages=["zh",// 中文 "ja",// 日文 "ko",// 韩文(现代用空格,但结构上仍可连写) "th",// 泰文 "lo",// 老挝文 "km",// 高棉文 "my"// 缅文 -];if(noSpaceLanguages.some(l=>lang===null||lang===void 0?void 0:lang.startsWith(l))){const subtitles=[];let currentLine=null;const MAX_LENGTH=100;for(const segment of flatEvents){if(segment.text){if(!currentLine){currentLine={text:segment.text,start:segment.start,end:segment.end};}else{currentLine.text+=segment.text;currentLine.end=segment.end;}if(currentLine.text.length>=MAX_LENGTH){subtitles.push(currentLine);currentLine=null;}}else{if(currentLine){subtitles.push(currentLine);currentLine=null;}}}if(currentLine){subtitles.push(currentLine);}return subtitles;}let subtitles=_classPrivateFieldBase(this,_processSubtitles)[_processSubtitles]({flatEvents});const isPoor=_classPrivateFieldBase(this,_isQualityPoor)[_isQualityPoor](subtitles);logger.debug("Youtube Provider: isQualityPoor",{isPoor,subtitles});if(isPoor){subtitles=_classPrivateFieldBase(this,_processSubtitles)[_processSubtitles]({flatEvents,usePause:true});}return subtitles;}function _isQualityPoor2(lines){let lengthThreshold=arguments.length>1&&arguments[1]!==undefined?arguments[1]:250;let percentageThreshold=arguments.length>2&&arguments[2]!==undefined?arguments[2]:0.2;if(lines.length===0)return false;const longLinesCount=lines.filter(line=>line.text.length>lengthThreshold).length;return longLinesCount/lines.length>percentageThreshold;}function _processSubtitles2(){let{flatEvents,usePause=false,timeout=1000,maxWords=15}=arguments.length>0&&arguments[0]!==undefined?arguments[0]:{};const groupedPauseWords={1:new Set(["actually","also","although","and","anyway","as","basically","because","but","eventually","frankly","honestly","hopefully","however","if","instead","it's","just","let's","like","literally","maybe","meanwhile","nevertheless","nonetheless","now","okay","or","otherwise","perhaps","personally","probably","right","since","so","suddenly","that's","then","there's","therefore","though","thus","unless","until","well","while"]),2:new Set(["after all","at first","at least","even if","even though","for example","for instance","i believe","i guess","i mean","i suppose","i think","in fact","in the end","of course","then again","to be fair","you know","you see"]),3:new Set(["as a result","by the way","in other words","in that case","in this case","to be clear","to be honest"])};const sentences=[];let currentBuffer=[];let bufferWordCount=0;const flushBuffer=()=>{if(currentBuffer.length>0){sentences.push({text:currentBuffer.map(s=>s.text).join(" ").trim(),start:currentBuffer[0].start,end:currentBuffer[currentBuffer.length-1].end});}currentBuffer=[];bufferWordCount=0;};flatEvents.forEach(segment=>{if(!segment.text)return;const lastSegment=currentBuffer[currentBuffer.length-1];if(lastSegment){const isEndOfSentence=/[.?!…\])]$/.test(lastSegment.text);const isPauseOfSentence=/[,]$/.test(lastSegment.text);const isTimeout=segment.start-lastSegment.end>timeout;const isWordLimitExceeded=(usePause||isPauseOfSentence)&&bufferWordCount>=maxWords;const startsWithSign=/^[[(♪]/.test(segment.text);const startsWithPauseWord=usePause&&groupedPauseWords["1"].has(segment.text.toLowerCase().split(" ")[0])&¤tBuffer.length>1;if(isEndOfSentence||isTimeout||isWordLimitExceeded||startsWithSign||startsWithPauseWord){flushBuffer();}}currentBuffer.push(segment);bufferWordCount+=segment.text.split(/\s+/).length;});flushBuffer();return sentences;}function _genFlatEvents2(){let events=arguments.length>0&&arguments[0]!==undefined?arguments[0]:[];const segments=[];let buffer=null;events.forEach(_ref6=>{let{segs=[],tStartMs=0,dDurationMs=0}=_ref6;segs.forEach((_ref7,j)=>{let{utf8="",tOffsetMs=0}=_ref7;const text=utf8.trim().replace(/\s+/g," ");const start=tStartMs+tOffsetMs;if(buffer){if(!buffer.end||buffer.end>start){buffer.end=start;}segments.push(buffer);buffer=null;}buffer={text,start};if(j===segs.length-1){buffer.end=tStartMs+dDurationMs;}});});segments.push(buffer);return segments;}function _splitEventsIntoChunks2(flatEvents){let chunkLength=arguments.length>1&&arguments[1]!==undefined?arguments[1]:1000;if(!flatEvents||flatEvents.length===0){return[];}const eventChunks=[];let currentChunk=[];let currentChunkTextLength=0;const MAX_CHUNK_LENGTH=chunkLength+500;const PAUSE_THRESHOLD_MS=1000;for(let i=0;i=MAX_CHUNK_LENGTH){shouldSplit=true;}else if(currentChunkTextLength>=chunkLength){const isEndOfSentence=/[.?!…\])]$/.test(event.text);const nextEvent=flatEvents[i+1];const pauseDuration=nextEvent.start-event.end;if(isEndOfSentence||pauseDuration>PAUSE_THRESHOLD_MS){shouldSplit=true;}}if(shouldSplit){eventChunks.push(currentChunk);currentChunk=[];currentChunkTextLength=0;}}if(currentChunk.length>0){eventChunks.push(currentChunk);}return eventChunks;}async function _processRemainingChunksAsync2(_ref8){let{chunks,chunkCount,videoId,fromLang,toLang,segApiSetting}=_ref8;logger.info("Youtube Provider: Starting for ".concat(chunks.length," chunks."));for(let i=0;i ").concat((_chunkEvents=chunkEvents[chunkEvents.length-1])===null||_chunkEvents===void 0?void 0:_chunkEvents.start));let subtitlesForThisChunk=[];try{const aiSubtitles=await _classPrivateFieldBase(this,_aiSegment)[_aiSegment]({videoId,chunkEvents,fromLang,toLang,segApiSetting});if((aiSubtitles===null||aiSubtitles===void 0?void 0:aiSubtitles.length)>0){subtitlesForThisChunk=aiSubtitles;}else{logger.debug("Youtube Provider: AI segmentation for chunk ".concat(chunkNum," returned no data."));subtitlesForThisChunk=_classPrivateFieldBase(this,_formatSubtitles)[_formatSubtitles](chunkEvents,fromLang);}}catch(chunkError){subtitlesForThisChunk=_classPrivateFieldBase(this,_formatSubtitles)[_formatSubtitles](chunkEvents,fromLang);}if(videoId!==_classPrivateFieldBase(this,_videoId)[_videoId]){logger.info("Youtube Provider: videoId changed!!",videoId,_classPrivateFieldBase(this,_videoId)[_videoId]);break;}if(subtitlesForThisChunk.length>0){const progressed=chunkNum*100/chunkCount;_classPrivateFieldBase(this,_subtitles)[_subtitles].push(...subtitlesForThisChunk);_classPrivateFieldBase(this,_progressed)[_progressed]=progressed;logger.debug("Youtube Provider: Appending ".concat(subtitlesForThisChunk.length," subtitles from chunk ").concat(chunkNum," (").concat(_classPrivateFieldBase(this,_progressed)[_progressed],"%)."));if(_classPrivateFieldBase(this,_managerInstance)[_managerInstance]){_classPrivateFieldBase(this,_managerInstance)[_managerInstance].appendSubtitles(subtitlesForThisChunk);}}else{logger.debug("Youtube Provider: Chunk ".concat(chunkNum," no subtitles."));}await sleep(randomBetween(500,1000));}logger.info("Youtube Provider: All subtitle chunks processed.");}function _createNotificationElement2(){var _videoEl$parentElemen;const notificationEl=document.createElement("div");notificationEl.className="kiss-notification";Object.assign(notificationEl.style,{position:"absolute",top:"40%",left:"50%",transform:"translateX(-50%)",background:"rgba(0,0,0,0.7)",color:"red",padding:"0.5em 1em",borderRadius:"4px",zIndex:"2147483647",opacity:"0",transition:"opacity 0.3s ease-in-out",pointerEvents:"none",fontSize:"2em",width:"50%",textAlign:"center"});const videoEl=_classPrivateFieldBase(this,YouTubeCaptionProvider_videoEl)[YouTubeCaptionProvider_videoEl];const videoContainer=videoEl===null||videoEl===void 0?void 0:(_videoEl$parentElemen=videoEl.parentElement)===null||_videoEl$parentElemen===void 0?void 0:_videoEl$parentElemen.parentElement;if(videoContainer){videoContainer.appendChild(notificationEl);_classPrivateFieldBase(this,_notificationEl)[_notificationEl]=notificationEl;}}function _showNotification2(message){let duration=arguments.length>1&&arguments[1]!==undefined?arguments[1]:2000;if(!_classPrivateFieldBase(this,_notificationEl)[_notificationEl])_classPrivateFieldBase(this,_createNotificationElement)[_createNotificationElement]();_classPrivateFieldBase(this,_notificationEl)[_notificationEl].textContent=message;_classPrivateFieldBase(this,_notificationEl)[_notificationEl].style.opacity="1";clearTimeout(_classPrivateFieldBase(this,_notificationTimeout)[_notificationTimeout]);_classPrivateFieldBase(this,_notificationTimeout)[_notificationTimeout]=setTimeout(()=>{_classPrivateFieldBase(this,_notificationEl)[_notificationEl].style.opacity="0";},duration);}const YouTubeInitializer=(()=>{let initialized=false;return async setting=>{if(initialized){return;}initialized=true;logger.info("Bilingual Subtitle Extension: Initializing...");const provider=new YouTubeCaptionProvider(setting);provider.initialize();};})(); +];if(noSpaceLanguages.some(l=>lang===null||lang===void 0?void 0:lang.startsWith(l))){const subtitles=[];let currentLine=null;const MAX_LENGTH=100;for(const segment of flatEvents){if(segment.text){if(!currentLine){currentLine={text:segment.text,start:segment.start,end:segment.end};}else{currentLine.text+=segment.text;currentLine.end=segment.end;}if(currentLine.text.length>=MAX_LENGTH){subtitles.push(currentLine);currentLine=null;}}else{if(currentLine){subtitles.push(currentLine);currentLine=null;}}}if(currentLine){subtitles.push(currentLine);}return subtitles;}let subtitles=_classPrivateFieldBase(this,_processSubtitles)[_processSubtitles]({flatEvents});const isPoor=_classPrivateFieldBase(this,_isQualityPoor)[_isQualityPoor](subtitles);logger.debug("Youtube Provider: isQualityPoor",{isPoor,subtitles});if(isPoor){subtitles=_classPrivateFieldBase(this,_processSubtitles)[_processSubtitles]({flatEvents,usePause:true});}return subtitles;}function _isQualityPoor2(lines){let lengthThreshold=arguments.length>1&&arguments[1]!==undefined?arguments[1]:250;let percentageThreshold=arguments.length>2&&arguments[2]!==undefined?arguments[2]:0.2;if(lines.length===0)return false;const longLinesCount=lines.filter(line=>line.text.length>lengthThreshold).length;return longLinesCount/lines.length>percentageThreshold;}function _processSubtitles2(){let{flatEvents,usePause=false,timeout=1000,maxWords=15}=arguments.length>0&&arguments[0]!==undefined?arguments[0]:{};const groupedPauseWords={1:new Set(["actually","also","although","and","anyway","as","basically","because","but","eventually","frankly","honestly","hopefully","however","if","instead","it's","just","let's","like","literally","maybe","meanwhile","nevertheless","nonetheless","now","okay","or","otherwise","perhaps","personally","probably","right","since","so","suddenly","that's","then","there's","therefore","though","thus","unless","until","well","while"]),2:new Set(["after all","at first","at least","even if","even though","for example","for instance","i believe","i guess","i mean","i suppose","i think","in fact","in the end","of course","then again","to be fair","you know","you see"]),3:new Set(["as a result","by the way","in other words","in that case","in this case","to be clear","to be honest"])};const sentences=[];let currentBuffer=[];let bufferWordCount=0;const flushBuffer=()=>{if(currentBuffer.length>0){sentences.push({text:currentBuffer.map(s=>s.text).join(" ").trim(),start:currentBuffer[0].start,end:currentBuffer[currentBuffer.length-1].end});}currentBuffer=[];bufferWordCount=0;};flatEvents.forEach(segment=>{if(!segment.text)return;const lastSegment=currentBuffer[currentBuffer.length-1];if(lastSegment){const isEndOfSentence=/[.?!…\])]$/.test(lastSegment.text);const isPauseOfSentence=/[,]$/.test(lastSegment.text);const isTimeout=segment.start-lastSegment.end>timeout;const isWordLimitExceeded=(usePause||isPauseOfSentence)&&bufferWordCount>=maxWords;const startsWithSign=/^[[(♪]/.test(segment.text);const startsWithPauseWord=usePause&&groupedPauseWords["1"].has(segment.text.toLowerCase().split(" ")[0])&¤tBuffer.length>1;if(isEndOfSentence||isTimeout||isWordLimitExceeded||startsWithSign||startsWithPauseWord){flushBuffer();}}currentBuffer.push(segment);bufferWordCount+=segment.text.split(/\s+/).length;});flushBuffer();return sentences;}function _genFlatEvents2(){let events=arguments.length>0&&arguments[0]!==undefined?arguments[0]:[];const segments=[];let buffer=null;events.forEach(_ref6=>{let{segs=[],tStartMs=0,dDurationMs=0}=_ref6;segs.forEach((_ref7,j)=>{let{utf8="",tOffsetMs=0}=_ref7;const text=utf8.trim().replace(/\s+/g," ");const start=tStartMs+tOffsetMs;if(buffer){if(!buffer.end||buffer.end>start){buffer.end=start;}segments.push(buffer);buffer=null;}buffer={text,start};if(j===segs.length-1){buffer.end=tStartMs+dDurationMs;}});});segments.push(buffer);return segments;}function _splitEventsIntoChunks2(flatEvents){let chunkLength=arguments.length>1&&arguments[1]!==undefined?arguments[1]:1000;if(!flatEvents||flatEvents.length===0){return[];}const eventChunks=[];let currentChunk=[];let currentChunkTextLength=0;const MAX_CHUNK_LENGTH=chunkLength+500;const PAUSE_THRESHOLD_MS=1000;for(let i=0;i=MAX_CHUNK_LENGTH){shouldSplit=true;}else if(currentChunkTextLength>=chunkLength){const isEndOfSentence=/[.?!…\])]$/.test(event.text);const nextEvent=flatEvents[i+1];const pauseDuration=nextEvent.start-event.end;if(isEndOfSentence||pauseDuration>PAUSE_THRESHOLD_MS){shouldSplit=true;}}if(shouldSplit){eventChunks.push(currentChunk);currentChunk=[];currentChunkTextLength=0;}}if(currentChunk.length>0){eventChunks.push(currentChunk);}return eventChunks;}async function _processRemainingChunksAsync2(_ref8){let{chunks,videoId,fromLang,toLang,segApiSetting}=_ref8;logger.info("Youtube Provider: Starting for ".concat(chunks.length," chunks."));for(let i=0;i ").concat((_chunkEvents=chunkEvents[chunkEvents.length-1])===null||_chunkEvents===void 0?void 0:_chunkEvents.start));let subtitlesForThisChunk=[];try{const aiSubtitles=await _classPrivateFieldBase(this,_aiSegment)[_aiSegment]({videoId,chunkEvents,fromLang,toLang,segApiSetting});if((aiSubtitles===null||aiSubtitles===void 0?void 0:aiSubtitles.length)>0){subtitlesForThisChunk=aiSubtitles;}else{logger.debug("Youtube Provider: AI segmentation for chunk ".concat(chunkNum," returned no data."));subtitlesForThisChunk=_classPrivateFieldBase(this,_formatSubtitles)[_formatSubtitles](chunkEvents,fromLang);}}catch(chunkError){subtitlesForThisChunk=_classPrivateFieldBase(this,_formatSubtitles)[_formatSubtitles](chunkEvents,fromLang);}if(videoId!==_classPrivateFieldBase(this,_videoId)[_videoId]){logger.info("Youtube Provider: videoId changed!!",videoId,_classPrivateFieldBase(this,_videoId)[_videoId]);break;}if(subtitlesForThisChunk.length>0){const progressed=Math.floor(chunkNum*100/(chunks.length+1));_classPrivateFieldBase(this,_subtitles)[_subtitles].push(...subtitlesForThisChunk);_classPrivateFieldBase(this,_progressed)[_progressed]=progressed;logger.debug("Youtube Provider: Appending ".concat(subtitlesForThisChunk.length," subtitles from chunk ").concat(chunkNum," (").concat(_classPrivateFieldBase(this,_progressed)[_progressed],"%)."));if(_classPrivateFieldBase(this,_managerInstance)[_managerInstance]){_classPrivateFieldBase(this,_managerInstance)[_managerInstance].appendSubtitles(subtitlesForThisChunk);}}else{logger.debug("Youtube Provider: Chunk ".concat(chunkNum," no subtitles."));}await sleep(randomBetween(500,1000));}logger.info("Youtube Provider: All subtitle chunks processed.");}function _createNotificationElement2(){var _videoEl$parentElemen;const notificationEl=document.createElement("div");notificationEl.className="kiss-notification";Object.assign(notificationEl.style,{position:"absolute",top:"40%",left:"50%",transform:"translateX(-50%)",background:"rgba(0,0,0,0.7)",color:"red",padding:"0.5em 1em",borderRadius:"4px",zIndex:"2147483647",opacity:"0",transition:"opacity 0.3s ease-in-out",pointerEvents:"none",fontSize:"2em",width:"50%",textAlign:"center"});const videoEl=_classPrivateFieldBase(this,YouTubeCaptionProvider_videoEl)[YouTubeCaptionProvider_videoEl];const videoContainer=videoEl===null||videoEl===void 0?void 0:(_videoEl$parentElemen=videoEl.parentElement)===null||_videoEl$parentElemen===void 0?void 0:_videoEl$parentElemen.parentElement;if(videoContainer){videoContainer.appendChild(notificationEl);_classPrivateFieldBase(this,_notificationEl)[_notificationEl]=notificationEl;}}function _showNotification2(message){let duration=arguments.length>1&&arguments[1]!==undefined?arguments[1]:2000;if(!_classPrivateFieldBase(this,_notificationEl)[_notificationEl])_classPrivateFieldBase(this,_createNotificationElement)[_createNotificationElement]();_classPrivateFieldBase(this,_notificationEl)[_notificationEl].textContent=message;_classPrivateFieldBase(this,_notificationEl)[_notificationEl].style.opacity="1";clearTimeout(_classPrivateFieldBase(this,_notificationTimeout)[_notificationTimeout]);_classPrivateFieldBase(this,_notificationTimeout)[_notificationTimeout]=setTimeout(()=>{_classPrivateFieldBase(this,_notificationEl)[_notificationEl].style.opacity="0";},duration);}const YouTubeInitializer=(()=>{let initialized=false;return async setting=>{if(initialized){return;}initialized=true;logger.info("Bilingual Subtitle Extension: Initializing...");const provider=new YouTubeCaptionProvider(setting);provider.initialize();};})(); ;// CONCATENATED MODULE: ./src/libs/trustedTypes.js const trustedTypesHelper=(()=>{const POLICY_NAME="kiss-translator-policy";let policy=null;if(globalThis.trustedTypes&&globalThis.trustedTypes.createPolicy){try{policy=globalThis.trustedTypes.createPolicy(POLICY_NAME,{createHTML:string=>string,createScript:string=>string,createScriptURL:string=>string});}catch(err){if(err.message.includes("already exists")){policy=globalThis.trustedTypes.policies.get(POLICY_NAME);}else{logger.info("cont create Trusted Types",err);}}}return{createHTML:htmlString=>{return policy?policy.createHTML(htmlString):htmlString;},createScript:scriptString=>{return policy?policy.createScript(scriptString):scriptString;},createScriptURL:urlString=>{return policy?policy.createScriptURL(urlString):urlString;},isEnabled:()=>policy!==null};})(); ;// CONCATENATED MODULE: ./src/libs/injector.js @@ -39458,7 +39468,7 @@ Divider.muiSkipListHighlight = true; false ? 0 : void 0; /* harmony default export */ const Divider_Divider = (Divider); ;// CONCATENATED MODULE: ./src/hooks/Loading.js -function Loading(){return/*#__PURE__*/(0,jsx_runtime.jsxs)("center",{children:[/*#__PURE__*/(0,jsx_runtime.jsx)(Divider_Divider,{children:/*#__PURE__*/(0,jsx_runtime.jsx)(Link_Link,{href:"https://github.com/fishjar/kiss-translator",children:"KISS Translator v".concat("2.0.8")})}),/*#__PURE__*/(0,jsx_runtime.jsx)(CircularProgress_CircularProgress,{})]});} +function Loading(){return/*#__PURE__*/(0,jsx_runtime.jsxs)("center",{children:[/*#__PURE__*/(0,jsx_runtime.jsx)(Divider_Divider,{children:/*#__PURE__*/(0,jsx_runtime.jsx)(Link_Link,{href:"https://github.com/fishjar/kiss-translator",children:"KISS Translator v".concat("2.0.9")})}),/*#__PURE__*/(0,jsx_runtime.jsx)(CircularProgress_CircularProgress,{})]});} ;// CONCATENATED MODULE: ./src/hooks/Setting.js const SettingContext=/*#__PURE__*/(0,react.createContext)({setting:setting_DEFAULT_SETTING,updateSetting:()=>{},reloadSetting:()=>{}});function SettingProvider(_ref){let{children}=_ref;const{data:setting,isLoading,update,reload}=useStorage(storage_STOKEY_SETTING,setting_DEFAULT_SETTING,storage_KV_SETTING_KEY);(0,react.useEffect)(()=>{if(typeof(setting===null||setting===void 0?void 0:setting.darkMode)==="boolean"){update(currentSetting=>_objectSpread2(_objectSpread2({},currentSetting),{},{darkMode:currentSetting.darkMode?"dark":"light"}));}},[setting===null||setting===void 0?void 0:setting.darkMode,update]);(0,react.useEffect)(()=>{(async()=>{try{logger.setLevel(setting===null||setting===void 0?void 0:setting.logLevel);if(isExt){await sendBgMsg(MSG_SET_LOGLEVEL,setting===null||setting===void 0?void 0:setting.logLevel);}}catch(error){logger.error("Failed to fetch log level, using default.",error);}})();},[setting]);const updateSetting=(0,react.useCallback)(objOrFn=>{update(objOrFn);debounceSyncMeta(storage_KV_SETTING_KEY);},[update]);const updateChild=(0,react.useCallback)(key=>async obj=>{updateSetting(prev=>_objectSpread2(_objectSpread2({},prev),{},{[key]:_objectSpread2(_objectSpread2({},(prev===null||prev===void 0?void 0:prev[key])||{}),obj)}));},[updateSetting]);const value=(0,react.useMemo)(()=>({setting,updateSetting,updateChild,reloadSetting:reload}),[setting,updateSetting,updateChild,reload]);if(isLoading){return/*#__PURE__*/(0,jsx_runtime.jsx)(Loading,{});}if(!setting){/*#__PURE__*/(0,jsx_runtime.jsx)("center",{children:/*#__PURE__*/(0,jsx_runtime.jsxs)(Alert_Alert,{severity:"error",sx:{maxWidth:600,margin:"60px auto"},children:[/*#__PURE__*/(0,jsx_runtime.jsx)("p",{children:"\u6570\u636E\u52A0\u8F7D\u51FA\u9519\uFF0C\u8BF7\u5237\u65B0\u9875\u9762\u6216\u5378\u8F7D\u540E\u91CD\u65B0\u5B89\u88C5\u3002"}),/*#__PURE__*/(0,jsx_runtime.jsx)("p",{children:"Data loading error, please refresh the page or uninstall and reinstall."})]})});}return/*#__PURE__*/(0,jsx_runtime.jsx)(SettingContext.Provider,{value:value,children:children});}/** * 设置 hook @@ -47031,7 +47041,7 @@ function SugBaidu(_ref){let{text}=_ref;const{loading,error,data}=useAsyncNow(api function TranForm(_ref){let{text,setText,apiSlugs:initApiSlugs,fromLang:initFromLang,toLang:initToLang,toLang2:initToLang2,transApis,simpleStyle=false,langDetector:initLangDetector="-",enDict:initEnDict="-",enSug:initEnSug="-",isPlaygound=false}=_ref;const i18n=useI18n();const[editMode,setEditMode]=(0,react.useState)(false);const[editText,setEditText]=(0,react.useState)(text);const[apiSlugs,setApiSlugs]=(0,react.useState)(initApiSlugs);const[fromLang,setFromLang]=(0,react.useState)(initFromLang);const[toLang,setToLang]=(0,react.useState)(initToLang);const[toLang2,setToLang2]=(0,react.useState)(initToLang2);const[langDetector,setLangDetector]=(0,react.useState)(initLangDetector);const[enDict,setEnDict]=(0,react.useState)(initEnDict);const[enSug,setEnSug]=(0,react.useState)(initEnSug);const[deLang,setDeLang]=(0,react.useState)("");const[deLoading,setDeLoading]=(0,react.useState)(false);(0,react.useEffect)(()=>{if(!editMode){setEditText(text);}},[text,editMode]);(0,react.useEffect)(()=>{if(!text.trim()){setDeLang("");return;}(async()=>{try{setDeLoading(true);const deLang=await tryDetectLang(text,langDetector);if(deLang){setDeLang(deLang);}}catch(err){log_kissLog("tranbox: detect lang",err);}finally{setDeLoading(false);}})();},[text,langDetector,setDeLang,setDeLoading]);// todo: 语言变化后,realToLang引发二次翻译请求 const realToLang=(0,react.useMemo)(()=>{if(fromLang==="auto"&&toLang!==toLang2&&toLang2!=="-"&&deLang===toLang){return toLang2;}return toLang;},[fromLang,toLang,toLang2,deLang]);const optApis=(0,react.useMemo)(()=>transApis.filter(api=>!api.isDisabled).map(api=>({key:api.apiSlug,name:api.apiName||api.apiSlug})),[transApis]);const isWord=(0,react.useMemo)(()=>isValidWord(text),[text]);const xs=(0,react.useMemo)(()=>isPlaygound?3:4,[isPlaygound]);return/*#__PURE__*/(0,jsx_runtime.jsxs)(Stack_Stack,{spacing:simpleStyle?1:2,children:[!simpleStyle&&/*#__PURE__*/(0,jsx_runtime.jsxs)(jsx_runtime.Fragment,{children:[/*#__PURE__*/(0,jsx_runtime.jsx)(Box_Box,{children:/*#__PURE__*/(0,jsx_runtime.jsxs)(Grid_Grid,{container:true,spacing:2,columns:12,children:[/*#__PURE__*/(0,jsx_runtime.jsx)(Grid_Grid,{item:true,xs:xs,children:/*#__PURE__*/(0,jsx_runtime.jsx)(TextField_TextField,{select:true,SelectProps:{multiple:true,MenuProps:{disablePortal:!isPlaygound}},fullWidth:true,size:"small",value:apiSlugs,name:"apiSlugs",label:i18n("translate_service_multiple"),onChange:e=>{setApiSlugs(e.target.value);},children:optApis.map(_ref2=>{let{key,name}=_ref2;return/*#__PURE__*/(0,jsx_runtime.jsx)(material_MenuItem_MenuItem,{value:key,children:name},key);})})}),/*#__PURE__*/(0,jsx_runtime.jsx)(Grid_Grid,{item:true,xs:xs,children:/*#__PURE__*/(0,jsx_runtime.jsx)(TextField_TextField,{select:true,SelectProps:{MenuProps:{disablePortal:!isPlaygound}},fullWidth:true,size:"small",name:"fromLang",value:fromLang,label:i18n("from_lang"),onChange:e=>{setFromLang(e.target.value);},children:OPT_LANGS_FROM.map(_ref3=>{let[lang,name]=_ref3;return/*#__PURE__*/(0,jsx_runtime.jsx)(material_MenuItem_MenuItem,{value:lang,children:name},lang);})})}),/*#__PURE__*/(0,jsx_runtime.jsx)(Grid_Grid,{item:true,xs:xs,children:/*#__PURE__*/(0,jsx_runtime.jsx)(TextField_TextField,{select:true,SelectProps:{MenuProps:{disablePortal:!isPlaygound}},fullWidth:true,size:"small",name:"toLang",value:toLang,label:i18n("to_lang"),onChange:e=>{setToLang(e.target.value);},children:OPT_LANGS_TO.map(_ref4=>{let[lang,name]=_ref4;return/*#__PURE__*/(0,jsx_runtime.jsx)(material_MenuItem_MenuItem,{value:lang,children:name},lang);})})}),isPlaygound&&/*#__PURE__*/(0,jsx_runtime.jsxs)(jsx_runtime.Fragment,{children:[/*#__PURE__*/(0,jsx_runtime.jsx)(Grid_Grid,{item:true,xs:xs,children:/*#__PURE__*/(0,jsx_runtime.jsx)(TextField_TextField,{select:true,SelectProps:{MenuProps:{disablePortal:!isPlaygound}},fullWidth:true,size:"small",name:"toLang2",value:toLang2,label:i18n("to_lang2"),onChange:e=>{setToLang2(e.target.value);},children:OPT_LANGS_TO.map(_ref5=>{let[lang,name]=_ref5;return/*#__PURE__*/(0,jsx_runtime.jsx)(material_MenuItem_MenuItem,{value:lang,children:name},lang);})})}),/*#__PURE__*/(0,jsx_runtime.jsx)(Grid_Grid,{item:true,xs:xs,children:/*#__PURE__*/(0,jsx_runtime.jsxs)(TextField_TextField,{select:true,SelectProps:{MenuProps:{disablePortal:!isPlaygound}},fullWidth:true,size:"small",name:"enDict",value:enDict,label:i18n("english_dict"),onChange:e=>{setEnDict(e.target.value);},children:[/*#__PURE__*/(0,jsx_runtime.jsx)(material_MenuItem_MenuItem,{value:"-",children:i18n("disable")}),OPT_DICT_ALL.map(item=>/*#__PURE__*/(0,jsx_runtime.jsx)(material_MenuItem_MenuItem,{value:item,children:item},item))]})}),/*#__PURE__*/(0,jsx_runtime.jsx)(Grid_Grid,{item:true,xs:xs,children:/*#__PURE__*/(0,jsx_runtime.jsxs)(TextField_TextField,{select:true,SelectProps:{MenuProps:{disablePortal:!isPlaygound}},fullWidth:true,size:"small",name:"enSug",value:enSug,label:i18n("english_suggest"),onChange:e=>{setEnSug(e.target.value);},children:[/*#__PURE__*/(0,jsx_runtime.jsx)(material_MenuItem_MenuItem,{value:"-",children:i18n("disable")}),OPT_SUG_ALL.map(item=>/*#__PURE__*/(0,jsx_runtime.jsx)(material_MenuItem_MenuItem,{value:item,children:item},item))]})}),/*#__PURE__*/(0,jsx_runtime.jsx)(Grid_Grid,{item:true,xs:xs,children:/*#__PURE__*/(0,jsx_runtime.jsxs)(TextField_TextField,{select:true,SelectProps:{MenuProps:{disablePortal:!isPlaygound}},fullWidth:true,size:"small",name:"langDetector",value:langDetector,label:i18n("detected_lang"),onChange:e=>{setLangDetector(e.target.value);},children:[/*#__PURE__*/(0,jsx_runtime.jsx)(material_MenuItem_MenuItem,{value:"-",children:i18n("disable")}),OPT_LANGDETECTOR_ALL.map(item=>/*#__PURE__*/(0,jsx_runtime.jsx)(material_MenuItem_MenuItem,{value:item,children:item},item))]})}),/*#__PURE__*/(0,jsx_runtime.jsx)(Grid_Grid,{item:true,xs:xs,children:/*#__PURE__*/(0,jsx_runtime.jsx)(TextField_TextField,{fullWidth:true,size:"small",name:"deLang",value:deLang&&OPT_LANGS_MAP.get(deLang),label:i18n("detected_result"),disabled:true,InputProps:{startAdornment:deLoading?/*#__PURE__*/(0,jsx_runtime.jsx)(CircularProgress_CircularProgress,{size:16}):null}})})]})]})}),/*#__PURE__*/(0,jsx_runtime.jsx)(Box_Box,{children:/*#__PURE__*/(0,jsx_runtime.jsx)(TextField_TextField,{size:"small",label:i18n("original_text"),fullWidth:true,multiline:true,minRows:isPlaygound?2:1,maxRows:10,value:editText,onChange:e=>{setEditText(e.target.value);},onFocus:()=>{setEditMode(true);},onBlur:()=>{setEditMode(false);setText(editText.trim());},InputProps:{endAdornment:/*#__PURE__*/(0,jsx_runtime.jsx)(Stack_Stack,{direction:"row",sx:{position:"absolute",right:0,top:0},children:editMode?/*#__PURE__*/(0,jsx_runtime.jsx)(IconButton_IconButton,{size:"small",onClick:e=>{e.stopPropagation();setEditMode(false);setText(editText.trim());},children:/*#__PURE__*/(0,jsx_runtime.jsx)(Done/* default */.Z,{fontSize:"inherit"})}):/*#__PURE__*/(0,jsx_runtime.jsx)(CopyBtn,{text:text})})}})})]}),apiSlugs.map(slug=>/*#__PURE__*/(0,jsx_runtime.jsx)(TranCont,{text:text,fromLang:fromLang,toLang:realToLang,simpleStyle:simpleStyle,apiSlug:slug,transApis:transApis},slug)),isWord&&OPT_DICT_MAP.has(enDict)&&/*#__PURE__*/(0,jsx_runtime.jsx)(DictCont,{text:text,enDict:enDict}),isWord&&OPT_SUG_MAP.has(enSug)&&/*#__PURE__*/(0,jsx_runtime.jsx)(SugCont,{text:text,enSug:enSug})]});} ;// CONCATENATED MODULE: ./src/views/Selection/TranBox.js -function Header(_ref){let{setShowBox,simpleStyle,setSimpleStyle,hideClickAway,setHideClickAway,followSelection,setFollowSelection,mouseHover}=_ref;const i18n=useI18n();if(!isMobile&&simpleStyle&&!mouseHover){return;}return/*#__PURE__*/(0,jsx_runtime.jsxs)(Box_Box,{onMouseUp:e=>e.stopPropagation(),onTouchEnd:e=>e.stopPropagation(),children:[/*#__PURE__*/(0,jsx_runtime.jsxs)(Stack_Stack,{direction:"row",justifyContent:"space-between",alignItems:"center",children:[/*#__PURE__*/(0,jsx_runtime.jsxs)(Stack_Stack,{direction:"row",alignItems:"center",children:[/*#__PURE__*/(0,jsx_runtime.jsx)(DragIndicator/* default */.Z,{fontSize:"small"}),/*#__PURE__*/(0,jsx_runtime.jsx)(Typography_Typography,{variant:"body2",sx:{userSelect:"none",WebkitUserSelect:"none",fontWeight:"bold"},children:"".concat("KISS Translator"," v").concat("2.0.8")})]}),/*#__PURE__*/(0,jsx_runtime.jsxs)(Stack_Stack,{direction:"row",alignItems:"center",children:[/*#__PURE__*/(0,jsx_runtime.jsx)(IconButton_IconButton,{size:"small",title:i18n("btn_tip_click_away"),onClick:()=>{setHideClickAway(pre=>!pre);},children:hideClickAway?/*#__PURE__*/(0,jsx_runtime.jsx)(LockOpen/* default */.Z,{fontSize:"small"}):/*#__PURE__*/(0,jsx_runtime.jsx)(Lock/* default */.Z,{fontSize:"small"})}),/*#__PURE__*/(0,jsx_runtime.jsx)(IconButton_IconButton,{size:"small",title:i18n("btn_tip_follow_selection"),onClick:()=>{setFollowSelection(pre=>!pre);},children:followSelection?/*#__PURE__*/(0,jsx_runtime.jsx)(PushPinOutlined/* default */.Z,{fontSize:"small"}):/*#__PURE__*/(0,jsx_runtime.jsx)(PushPin/* default */.Z,{fontSize:"small"})}),/*#__PURE__*/(0,jsx_runtime.jsx)(IconButton_IconButton,{size:"small",title:i18n("btn_tip_simple_style"),onClick:()=>{setSimpleStyle(pre=>!pre);},children:simpleStyle?/*#__PURE__*/(0,jsx_runtime.jsx)(UnfoldMore/* default */.Z,{fontSize:"small"}):/*#__PURE__*/(0,jsx_runtime.jsx)(UnfoldLess/* default */.Z,{fontSize:"small"})}),/*#__PURE__*/(0,jsx_runtime.jsx)(IconButton_IconButton,{size:"small",onClick:()=>{setShowBox(false);},children:/*#__PURE__*/(0,jsx_runtime.jsx)(icons_material_Close/* default */.Z,{fontSize:"small"})})]})]}),/*#__PURE__*/(0,jsx_runtime.jsx)(Divider_Divider,{})]});}function TranBox(_ref2){let{showBox,text,setText,setShowBox,tranboxSetting:{enDict,enSug,apiSlugs,fromLang,toLang,toLang2,autoHeight},transApis,boxSize,setBoxSize,boxPosition,setBoxPosition,simpleStyle,setSimpleStyle,hideClickAway,setHideClickAway,followSelection,setFollowSelection,extStyles="",langDetector}=_ref2;const[mouseHover,setMouseHover]=(0,react.useState)(false);// todo: 这里的 SettingProvider 不应和 background 的共用 +function Header(_ref){let{setShowBox,simpleStyle,setSimpleStyle,hideClickAway,setHideClickAway,followSelection,setFollowSelection,mouseHover}=_ref;const i18n=useI18n();if(!isMobile&&simpleStyle&&!mouseHover){return;}return/*#__PURE__*/(0,jsx_runtime.jsxs)(Box_Box,{onMouseUp:e=>e.stopPropagation(),onTouchEnd:e=>e.stopPropagation(),children:[/*#__PURE__*/(0,jsx_runtime.jsxs)(Stack_Stack,{direction:"row",justifyContent:"space-between",alignItems:"center",children:[/*#__PURE__*/(0,jsx_runtime.jsxs)(Stack_Stack,{direction:"row",alignItems:"center",children:[/*#__PURE__*/(0,jsx_runtime.jsx)(DragIndicator/* default */.Z,{fontSize:"small"}),/*#__PURE__*/(0,jsx_runtime.jsx)(Typography_Typography,{variant:"body2",sx:{userSelect:"none",WebkitUserSelect:"none",fontWeight:"bold"},children:"".concat("KISS Translator"," v").concat("2.0.9")})]}),/*#__PURE__*/(0,jsx_runtime.jsxs)(Stack_Stack,{direction:"row",alignItems:"center",children:[/*#__PURE__*/(0,jsx_runtime.jsx)(IconButton_IconButton,{size:"small",title:i18n("btn_tip_click_away"),onClick:()=>{setHideClickAway(pre=>!pre);},children:hideClickAway?/*#__PURE__*/(0,jsx_runtime.jsx)(LockOpen/* default */.Z,{fontSize:"small"}):/*#__PURE__*/(0,jsx_runtime.jsx)(Lock/* default */.Z,{fontSize:"small"})}),/*#__PURE__*/(0,jsx_runtime.jsx)(IconButton_IconButton,{size:"small",title:i18n("btn_tip_follow_selection"),onClick:()=>{setFollowSelection(pre=>!pre);},children:followSelection?/*#__PURE__*/(0,jsx_runtime.jsx)(PushPinOutlined/* default */.Z,{fontSize:"small"}):/*#__PURE__*/(0,jsx_runtime.jsx)(PushPin/* default */.Z,{fontSize:"small"})}),/*#__PURE__*/(0,jsx_runtime.jsx)(IconButton_IconButton,{size:"small",title:i18n("btn_tip_simple_style"),onClick:()=>{setSimpleStyle(pre=>!pre);},children:simpleStyle?/*#__PURE__*/(0,jsx_runtime.jsx)(UnfoldMore/* default */.Z,{fontSize:"small"}):/*#__PURE__*/(0,jsx_runtime.jsx)(UnfoldLess/* default */.Z,{fontSize:"small"})}),/*#__PURE__*/(0,jsx_runtime.jsx)(IconButton_IconButton,{size:"small",onClick:()=>{setShowBox(false);},children:/*#__PURE__*/(0,jsx_runtime.jsx)(icons_material_Close/* default */.Z,{fontSize:"small"})})]})]}),/*#__PURE__*/(0,jsx_runtime.jsx)(Divider_Divider,{})]});}function TranBox(_ref2){let{showBox,text,setText,setShowBox,tranboxSetting:{enDict,enSug,apiSlugs,fromLang,toLang,toLang2,autoHeight},transApis,boxSize,setBoxSize,boxPosition,setBoxPosition,simpleStyle,setSimpleStyle,hideClickAway,setHideClickAway,followSelection,setFollowSelection,extStyles="",langDetector}=_ref2;const[mouseHover,setMouseHover]=(0,react.useState)(false);// todo: 这里的 SettingProvider 不应和 background 的共用 return/*#__PURE__*/(0,jsx_runtime.jsx)(SettingProvider,{children:/*#__PURE__*/(0,jsx_runtime.jsx)(Theme,{styles:extStyles,children:showBox&&/*#__PURE__*/(0,jsx_runtime.jsx)(DraggableResizable,{position:boxPosition,size:boxSize,setSize:setBoxSize,setPosition:setBoxPosition,autoHeight:autoHeight,header:/*#__PURE__*/(0,jsx_runtime.jsx)(Header,{setShowBox:setShowBox,simpleStyle:simpleStyle,setSimpleStyle:setSimpleStyle,hideClickAway:hideClickAway,setHideClickAway:setHideClickAway,followSelection:followSelection,setFollowSelection:setFollowSelection,mouseHover:mouseHover}),onClick:e=>e.stopPropagation(),onMouseEnter:()=>setMouseHover(true),onMouseLeave:()=>setMouseHover(false),children:/*#__PURE__*/(0,jsx_runtime.jsx)(Box_Box,{sx:{p:simpleStyle?1:2},children:/*#__PURE__*/(0,jsx_runtime.jsx)(TranForm,{text:text,setText:setText,apiSlugs:apiSlugs,fromLang:fromLang,toLang:toLang,toLang2:toLang2,transApis:transApis,simpleStyle:simpleStyle,langDetector:langDetector,enDict:enDict,enSug:enSug})})})})});} ;// CONCATENATED MODULE: ./src/views/Selection/index.js function Slection(_ref){let{contextMenuType,tranboxSetting,transApis,uiLang,langDetector}=_ref;const{hideTranBtn=false,simpleStyle:initSimpleStyle=false,hideClickAway:initHideClickAway=false,followSelection:initFollowMouse=false,tranboxShortcut=DEFAULT_TRANBOX_SHORTCUT,triggerMode=OPT_TRANBOX_TRIGGER_CLICK,// extStyles, @@ -47058,7 +47068,7 @@ var BrightnessAuto = __webpack_require__(5538); ;// CONCATENATED MODULE: ./src/views/Options/DarkModeButton.js function DarkModeButton(){const{darkMode,toggleDarkMode}=useDarkMode();return/*#__PURE__*/(0,jsx_runtime.jsx)(IconButton_IconButton,{sx:{ml:1},onClick:toggleDarkMode,color:"inherit",children:darkMode==="dark"?/*#__PURE__*/(0,jsx_runtime.jsx)(DarkMode/* default */.Z,{}):darkMode==="light"?/*#__PURE__*/(0,jsx_runtime.jsx)(LightMode/* default */.Z,{}):/*#__PURE__*/(0,jsx_runtime.jsx)(BrightnessAuto/* default */.Z,{})});} ;// CONCATENATED MODULE: ./src/views/Popup/Header.js -function Header_Header(_ref){let{onClose}=_ref;const handleHomepage=()=>{window.open("https://github.com/fishjar/kiss-translator","_blank");};return/*#__PURE__*/(0,jsx_runtime.jsxs)(Stack_Stack,{direction:"row",justifyContent:"space-between",alignItems:"center",spacing:2,children:[/*#__PURE__*/(0,jsx_runtime.jsxs)(Stack_Stack,{direction:"row",justifyContent:"flex-start",alignItems:"center",children:[/*#__PURE__*/(0,jsx_runtime.jsx)(IconButton_IconButton,{onClick:handleHomepage,children:/*#__PURE__*/(0,jsx_runtime.jsx)(Home/* default */.Z,{})}),/*#__PURE__*/(0,jsx_runtime.jsx)(Typography_Typography,{component:"div",sx:{userSelect:"none",WebkitUserSelect:"none",fontWeight:"bold"},children:"".concat("KISS Translator"," v").concat("2.0.8")})]}),onClose?/*#__PURE__*/(0,jsx_runtime.jsx)(IconButton_IconButton,{onClick:()=>{onClose();},children:/*#__PURE__*/(0,jsx_runtime.jsx)(icons_material_Close/* default */.Z,{})}):/*#__PURE__*/(0,jsx_runtime.jsx)(DarkModeButton,{})]});} +function Header_Header(_ref){let{onClose}=_ref;const handleHomepage=()=>{window.open("https://github.com/fishjar/kiss-translator","_blank");};return/*#__PURE__*/(0,jsx_runtime.jsxs)(Stack_Stack,{direction:"row",justifyContent:"space-between",alignItems:"center",spacing:2,children:[/*#__PURE__*/(0,jsx_runtime.jsxs)(Stack_Stack,{direction:"row",justifyContent:"flex-start",alignItems:"center",children:[/*#__PURE__*/(0,jsx_runtime.jsx)(IconButton_IconButton,{onClick:handleHomepage,children:/*#__PURE__*/(0,jsx_runtime.jsx)(Home/* default */.Z,{})}),/*#__PURE__*/(0,jsx_runtime.jsx)(Typography_Typography,{component:"div",sx:{userSelect:"none",WebkitUserSelect:"none",fontWeight:"bold"},children:"".concat("KISS Translator"," v").concat("2.0.9")})]}),onClose?/*#__PURE__*/(0,jsx_runtime.jsx)(IconButton_IconButton,{onClick:()=>{onClose();},children:/*#__PURE__*/(0,jsx_runtime.jsx)(icons_material_Close/* default */.Z,{})}):/*#__PURE__*/(0,jsx_runtime.jsx)(DarkModeButton,{})]});} ;// CONCATENATED MODULE: ./src/hooks/WindowSize.js function useWindowSize(){const[windowSize,setWindowSize]=(0,react.useState)({w:window.innerWidth,h:window.innerHeight});const debounceWindowResize=useDebouncedCallback(()=>{setWindowSize({w:window.innerWidth,h:window.innerHeight});},200);(0,react.useEffect)(()=>{debounceWindowResize();window.addEventListener("resize",debounceWindowResize);return()=>{window.removeEventListener("resize",debounceWindowResize);};},[debounceWindowResize]);return windowSize;}/* harmony default export */ const WindowSize = (useWindowSize); ;// CONCATENATED MODULE: ./node_modules/.pnpm/@mui+material@5.15.15_@emotion+react@11.11.1_@types+react@18.2.79_react@18.2.0__@emotio_d9048b84de05bb23a91868a7ef37c0cc/node_modules/@mui/material/FormControlLabel/formControlLabelClasses.js @@ -48223,7 +48233,7 @@ if(globalThis.GM&&_classPrivateFieldBase(this,_menuCommandIds)[_menuCommandIds]. ;// CONCATENATED MODULE: ./src/common.js /** * 油猴脚本设置页面 - */function runSettingPage(){var _GM,_GM$info,_GM$info$script,_GM$info$script$grant;if((_GM=GM)!==null&&_GM!==void 0&&(_GM$info=_GM.info)!==null&&_GM$info!==void 0&&(_GM$info$script=_GM$info.script)!==null&&_GM$info$script!==void 0&&(_GM$info$script$grant=_GM$info$script.grant)!==null&&_GM$info$script$grant!==void 0&&_GM$info$script$grant.includes("unsafeWindow")){unsafeWindow.GM=GM;unsafeWindow.APP_INFO={name:"KISS Translator",version:"2.0.8"};}else{const ping=utils_genEventName();window.addEventListener(ping,handlePing);// window.eval(`(${injectScript})("${ping}")`); // eslint-disable-line + */function runSettingPage(){var _GM,_GM$info,_GM$info$script,_GM$info$script$grant;if((_GM=GM)!==null&&_GM!==void 0&&(_GM$info=_GM.info)!==null&&_GM$info!==void 0&&(_GM$info$script=_GM$info.script)!==null&&_GM$info$script!==void 0&&(_GM$info$script$grant=_GM$info$script.grant)!==null&&_GM$info$script$grant!==void 0&&_GM$info$script$grant.includes("unsafeWindow")){unsafeWindow.GM=GM;unsafeWindow.APP_INFO={name:"KISS Translator",version:"2.0.9"};}else{const ping=utils_genEventName();window.addEventListener(ping,handlePing);// window.eval(`(${injectScript})("${ping}")`); // eslint-disable-line injectInlineJs("(".concat(injectScript,")(\"").concat(ping,"\")"),"kiss-translator-options-injector");}}/** * 显示错误信息到页面顶部 * @param {*} message diff --git a/kiss-translator.user.js b/kiss-translator.user.js index 0b729ae..bb9fcb0 100644 --- a/kiss-translator.user.js +++ b/kiss-translator.user.js @@ -1,7 +1,7 @@ // ==UserScript== // @name KISS Translator // @namespace https://github.com/fishjar/kiss-translator -// @version 2.0.8 +// @version 2.0.9 // @description A simple bilingual translation extension & Greasemonkey script (一个简约的双语对照翻译扩展 & 油猴脚本) // @author Gabe // @homepageURL https://github.com/fishjar/kiss-translator @@ -29407,7 +29407,7 @@ __webpack_require__.d(base_namespaceObject, { }); ;// CONCATENATED MODULE: ./src/config/app.js -const APP_NAME="KISS Translator".trim().split(/\s+/).join("-");const APP_LCNAME=APP_NAME.toLowerCase();const APP_UPNAME=APP_NAME.toUpperCase();const APP_CONSTS={fabID:"".concat(APP_LCNAME,"-fab"),boxID:"".concat(APP_LCNAME,"-box"),popupID:"".concat(APP_LCNAME,"-popup")};const APP_VERSION="2.0.8".split(".");const THEME_LIGHT="light";const THEME_DARK="dark"; +const APP_NAME="KISS Translator".trim().split(/\s+/).join("-");const APP_LCNAME=APP_NAME.toLowerCase();const APP_UPNAME=APP_NAME.toUpperCase();const APP_CONSTS={fabID:"".concat(APP_LCNAME,"-fab"),boxID:"".concat(APP_LCNAME,"-box"),popupID:"".concat(APP_LCNAME,"-popup")};const APP_VERSION="2.0.9".split(".");const THEME_LIGHT="light";const THEME_DARK="dark"; ;// CONCATENATED MODULE: ./node_modules/.pnpm/@babel+runtime@7.24.4/node_modules/@babel/runtime/helpers/esm/typeof.js function _typeof(o) { "@babel/helpers - typeof"; @@ -29558,7 +29558,7 @@ temperature:0.0,maxTokens:20480,// think: false, // (OpenAI 兼容接口未支 // thinkIgnore: "qwen3,deepseek-r1", // (OpenAI 兼容接口未支持,暂时移除) isDisabled:false,// 是否不显示, region:""// Azure 专用 -};const defaultApiOpts={[OPT_TRANS_BUILTINAI]:defaultApi,[OPT_TRANS_GOOGLE]:_objectSpread2(_objectSpread2({},defaultApi),{},{url:"https://translate.googleapis.com/translate_a/single"}),[OPT_TRANS_GOOGLE_2]:_objectSpread2(_objectSpread2({},defaultApi),{},{url:"https://translate-pa.googleapis.com/v1/translateHtml",key:"AIzaSyATBXajvzQLTDHEQbcpq0Ihe0vWDHmO520",useBatchFetch:true}),[OPT_TRANS_MICROSOFT]:_objectSpread2(_objectSpread2({},defaultApi),{},{useBatchFetch:true}),[OPT_TRANS_AZUREAI]:_objectSpread2(_objectSpread2({},defaultApi),{},{url:"https://api.cognitive.microsofttranslator.com/translate?api-version=3.0",useBatchFetch:true}),[OPT_TRANS_BAIDU]:_objectSpread2({},defaultApi),[OPT_TRANS_TENCENT]:_objectSpread2(_objectSpread2({},defaultApi),{},{useBatchFetch:true}),[OPT_TRANS_VOLCENGINE]:_objectSpread2({},defaultApi),[OPT_TRANS_DEEPL]:_objectSpread2(_objectSpread2({},defaultApi),{},{url:"https://api-free.deepl.com/v2/translate",useBatchFetch:true}),[OPT_TRANS_DEEPLFREE]:_objectSpread2(_objectSpread2({},defaultApi),{},{fetchLimit:1}),[OPT_TRANS_DEEPLX]:_objectSpread2(_objectSpread2({},defaultApi),{},{url:"http://localhost:1188/translate"}),[OPT_TRANS_NIUTRANS]:_objectSpread2(_objectSpread2({},defaultApi),{},{url:"https://api.niutrans.com/NiuTransServer/translation",dictNo:"",memoryNo:""}),[OPT_TRANS_OPENAI]:_objectSpread2(_objectSpread2({},defaultApi),{},{url:"https://api.openai.com/v1/chat/completions",model:"gpt-4",useBatchFetch:true}),[OPT_TRANS_GEMINI]:_objectSpread2(_objectSpread2({},defaultApi),{},{url:"https://generativelanguage.googleapis.com/v1/models/".concat(INPUT_PLACE_MODEL,":generateContent?key=").concat(INPUT_PLACE_KEY),model:"gemini-2.5-flash",useBatchFetch:true}),[OPT_TRANS_GEMINI_2]:_objectSpread2(_objectSpread2({},defaultApi),{},{url:"https://generativelanguage.googleapis.com/v1beta/openai/chat/completions",model:"gemini-2.0-flash",useBatchFetch:true}),[OPT_TRANS_CLAUDE]:_objectSpread2(_objectSpread2({},defaultApi),{},{url:"https://api.anthropic.com/v1/messages",model:"claude-3-haiku-20240307",useBatchFetch:true}),[OPT_TRANS_CLOUDFLAREAI]:_objectSpread2(_objectSpread2({},defaultApi),{},{url:"https://api.cloudflare.com/client/v4/accounts/{{ACCOUNT_ID}}/ai/run/@cf/meta/m2m100-1.2b"}),[OPT_TRANS_OLLAMA]:_objectSpread2(_objectSpread2({},defaultApi),{},{url:"http://localhost:11434/v1/chat/completions",model:"llama3.1",useBatchFetch:true}),[OPT_TRANS_OPENROUTER]:_objectSpread2(_objectSpread2({},defaultApi),{},{url:"https://openrouter.ai/api/v1/chat/completions",model:"openai/gpt-4o",useBatchFetch:true}),[OPT_TRANS_CUSTOMIZE]:_objectSpread2(_objectSpread2({},defaultApi),{},{url:"https://translate.googleapis.com/translate_a/single?client=gtx&dj=1&dt=t&ie=UTF-8&q={{text}}&sl=en&tl=zh-CN",reqHook:defaultRequestHook,resHook:defaultResponseHook})};// 内置翻译接口列表(带参数) +};const defaultApiOpts={[OPT_TRANS_BUILTINAI]:defaultApi,[OPT_TRANS_GOOGLE]:_objectSpread2(_objectSpread2({},defaultApi),{},{url:"https://translate.googleapis.com/translate_a/single"}),[OPT_TRANS_GOOGLE_2]:_objectSpread2(_objectSpread2({},defaultApi),{},{url:"https://translate-pa.googleapis.com/v1/translateHtml",key:"AIzaSyATBXajvzQLTDHEQbcpq0Ihe0vWDHmO520",useBatchFetch:true}),[OPT_TRANS_MICROSOFT]:_objectSpread2(_objectSpread2({},defaultApi),{},{useBatchFetch:true}),[OPT_TRANS_AZUREAI]:_objectSpread2(_objectSpread2({},defaultApi),{},{url:"https://api.cognitive.microsofttranslator.com/translate?api-version=3.0",useBatchFetch:true}),[OPT_TRANS_BAIDU]:_objectSpread2({},defaultApi),[OPT_TRANS_TENCENT]:_objectSpread2(_objectSpread2({},defaultApi),{},{useBatchFetch:true}),[OPT_TRANS_VOLCENGINE]:_objectSpread2({},defaultApi),[OPT_TRANS_DEEPL]:_objectSpread2(_objectSpread2({},defaultApi),{},{url:"https://api-free.deepl.com/v2/translate",useBatchFetch:true}),[OPT_TRANS_DEEPLFREE]:_objectSpread2(_objectSpread2({},defaultApi),{},{fetchLimit:1}),[OPT_TRANS_DEEPLX]:_objectSpread2(_objectSpread2({},defaultApi),{},{url:"http://localhost:1188/translate"}),[OPT_TRANS_NIUTRANS]:_objectSpread2(_objectSpread2({},defaultApi),{},{url:"https://api.niutrans.com/NiuTransServer/translation",dictNo:"",memoryNo:""}),[OPT_TRANS_OPENAI]:_objectSpread2(_objectSpread2({},defaultApi),{},{url:"https://api.openai.com/v1/chat/completions",model:"gpt-4",useBatchFetch:true}),[OPT_TRANS_GEMINI]:_objectSpread2(_objectSpread2({},defaultApi),{},{url:"https://generativelanguage.googleapis.com/v1/models/".concat(INPUT_PLACE_MODEL,":generateContent?key=").concat(INPUT_PLACE_KEY),model:"gemini-2.5-flash",useBatchFetch:true}),[OPT_TRANS_GEMINI_2]:_objectSpread2(_objectSpread2({},defaultApi),{},{url:"https://generativelanguage.googleapis.com/v1beta/openai/chat/completions",model:"gemini-2.0-flash",useBatchFetch:true}),[OPT_TRANS_CLAUDE]:_objectSpread2(_objectSpread2({},defaultApi),{},{url:"https://api.anthropic.com/v1/messages",model:"claude-3-haiku-20240307",useBatchFetch:true}),[OPT_TRANS_CLOUDFLAREAI]:_objectSpread2(_objectSpread2({},defaultApi),{},{url:"https://api.cloudflare.com/client/v4/accounts/{{ACCOUNT_ID}}/ai/run/@cf/meta/m2m100-1.2b"}),[OPT_TRANS_OLLAMA]:_objectSpread2(_objectSpread2({},defaultApi),{},{url:"http://localhost:11434/v1/chat/completions",model:"llama3.1",useBatchFetch:true}),[OPT_TRANS_OPENROUTER]:_objectSpread2(_objectSpread2({},defaultApi),{},{url:"https://openrouter.ai/api/v1/chat/completions",model:"openai/gpt-4o",useBatchFetch:true}),[OPT_TRANS_CUSTOMIZE]:_objectSpread2(_objectSpread2({},defaultApi),{},{reqHook:defaultRequestHook,resHook:defaultResponseHook})};// 内置翻译接口列表(带参数) const DEFAULT_API_LIST=OPT_ALL_TRANS_TYPES.map(apiType=>_objectSpread2(_objectSpread2({},defaultApiOpts[apiType]),{},{apiSlug:apiType,apiName:apiType,apiType}));const DEFAULT_API_TYPE=OPT_TRANS_MICROSOFT;const DEFAULT_API_SETTING=DEFAULT_API_LIST.find(a=>a.apiType===DEFAULT_API_TYPE); ;// CONCATENATED MODULE: ./src/config/styles.js const OPT_STYLE_NONE="style_none";// 无 @@ -29795,7 +29795,13 @@ rootMargin:500,// 提前触发翻译 customStyles:DEFAULT_CUSTOM_STYLES// 自定义样式列表 }; ;// CONCATENATED MODULE: ./src/config/i18n.js -const UI_LANGS=(/* unused pure expression or super */ null && ([["en","English"],["zh","简体中文"],["zh_TW","繁體中文"]]));const customApiLangs="[\"en\", \"English - English\"],\n[\"zh-CN\", \"Simplified Chinese - \u7B80\u4F53\u4E2D\u6587\"],\n[\"zh-TW\", \"Traditional Chinese - \u7E41\u9AD4\u4E2D\u6587\"],\n[\"ar\", \"Arabic - \u0627\u0644\u0639\u0631\u0628\u064A\u0629\"],\n[\"bg\", \"Bulgarian - \u0411\u044A\u043B\u0433\u0430\u0440\u0441\u043A\u0438\"],\n[\"ca\", \"Catalan - Catal\xE0\"],\n[\"hr\", \"Croatian - Hrvatski\"],\n[\"cs\", \"Czech - \u010Ce\u0161tina\"],\n[\"da\", \"Danish - Dansk\"],\n[\"nl\", \"Dutch - Nederlands\"],\n[\"fi\", \"Finnish - Suomi\"],\n[\"fr\", \"French - Fran\xE7ais\"],\n[\"de\", \"German - Deutsch\"],\n[\"el\", \"Greek - \u0395\u03BB\u03BB\u03B7\u03BD\u03B9\u03BA\u03AC\"],\n[\"hi\", \"Hindi - \u0939\u093F\u0928\u094D\u0926\u0940\"],\n[\"hu\", \"Hungarian - Magyar\"],\n[\"id\", \"Indonesian - Indonesia\"],\n[\"it\", \"Italian - Italiano\"],\n[\"ja\", \"Japanese - \u65E5\u672C\u8A9E\"],\n[\"ko\", \"Korean - \uD55C\uAD6D\uC5B4\"],\n[\"ms\", \"Malay - Melayu\"],\n[\"mt\", \"Maltese - Malti\"],\n[\"nb\", \"Norwegian - Norsk Bokm\xE5l\"],\n[\"pl\", \"Polish - Polski\"],\n[\"pt\", \"Portuguese - Portugu\xEAs\"],\n[\"ro\", \"Romanian - Rom\xE2n\u0103\"],\n[\"ru\", \"Russian - \u0420\u0443\u0441\u0441\u043A\u0438\u0439\"],\n[\"sk\", \"Slovak - Sloven\u010Dina\"],\n[\"sl\", \"Slovenian - Sloven\u0161\u010Dina\"],\n[\"es\", \"Spanish - Espa\xF1ol\"],\n[\"sv\", \"Swedish - Svenska\"],\n[\"ta\", \"Tamil - \u0BA4\u0BAE\u0BBF\u0BB4\u0BCD\"],\n[\"te\", \"Telugu - \u0C24\u0C46\u0C32\u0C41\u0C17\u0C41\"],\n[\"th\", \"Thai - \u0E44\u0E17\u0E22\"],\n[\"tr\", \"Turkish - T\xFCrk\xE7e\"],\n[\"uk\", \"Ukrainian - \u0423\u043A\u0440\u0430\u0457\u043D\u0441\u044C\u043A\u0430\"],\n[\"vi\", \"Vietnamese - Ti\u1EBFng Vi\u1EC7t\"],\n";const customApiHelpZH="// \u8BF7\u6C42\u6570\u636E\u9ED8\u8BA4\u683C\u5F0F\n{\n \"url\": \"{{url}}\",\n \"method\": \"POST\",\n \"headers\": {\n \"Content-type\": \"application/json\",\n \"Authorization\": \"Bearer {{key}}\"\n },\n \"body\": {\n \"text\": \"{{text}}\", // \u5F85\u7FFB\u8BD1\u6587\u5B57\n \"from\": \"{{from}}\", // \u6587\u5B57\u7684\u8BED\u8A00\uFF08\u53EF\u80FD\u4E3A\u7A7A\uFF09\n \"to\": \"{{to}}\", // \u76EE\u6807\u8BED\u8A00\n },\n}\n\n\n// \u8FD4\u56DE\u6570\u636E\u9ED8\u8BA4\u683C\u5F0F\n{\n text: \"\", // \u7FFB\u8BD1\u540E\u7684\u6587\u5B57\n from: \"\", // \u8BC6\u522B\u7684\u6E90\u8BED\u8A00\n to: \"\", // \u76EE\u6807\u8BED\u8A00\uFF08\u53EF\u9009\uFF09\n}\n\n\n// Hook \u8303\u4F8B\n// URL\nhttps://translate.googleapis.com/translate_a/single?client=gtx&dj=1&dt=t&ie=UTF-8&q={{text}}&sl=en&tl=zh-CN\n\n// Request Hook\n(text, from, to, url, key) => [url, {\n headers: {\n \"Content-type\": \"application/json\",\n },\n method: \"GET\",\n body: null,\n}]\n\n// Response Hook\n// \u5176\u4E2D\u8FD4\u56DE\u6570\u7EC4\u7B2C\u4E00\u4E2A\u503C\u8868\u793A\u8BD1\u6587\u5B57\u7B26\u4E32\uFF0C\u7B2C\u4E8C\u4E2A\u503C\u4E3A\u5E03\u5C14\u503C\uFF0C\u8868\u793A\u539F\u6587\u8BED\u8A00\u4E0E\u76EE\u6807\u8BED\u8A00\u662F\u5426\u76F8\u540C\n(res, text, from, to) => [res.sentences.map((item) => item.trans).join(\" \"), to === res.src]\n\n\n// \u652F\u6301\u7684\u8BED\u8A00\u4EE3\u7801\u5982\u4E0B\n".concat(customApiLangs,"\n");const customApiHelpEN="// Default request\n{\n \"url\": \"{{url}}\",\n \"method\": \"POST\",\n \"headers\": {\n \"Content-type\": \"application/json\",\n \"Authorization\": \"Bearer {{key}}\"\n },\n \"body\": {\n \"text\": \"{{text}}\", // Text to be translated\n \"from\": \"{{from}}\", // The language of the text (may be empty)\n \"to\": \"{{to}}\", // Target language\n },\n}\n\n\n// Default response\n{\n text: \"\", // translated text\n from: \"\", // Recognized source language\n to: \"\", // Target language (optional)\n}\n\n\n/// Hook Example\n// URL\nhttps://translate.googleapis.com/translate_a/single?client=gtx&dj=1&dt=t&ie=UTF-8&q={{text}}&sl=en&tl=zh-CN\n\n// Request Hook\n(text, from, to, url, key) => [url, {\n headers: {\n \"Content-type\": \"application/json\",\n },\n method: \"GET\",\n body: null,\n}]\n\n// Response Hook\n// In the returned array, the first value is the translated string, while the second value is a boolean\n// that indicates whether the source language is the same as the target language.\n(res, text, from, to) => [res.sentences.map((item) => item.trans).join(\" \"), to === res.src]\n\n\n// The supported language codes are as follows\n".concat(customApiLangs,"\n");const requestHookHelperZH="1\u3001\u7B2C\u4E00\u4E2A\u53C2\u6570\u5305\u542B\u5982\u4E0B\u5B57\u6BB5\uFF1A'texts', 'from', 'to', 'url', 'key', 'model', 'systemPrompt', ...\n2\u3001\u8FD4\u56DE\u503C\u5FC5\u987B\u662F\u5305\u542B\u4EE5\u4E0B\u5B57\u6BB5\u7684\u5BF9\u8C61\uFF1A 'url', 'body', 'headers', 'method'\n3\u3001\u5982\u8FD4\u56DE\u7A7A\u503C\uFF0C\u5219hook\u51FD\u6570\u4E0D\u4F1A\u4EA7\u751F\u4EFB\u4F55\u6548\u679C\u3002\n\n// \u793A\u4F8B\nasync (args, { url, body, headers, userMsg, method } = {}) => {\n return { url, body, headers, userMsg, method };\n}";const requestHookHelperEN="1. The first parameter contains the following fields: 'texts', 'from', 'to', 'url', 'key', 'model', 'systemPrompt', ...\n2. The return value must be an object containing the following fields: 'url', 'body', 'headers', 'method'\n3. If a null value is returned, the hook function will have no effect.\n\n// Example\nasync (args, { url, body, headers, userMsg, method } = {}) => {\n return { url, body, headers, userMsg, method };\n}";const responsetHookHelperZH="1\u3001\u7B2C\u4E00\u4E2A\u53C2\u6570\u5305\u542B\u5982\u4E0B\u5B57\u6BB5\uFF1A'res', ...\n2\u3001\u8FD4\u56DE\u503C\u5FC5\u987B\u662F\u5305\u542B\u4EE5\u4E0B\u5B57\u6BB5\u7684\u5BF9\u8C61\uFF1A 'translations'\n \uFF08'translations' \u5E94\u4E3A\u4E00\u4E2A\u4E8C\u7EF4\u6570\u7EC4\uFF1A[[\u8BD1\u6587, \u539F\u6587\u8BED\u8A00]]\uFF09\n3\u3001\u5982\u8FD4\u56DE\u7A7A\u503C\uFF0C\u5219hook\u51FD\u6570\u4E0D\u4F1A\u4EA7\u751F\u4EFB\u4F55\u6548\u679C\u3002\n\n// \u793A\u4F8B\nasync ({ res, ...args }) => {\n const translations = [[\"\u4F60\u597D\", \"en\"]];\n const modelMsg = {}; // \u7528\u4E8EAI\u4E0A\u4E0B\u6587\n return { translations, modelMsg };\n}";const responsetHookHelperEN="1. The first parameter contains the following fields: 'res', ...\n2. The return value must be an object containing the following fields: 'translations'\n ('translations' should be a two-dimensional array: [[translation, source language]]).\n3. If a null value is returned, the hook function will have no effect.\n\n// Example\nasync ({ res, ...args }) => {\n const translations = [[\"\u4F60\u597D\", \"en\"]];\n const modelMsg = {}; // For AI context\n return { translations, modelMsg };\n}";const I18N={app_name:{zh:"\u7B80\u7EA6\u7FFB\u8BD1",en:"KISS Translator",zh_TW:"\u7C21\u7D04\u7FFB\u8B6F"},translate:{zh:"\u7FFB\u8BD1",en:"Translate",zh_TW:"\u7FFB\u8B6F"},custom_api_help:{zh:customApiHelpZH,en:customApiHelpEN,zh_TW:customApiHelpZH},request_hook_helper:{zh:requestHookHelperZH,en:requestHookHelperEN,zh_TW:requestHookHelperZH},response_hook_helper:{zh:responsetHookHelperZH,en:responsetHookHelperEN,zh_TW:responsetHookHelperZH},translate_alt:{zh:"\u7FFB\u8BD1",en:"Translate",zh_TW:"\u7FFB\u8B6F"},basic_setting:{zh:"\u57FA\u672C\u8BBE\u7F6E",en:"Basic Setting",zh_TW:"\u57FA\u672C\u8A2D\u5B9A"},rules_setting:{zh:"\u89C4\u5219\u8BBE\u7F6E",en:"Rules Setting",zh_TW:"\u898F\u5247\u8A2D\u5B9A"},apis_setting:{zh:"\u63A5\u53E3\u8BBE\u7F6E",en:"Apis Setting",zh_TW:"API\u8A2D\u5B9A"},sync_setting:{zh:"\u540C\u6B65\u8BBE\u7F6E",en:"Sync Setting",zh_TW:"\u540C\u6B65\u8A2D\u5B9A"},patch_setting:{zh:"\u8865\u4E01\u8BBE\u7F6E",en:"Patch Setting",zh_TW:"\u4FEE\u88DC\u8A2D\u5B9A"},patch_setting_help:{zh:"\u9488\u5BF9\u4E00\u4E9B\u7279\u6B8A\u7F51\u7AD9\u7684\u4FEE\u6B63\u811A\u672C\uFF0C\u4EE5\u4FBF\u7FFB\u8BD1\u8F6F\u4EF6\u5F97\u5230\u66F4\u597D\u7684\u5C55\u793A\u6548\u679C\u3002",en:"Corrected scripts for some special websites so that the translation software can get better display results.",zh_TW:"\u91DD\u5C0D\u67D0\u4E9B\u7279\u6B8A\u7DB2\u7AD9\u7684\u4FEE\u6B63\u8173\u672C\uFF0C\u8B93\u7FFB\u8B6F\u8EDF\u9AD4\u6709\u66F4\u597D\u7684\u986F\u793A\u6548\u679C\u3002"},inject_webfix:{zh:"\u6CE8\u5165\u4FEE\u590D\u8865\u4E01",en:"Inject Webfix",zh_TW:"\u6CE8\u5165\u4FEE\u6B63\u88DC\u4E01"},about:{zh:"\u5173\u4E8E",en:"About",zh_TW:"\u95DC\u65BC"},about_md:{zh:"README.md",en:"README.en.md",zh_TW:"README.md"},about_md_local:{zh:"\u8BF7 [\u70B9\u51FB\u8FD9\u91CC](".concat("https://github.com/fishjar/kiss-translator",") \u67E5\u770B\u8BE6\u60C5\u3002"),en:"Please [click here](".concat("https://github.com/fishjar/kiss-translator",") for details."),zh_TW:"\u8ACB\u3010\u9EDE\u9019\u88E1\u3011\u67E5\u770B\u8A73\u7D30\u5167\u5BB9\u3002"},ui_lang:{zh:"\u754C\u9762\u8BED\u8A00",en:"Interface Language",zh_TW:"\u4ECB\u9762\u8A9E\u8A00"},fetch_limit:{zh:"\u6700\u5927\u5E76\u53D1\u8BF7\u6C42\u6570\u91CF (1-100)",en:"Maximum Number Of Concurrent Requests (1-100)",zh_TW:"\u6700\u5927\u540C\u6642\u8ACB\u6C42\u6578\u91CF (1-100)"},if_think:{zh:"\u542F\u7528\u6216\u7981\u7528\u6A21\u578B\u7684\u6DF1\u5EA6\u601D\u8003\u80FD\u529B",en:"Enable or disable the model\u2019s thinking behavior ",zh_TW:"\u555F\u7528\u6216\u505C\u7528\u6A21\u578B\u7684\u6DF1\u5EA6\u601D\u8003\u80FD\u529B"},think:{zh:"\u542F\u7528\u6DF1\u5EA6\u601D\u8003",en:"enable thinking",zh_TW:"\u555F\u7528\u6DF1\u5EA6\u601D\u8003"},nothink:{zh:"\u7981\u7528\u6DF1\u5EA6\u601D\u8003",en:"disable thinking",zh_TW:"\u505C\u7528\u6DF1\u5EA6\u601D\u8003"},think_ignore:{zh:"\u5FFD\u7565\u4EE5\u4E0B\u6A21\u578B\u7684\u8F93\u51FA,\u9017\u53F7(,)\u5206\u5272,\u5F53\u6A21\u578B\u652F\u6301\u601D\u8003\u4F46ollama\u4E0D\u652F\u6301\u65F6\u9700\u8981\u586B\u5199\u672C\u53C2\u6570",en:"Ignore the block for the following models, comma (,) separated",zh_TW:"\u5FFD\u7565\u4EE5\u4E0B\u6A21\u578B\u7684 \u8F38\u51FA\uFF0C\u4EE5\u9017\u865F (,) \u5206\u9694\uFF1B\u7576\u6A21\u578B\u652F\u63F4\u601D\u8003\u4F46 ollama \u4E0D\u652F\u63F4\u6642\u9700\u8981\u586B\u5BEB\u6B64\u53C3\u6578"},fetch_interval:{zh:"\u6BCF\u6B21\u8BF7\u6C42\u95F4\u9694\u65F6\u95F4 (0-5000ms)",en:"Time Between Requests (0-5000ms)",zh_TW:"\u6BCF\u6B21\u8ACB\u6C42\u9593\u9694\u6642\u9593 (0-5000ms)"},translate_interval:{zh:"\u7FFB\u8BD1\u95F4\u9694\u65F6\u95F4 (10-2000ms)",en:"Translation Interval (10-2000ms)",zh_TW:"\u7FFB\u8B6F\u9593\u9694\u6642\u9593 (10-2000ms)"},http_timeout:{zh:"\u8BF7\u6C42\u8D85\u65F6\u65F6\u95F4 (5000-60000ms)",en:"Request Timeout Time (5000-60000ms)",zh_TW:"\u8ACB\u6C42\u903E\u6642\u6642\u9593 (5000-60000ms)"},custom_header:{zh:"\u81EA\u5B9A\u4E49Header\u53C2\u6570",en:"Custom Header Params"},custom_header_help:{zh:"\u4F7F\u7528JSON\u683C\u5F0F\uFF0C\u4F8B\u5982 \"User-Agent\": \"Mozilla/5.0 (X11; Linux x86_64; rv:141.0) Gecko/20100101 Firefox/141.0\"",en:"Use JSON format, for example \"User-Agent\": \"Mozilla/5.0 (X11; Linux x86_64; rv:141.0) Gecko/20100101 Firefox/141.0\""},custom_body:{zh:"\u81EA\u5B9A\u4E49Body\u53C2\u6570",en:"Custom Body Params"},custom_body_help:{zh:"\u4F7F\u7528JSON\u683C\u5F0F\uFF0C\u4F8B\u5982 \"top_p\": 0.7",en:"Use JSON format, for example \"top_p\": 0.7"},min_translate_length:{zh:"\u6700\u5C0F\u7FFB\u8BD1\u5B57\u7B26\u6570 (1-100)",en:"Minimum number Of Translated Characters (1-100)",zh_TW:"\u6700\u5C0F\u7FFB\u8B6F\u5B57\u5143\u6578 (1-100)"},max_translate_length:{zh:"\u6700\u5927\u7FFB\u8BD1\u5B57\u7B26\u6570 (100-100000)",en:"Maximum number Of Translated Characters (100-100000)",zh_TW:"\u6700\u5927\u7FFB\u8B6F\u5B57\u5143\u6578 (100-100000)"},num_of_newline_characters:{zh:"\u6362\u884C\u5B57\u7B26\u6570 (1-1000)",en:"Number of Newline Characters (1-1000)",zh_TW:"\u63DB\u884C\u5B57\u5143\u6578 (1-1000)"},translate_service:{zh:"\u7FFB\u8BD1\u670D\u52A1",en:"Translate Service",zh_TW:"\u7FFB\u8B6F\u670D\u52D9"},translate_service_multiple:{zh:"\u7FFB\u8BD1\u670D\u52A1 (\u652F\u6301\u591A\u9009)",en:"Translation service (multiple supported)",zh_TW:"\u7FFB\u8B6F\u670D\u52D9 (\u652F\u63F4\u591A\u9078)"},translate_timing:{zh:"\u7FFB\u8BD1\u65F6\u673A",en:"Translate Timing",zh_TW:"\u7FFB\u8B6F\u6642\u6A5F"},mk_pagescroll:{zh:"\u6EDA\u52A8\u52A0\u8F7D\u7FFB\u8BD1\uFF08\u63A8\u8350\uFF09",en:"Rolling Loading (Suggested)",zh_TW:"\u6EFE\u52D5\u8F09\u5165\u7FFB\u8B6F\uFF08\u5EFA\u8B70\uFF09"},mk_pageopen:{zh:"\u7ACB\u5373\u5168\u90E8\u7FFB\u8BD1",en:"Translate all now",zh_TW:"\u7ACB\u5373\u5168\u90E8\u7FFB\u8B6F"},mk_mouseover:{zh:"\u9F20\u6807\u60AC\u505C\u7FFB\u8BD1",en:"Mouseover",zh_TW:"\u6ED1\u9F20\u61F8\u505C\u7FFB\u8B6F"},mk_ctrlKey:{zh:"Control + \u9F20\u6807\u60AC\u505C",en:"Control + Mouseover",zh_TW:"Control + \u6ED1\u9F20\u61F8\u505C"},mk_shiftKey:{zh:"Shift + \u9F20\u6807\u60AC\u505C",en:"Shift + Mouseover",zh_TW:"Shift + \u6ED1\u9F20\u61F8\u505C"},mk_altKey:{zh:"Alt + \u9F20\u6807\u60AC\u505C",en:"Alt + Mouseover",zh_TW:"Alt + \u6ED1\u9F20\u61F8\u505C"},from_lang:{zh:"\u539F\u6587\u8BED\u8A00",en:"Source Language",zh_TW:"\u539F\u6587\u8A9E\u8A00"},to_lang:{zh:"\u76EE\u6807\u8BED\u8A00",en:"Target Language",zh_TW:"\u76EE\u6A19\u8A9E\u8A00"},to_lang2:{zh:"\u7B2C\u4E8C\u76EE\u6807\u8BED\u8A00",en:"Target Language 2",zh_TW:"\u7B2C\u4E8C\u76EE\u6A19\u8A9E\u8A00"},to_lang2_helper:{zh:"\u8BBE\u5B9A\u540E\uFF0C\u4E0E\u76EE\u6807\u8BED\u8A00\u4EA7\u751F\u4E92\u8BD1\u6548\u679C\uFF0C\u4F46\u4F9D\u8D56\u8FDC\u7A0B\u8BED\u8A00\u8BC6\u522B\u3002",en:"After setting, it will produce mutual translation effect with the target language, but it relies on remote language recognition.",zh_TW:"\u8A2D\u5B9A\u5F8C\u6703\u8207\u76EE\u6A19\u8A9E\u8A00\u4E92\u8B6F\uFF0C\u4F46\u4F9D\u8CF4\u9060\u7AEF\u8A9E\u8A00\u8B58\u5225\u3002"},text_style:{zh:"\u8BD1\u6587\u6837\u5F0F",en:"Text Style",zh_TW:"\u8B6F\u6587\u6A23\u5F0F"},text_style_alt:{zh:"\u8BD1\u6587\u6837\u5F0F",en:"Text Style",zh_TW:"\u8B6F\u6587\u6A23\u5F0F"},bg_color:{zh:"\u6837\u5F0F\u989C\u8272",en:"Style Color",zh_TW:"\u6A23\u5F0F\u984F\u8272"},remain_unchanged:{zh:"\u4FDD\u7559\u4E0D\u53D8",en:"Remain Unchanged",zh_TW:"\u4FDD\u7559\u4E0D\u8B8A"},google_api:{zh:"\u8C37\u6B4C\u7FFB\u8BD1\u63A5\u53E3",en:"Google Translate API",zh_TW:"Google \u7FFB\u8B6F\u4ECB\u9762"},default_selector:{zh:"\u9ED8\u8BA4\u9009\u62E9\u5668",en:"Default selector",zh_TW:"\u9810\u8A2D\u9078\u64C7\u5668"},selector_rules:{zh:"\u9009\u62E9\u5668\u89C4\u5219",en:"Selector Rules",zh_TW:"\u9078\u64C7\u5668\u898F\u5247"},save:{zh:"\u4FDD\u5B58",en:"Save",zh_TW:"\u5132\u5B58"},edit:{zh:"\u7F16\u8F91",en:"Edit",zh_TW:"\u7DE8\u8F2F"},cancel:{zh:"\u53D6\u6D88",en:"Cancel",zh_TW:"\u53D6\u6D88"},delete:{zh:"\u5220\u9664",en:"Delete",zh_TW:"\u522A\u9664"},reset:{zh:"\u91CD\u7F6E",en:"Reset",zh_TW:"\u91CD\u8A2D"},add:{zh:"\u6DFB\u52A0",en:"Add",zh_TW:"\u65B0\u589E"},inject_rules:{zh:"\u6CE8\u5165\u8BA2\u9605\u89C4\u5219",en:"Inject Subscribe Rules",zh_TW:"\u6CE8\u5165\u8A02\u95B1\u898F\u5247"},personal_rules:{zh:"\u4E2A\u4EBA\u89C4\u5219",en:"Rules",zh_TW:"\u500B\u4EBA\u898F\u5247"},subscribe_rules:{zh:"\u8BA2\u9605\u89C4\u5219",en:"Subscribe",zh_TW:"\u8A02\u95B1\u898F\u5247"},overwrite_subscribe_rules:{zh:"\u8986\u5199\u8BA2\u9605\u89C4\u5219",en:"Overwrite",zh_TW:"\u8986\u5BEB\u8A02\u95B1\u898F\u5247"},subscribe_url:{zh:"\u8BA2\u9605\u5730\u5740",en:"Subscribe URL",zh_TW:"\u8A02\u95B1\u7DB2\u5740"},rules_warn_1:{zh:"1\u3001\u89C4\u5219\u751F\u6548\u7684\u4F18\u5148\u7EA7\u4F9D\u6B21\u4E3A\uFF1A\u4E2A\u4EBA\u89C4\u5219 > \u8BA2\u9605\u89C4\u5219 > \u5168\u5C40\u89C4\u5219\u3002\"\u5168\u5C40\u89C4\u5219\"\u76F8\u5F53\u4E8E\u515C\u5E95\u89C4\u5219\u3002",en:"1. The priority of rules is: personal rules > subscription rules > global rules. \"Global rules\" are like a fallback rule.",zh_TW:"1.\u898F\u5247\u751F\u6548\u7684\u512A\u5148\u9806\u5E8F\u4F9D\u5E8F\u70BA\uFF1A\u500B\u4EBA\u898F\u5247 > \u8A02\u95B1\u898F\u5247 > \u5168\u57DF\u898F\u5247\u3002 \"\u5168\u57DF\u898F\u5247\"\u76F8\u7576\u65BC\u515C\u5E95\u898F\u5247\u3002"},rules_warn_2:{zh:"2\u3001\u201C\u8BA2\u9605\u89C4\u5219\u201D\u9009\u62E9\u6CE8\u5165\u540E\u624D\u4F1A\u751F\u6548\u3002",en:"2. \"Subscription rules\" will take effect only after injection is selected.",zh_TW:"2\u3001\u300C\u8A02\u95B1\u898F\u5247\u300D\u9078\u64C7\u6CE8\u5165\u5F8C\u624D\u6703\u751F\u6548\u3002"},rules_warn_3:{zh:"3\u3001\u5173\u4E8E\u89C4\u5219\u586B\u5199\uFF1A\u8F93\u5165\u6846\u7559\u7A7A\u6216\u4E0B\u62C9\u6846\u9009\u201C*\u201D\u8868\u793A\u91C7\u7528\u5168\u5C40\u89C4\u5219\u3002",en:"3. Regarding filling in the rules: Leave the input box blank or select \"*\" in the drop-down box to use global rule.",zh_TW:"3. \u898F\u5247\u586B\u5BEB\u8AAA\u660E\uFF1A\u8F38\u5165\u6846\u7559\u7A7A\u6216\u4E0B\u62C9\u9078\u64C7\u300C*\u300D\u8868\u793A\u4F7F\u7528\u5168\u57DF\u898F\u5247\u3002"},sync_warn:{zh:"\u6D89\u53CA\u9690\u79C1\u6570\u636E\u7684\u540C\u6B65\u8BF7\u8C28\u614E\u9009\u62E9\u7B2C\u4E09\u65B9\u540C\u6B65\u670D\u52A1\uFF0C\u5EFA\u8BAE\u81EA\u884C\u642D\u5EFA kiss-worker \u6216 WebDAV \u670D\u52A1\u3002",en:"When synchronizing data that involves privacy, please be cautious about choosing third-party sync services. It is recommended to set up your own sync service using kiss-worker or WebDAV.",zh_TW:"\u540C\u6B65\u6D89\u53CA\u96B1\u79C1\u8CC7\u6599\u6642\uFF0C\u8ACB\u8B39\u614E\u9078\u64C7\u7B2C\u4E09\u65B9\u540C\u6B65\u670D\u52D9\uFF1B\u5EFA\u8B70\u81EA\u5EFA kiss-worker \u6216 WebDAV \u670D\u52D9\u3002"},sync_warn_2:{zh:"\u5982\u679C\u670D\u52A1\u5668\u5B58\u5728\u5176\u4ED6\u5BA2\u6237\u7AEF\u540C\u6B65\u7684\u6570\u636E\uFF0C\u7B2C\u4E00\u6B21\u540C\u6B65\u5C06\u76F4\u63A5\u8986\u76D6\u672C\u5730\u914D\u7F6E\uFF0C\u540E\u9762\u5219\u6839\u636E\u4FEE\u6539\u65F6\u95F4\uFF0C\u65B0\u7684\u8986\u76D6\u65E7\u7684\u3002",en:"If the server has data synchronized by other clients, the first synchronization will directly overwrite the local configuration, and later, according to the modification time, the new one will overwrite the old one.",zh_TW:"\u82E5\u4F3A\u670D\u5668\u4E0A\u5B58\u5728\u5176\u4ED6\u7528\u6236\u7AEF\u540C\u6B65\u7684\u8CC7\u6599\uFF0C\u7B2C\u4E00\u6B21\u540C\u6B65\u6703\u76F4\u63A5\u8986\u84CB\u672C\u6A5F\u8A2D\u5B9A\uFF1B\u4E4B\u5F8C\u5247\u4F9D\u4FEE\u6539\u6642\u9593\uFF0C\u7531\u65B0\u7684\u8986\u84CB\u820A\u7684\u3002"},about_sync_api:{zh:"\u81EA\u5EFAkiss-wroker\u6570\u636E\u540C\u6B65\u670D\u52A1",en:"Self-hosting a Kiss-worker data sync service",zh_TW:"\u81EA\u5EFA kiss-wroker \u8CC7\u6599\u540C\u6B65\u670D\u52D9"},about_api:{zh:"1\u3001\u5176\u4E2D BuiltinAI \u4E3A\u6D4F\u89C8\u5668\u5185\u7F6EAI\u7FFB\u8BD1\uFF0C\u76EE\u524D\u4EC5 Chrome 138 \u53CA\u4EE5\u4E0A\u7248\u672C\u5F97\u5230\u652F\u6301\u3002",en:"1. BuiltinAI is the browser's built-in AI translation, which is currently only supported by Chrome 138 and above.",zh_TW:"1.\u5176\u4E2D BuiltinAI \u70BA\u700F\u89BD\u5668\u5167\u5EFAAI\u7FFB\u8B6F\uFF0C\u76EE\u524D\u50C5 Chrome 138 \u4EE5\u4E0A\u7248\u672C\u652F\u63F4\u3002"},about_api_2:{zh:"2\u3001\u5927\u90E8\u5206AI\u63A5\u53E3\u90FD\u4E0EOpenAI\u517C\u5BB9\uFF0C\u56E0\u6B64\u9009\u62E9\u6DFB\u52A0OpenAI\u7C7B\u578B\u5373\u53EF\u3002It should be noted that Prompt has two types: batch translation and nobatch translation. Not all interfaces support batch translation.",en:"2. Most AI interfaces are compatible with OpenAI, so just choose to add the OpenAI type.",zh_TW:"2.\u5927\u90E8\u5206AI\u4ECB\u9762\u90FD\u8207OpenAI\u76F8\u5BB9\uFF0C\u56E0\u6B64\u9078\u64C7\u65B0\u589EOpenAI\u985E\u578B\u5373\u53EF\u3002\u8981\u6CE8\u610F\u7684\u662FPrompt\u5206\u805A\u5408\u7FFB\u8B6F\u548C\u975E\u805A\u5408\u7FFB\u8B6F\u5169\u7A2E\uFF0C\u4E0D\u662F\u6240\u6709\u4ECB\u9762\u90FD\u652F\u63F4\u805A\u5408\u7FFB\u8B6F\u3002"},about_api_3:{zh:"3\u3001\u6682\u672A\u5217\u51FA\u7684\u63A5\u53E3\uFF0C\u7406\u8BBA\u4E0A\u90FD\u53EF\u4EE5\u901A\u8FC7\u81EA\u5B9A\u4E49\u63A5\u53E3 (Custom) \u7684\u5F62\u5F0F\u652F\u6301\u3002",en:"3. Interfaces that have not yet been launched can theoretically be supported through custom interfaces.",zh_TW:"3\u3001\u66AB\u672A\u5217\u51FA\u7684\u4ECB\u9762\uFF0C\u7406\u8AD6\u4E0A\u90FD\u53EF\u900F\u904E\u81EA\u8A02\u4ECB\u9762 (Custom) \u7684\u5F62\u5F0F\u652F\u63F4\u3002"},about_api_proxy:{zh:"\u67E5\u770B\u81EA\u5EFA\u4E00\u4E2A\u7FFB\u8BD1\u63A5\u53E3\u4EE3\u7406",en:"Check out the self-built translation interface proxy",zh_TW:"\u67E5\u770B\u5982\u4F55\u81EA\u5EFA\u7FFB\u8B6F\u4ECB\u9762 Proxy"},setting_helper:{zh:"\u65B0\u65E7\u914D\u7F6E\u5E76\u4E0D\u517C\u5BB9\uFF0C\u5BFC\u51FA\u7684\u65E7\u7248\u914D\u7F6E\uFF0C\u52FF\u518D\u6B21\u5BFC\u5165\u3002",en:"The old and new configurations are not compatible. Do not import the exported old configuration again.",zh_TW:"\u65B0\u820A\u914D\u7F6E\u4E26\u4E0D\u76F8\u5BB9\uFF0C\u532F\u51FA\u7684\u820A\u7248\u914D\u7F6E\uFF0C\u52FF\u518D\u6B21\u532F\u5165\u3002"},style_none:{zh:"\u65E0",en:"None",zh_TW:"\u7121"},under_line:{zh:"\u4E0B\u5212\u76F4\u7EBF",en:"Underline",zh_TW:"\u4E0B\u5283\u76F4\u7DDA"},dot_line:{zh:"\u4E0B\u5212\u70B9\u72B6\u7EBF",en:"Dotted Underline",zh_TW:"\u4E0B\u5283\u9EDE\u72C0\u7DDA"},dash_line:{zh:"\u4E0B\u5212\u865A\u7EBF",en:"Dashed Underline",zh_TW:"\u4E0B\u5283\u865B\u7DDA"},dash_box:{zh:"\u865A\u7EBF\u6846",en:"Dashed Box"},dash_line_bold:{zh:"\u4E0B\u5212\u865A\u7EBF\u52A0\u7C97",en:"Dashed Underline Bold",zh_TW:"\u4E0B\u5283\u865B\u7DDA"},dash_box_bold:{zh:"\u865A\u7EBF\u6846\u52A0\u7C97",en:"Dashed Box Bold",zh_TW:"\u865B\u7DDA\u6846\u52A0\u7C97"},marker:{zh:"\u9A6C\u514B\u7B14",en:"Marker",zh_TW:"\u99AC\u514B\u7B46"},gradient_marker:{zh:"\u6E10\u53D8\u9A6C\u514B\u7B14",en:"Gradient Marker",zh_TW:"\u6F38\u5C64\u99AC\u514B\u7B46"},wavy_line:{zh:"\u4E0B\u5212\u6CE2\u6D6A\u7EBF",en:"Wavy Underline",zh_TW:"\u4E0B\u5283\u6CE2\u6D6A\u7DDA"},wavy_line_bold:{zh:"\u4E0B\u5212\u6CE2\u6D6A\u7EBF\u52A0\u7C97",en:"Wavy Underline Bold",zh_TW:"\u4E0B\u5283\u6CE2\u6D6A\u7DDA\u52A0\u7C97"},fuzzy:{zh:"\u6A21\u7CCA",en:"Fuzzy",zh_TW:"\u6A21\u7CCA"},highlight:{zh:"\u9AD8\u4EAE",en:"Highlight",zh_TW:"\u53CD\u767D\u6A19\u793A"},blockquote:{zh:"\u5F15\u7528",en:"Blockquote",zh_TW:"\u5F15\u7528"},gradient:{zh:"\u6E10\u53D8",en:"Gradient",zh_TW:"\u6F38\u8B8A"},blink:{zh:"\u95EA\u73B0",en:"Blink",zh_TW:"\u9583\u73FE"},glow:{zh:"\u53D1\u5149",en:"Glow",zh_TW:"\u767C\u5149"},colorful:{zh:"\u591A\u5F69",en:"Colorful",zh_TW:"\u591A\u5F69"},setting:{zh:"\u8BBE\u7F6E",en:"Setting",zh_TW:"\u8A2D\u5B9A"},pattern:{zh:"\u5339\u914D\u7F51\u5740",en:"URL pattern",zh_TW:"\u5339\u914D\u7DB2\u5740"},pattern_helper:{zh:"1\u3001\u652F\u6301\u661F\u53F7(*)\u901A\u914D\u7B26\u30022\u3001\u591A\u4E2AURL\u7528\u6362\u884C\u6216\u82F1\u6587\u9017\u53F7\u201C,\u201D\u5206\u9694\u3002",en:"1. Supports the asterisk (*) wildcard character. 2. Separate multiple URLs with newlines or English commas \",\".",zh_TW:"1. \u652F\u63F4\u661F\u865F (*) \u842C\u7528\u5B57\u5143\u30022. \u591A\u500B URL \u8ACB\u4EE5\u63DB\u884C\u6216\u82F1\u6587\u9017\u865F\u300C,\u300D\u5206\u9694\u3002"},selector_helper:{zh:"1\u3001\u9700\u8981\u7FFB\u8BD1\u7684\u76EE\u6807\u5143\u7D20\u30022\u3001\u5F00\u542F\u81EA\u52A8\u626B\u63CF\u9875\u9762\u540E\uFF0C\u672C\u8BBE\u7F6E\u65E0\u6548\u30023\u3001\u9075\u5FAACSS\u9009\u62E9\u5668\u8BED\u6CD5\u3002",en:"1. The target element to be translated. 2. This setting is invalid when automatic page scanning is enabled. 3. Follow the CSS selector syntax.",zh_TW:"1\u3001\u9700\u8981\u7FFB\u8B6F\u7684\u76EE\u6A19\u5143\u7D20\u3002 2.\u958B\u555F\u81EA\u52D5\u6383\u63CF\u9801\u9762\u5F8C\uFF0C\u672C\u8A2D\u5B9A\u7121\u6548\u3002 3.\u9075\u5FAACSS\u9078\u64C7\u5668\u8A9E\u6CD5\u3002"},translate_switch:{zh:"\u5F00\u542F\u7FFB\u8BD1",en:"Translate Switch",zh_TW:"\u958B\u555F\u7FFB\u8B6F"},default_enabled:{zh:"\u9ED8\u8BA4\u5F00\u542F",en:"Enabled",zh_TW:"\u9810\u8A2D\u958B\u555F"},default_disabled:{zh:"\u9ED8\u8BA4\u5173\u95ED",en:"Disabled",zh_TW:"\u9810\u8A2D\u95DC\u9589"},selector:{zh:"\u9009\u62E9\u5668",en:"Selector",zh_TW:"\u9078\u64C7\u5668"},target_selector:{zh:"\u76EE\u6807\u5143\u7D20\u9009\u62E9\u5668",en:"Target element selector",zh_TW:"\u76EE\u6A19\u5143\u7D20\u9078\u64C7\u5668"},keep_selector:{zh:"\u4FDD\u7559\u5143\u7D20\u9009\u62E9\u5668",en:"Keep unchanged selector",zh_TW:"\u4FDD\u7559\u5143\u7D20\u9078\u64C7\u5668"},keep_selector_helper:{zh:"1\u3001\u76EE\u6807\u5143\u7D20\u4E0B\u9762\u9700\u8981\u539F\u6837\u4FDD\u7559\u7684\u5B50\u8282\u70B9\u30022\u3001\u9075\u5FAACSS\u9009\u62E9\u5668\u8BED\u6CD5\u3002",en:"1. The child nodes under the target element need to remain intact. 2. Follow the CSS selector syntax.",zh_TW:"1. \u76EE\u6A19\u5143\u7D20\u4E0B\u7684\u5B50\u7BC0\u9EDE\u9700\u8981\u4FDD\u6301\u539F\u6A23\u3002 2. \u9075\u5FAA CSS \u9078\u64C7\u5668\u8A9E\u6CD5\u3002"},root_selector:{zh:"\u6839\u8282\u70B9\u9009\u62E9\u5668",en:"Root node selector",zh_TW:"\u6839\u7BC0\u9EDE\u9078\u64C7\u5668"},root_selector_helper:{zh:"1\u3001\u7528\u4E8E\u7F29\u5C0F\u9875\u9762\u7FFB\u8BD1\u8303\u56F4\u30022\u3001\u9075\u5FAACSS\u9009\u62E9\u5668\u8BED\u6CD5\u3002",en:"1. Used to narrow the translation scope of the page. 2. Follow the CSS selector syntax.",zh_TW:"1.\u7528\u65BC\u7E2E\u5C0F\u9801\u9762\u7FFB\u8B6F\u7BC4\u570D\u3002 2\u3001\u9075\u5FAACSS\u9078\u64C7\u5668\u8A9E\u6CD5\u3002"},ignore_selector:{zh:"\u4E0D\u7FFB\u8BD1\u8282\u70B9\u9009\u62E9\u5668",en:"Ignore node selectors",zh_TW:"\u4E0D\u7FFB\u8B6F\u7BC0\u9EDE\u9078\u64C7\u5668"},ignore_selector_helper:{zh:"1\u3001\u9700\u8981\u5FFD\u7565\u7684\u8282\u70B9\u30022\u3001\u9075\u5FAACSS\u9009\u62E9\u5668\u8BED\u6CD5\u3002",en:"1. Nodes to be ignored. 2. Follow CSS selector syntax.",zh_TW:"1\u3001\u9700\u8981\u5FFD\u7565\u7684\u7BC0\u9EDE\u3002 2\u3001\u9075\u5FAACSS\u9078\u64C7\u5668\u8A9E\u6CD5\u3002"},terms:{zh:"\u4E13\u4E1A\u672F\u8BED",en:"Terms",zh_TW:"\u5C08\u696D\u8853\u8A9E"},terms_helper:{zh:"1\u3001\u652F\u6301\u6B63\u5219\u8868\u8FBE\u5F0F\u5339\u914D\uFF0C\u65E0\u9700\u659C\u6746\uFF0C\u4E0D\u652F\u6301\u4FEE\u9970\u7B26\u30022\u3001\u591A\u6761\u672F\u8BED\u7528\u6362\u884C\u6216\u5206\u53F7\u201C;\u201D\u9694\u5F00\u30023\u3001\u672F\u8BED\u548C\u8BD1\u6587\u7528\u82F1\u6587\u9017\u53F7\u201C,\u201D\u9694\u5F00\u30024\u3001\u6CA1\u6709\u8BD1\u6587\u89C6\u4E3A\u4E0D\u7FFB\u8BD1\u672F\u8BED\u3002",en:"1. Supports regular expression matching, no slash required, and no modifiers are supported. 2. Separate multiple terms with newlines or semicolons \";\". 3. Terms and translations are separated by English commas \",\". 4. If there is no translation, the term will be deemed not to be translated.",zh_TW:"1. \u652F\u63F4\u6B63\u5247\u8868\u9054\u5F0F\u6BD4\u5C0D\uFF0C\u7121\u9700\u659C\u7DDA\uFF0C\u4E14\u4E0D\u652F\u63F4\u4FEE\u98FE\u7B26\u30022. \u591A\u689D\u8853\u8A9E\u4EE5\u63DB\u884C\u6216\u5206\u865F\u300C;\u300D\u5206\u9694\u30023. \u8853\u8A9E\u8207\u8B6F\u6587\u4EE5\u82F1\u6587\u9017\u865F\u300C,\u300D\u5206\u9694\u30024. \u7121\u8B6F\u6587\u8005\u8996\u70BA\u4E0D\u7FFB\u8B6F\u8A72\u8853\u8A9E\u3002"},ai_terms:{zh:"AI\u4E13\u4E1A\u672F\u8BED",en:"AI Terms",zh_TW:"AI\u5C08\u696D\u8853\u8A9E"},ai_terms_helper:{zh:"1\u3001AI\u667A\u80FD\u66FF\u6362\uFF0C\u4E0D\u652F\u6301\u6B63\u5219\u8868\u8FBE\u5F0F\u30022\u3001\u591A\u6761\u672F\u8BED\u7528\u6362\u884C\u6216\u5206\u53F7\u201C;\u201D\u9694\u5F00\u30023\u3001\u672F\u8BED\u548C\u8BD1\u6587\u7528\u82F1\u6587\u9017\u53F7\u201C,\u201D\u9694\u5F00\u30024\u3001\u6CA1\u6709\u8BD1\u6587\u89C6\u4E3A\u4E0D\u7FFB\u8BD1\u672F\u8BED\u3002",en:"1. AI intelligent replacement does not support regular expressions.2. Separate multiple terms with newlines or semicolons \";\". 3. Terms and translations are separated by English commas \",\". 4. If there is no translation, the term will be deemed not to be translated.",zh_TW:"1.AI\u667A\u80FD\u66FF\u63DB\uFF0C\u4E0D\u652F\u63F4\u6B63\u898F\u8868\u793A\u5F0F\u30022. \u591A\u689D\u8853\u8A9E\u4EE5\u63DB\u884C\u6216\u5206\u865F\u300C;\u300D\u5206\u9694\u30023. \u8853\u8A9E\u8207\u8B6F\u6587\u4EE5\u82F1\u6587\u9017\u865F\u300C,\u300D\u5206\u9694\u30024. \u7121\u8B6F\u6587\u8005\u8996\u70BA\u4E0D\u7FFB\u8B6F\u8A72\u8853\u8A9E\u3002"},text_ext_style:{zh:"\u8BD1\u6587\u9644\u52A0\u6837\u5F0F",en:"Translation additional styles",zh_TW:"\u8B6F\u6587\u9644\u52A0\u6A23\u5F0F"},selector_style:{zh:"\u9009\u62E9\u5668\u8282\u70B9\u6837\u5F0F",en:"Selector Style",zh_TW:"\u9078\u64C7\u5668\u7BC0\u9EDE\u6A23\u5F0F"},terms_style:{zh:"\u4E13\u4E1A\u672F\u8BED\u6837\u5F0F",en:"Terms Style",zh_TW:"\u5C08\u696D\u8853\u8A9E\u6A23\u5F0F"},highlight_style:{zh:"\u8BCD\u6C47\u9AD8\u4EAE\u6837\u5F0F",en:"Fav Words highlight style",zh_TW:"\u8A5E\u5F59\u9AD8\u4EAE\u6A23\u5F0F"},selector_style_helper:{zh:"\u5F00\u542F\u7FFB\u8BD1\u65F6\u6CE8\u5165\u3002",en:"It is injected when translation is turned on.",zh_TW:"\u5728\u958B\u555F\u7FFB\u8B6F\u6642\u6CE8\u5165\u3002"},selector_parent_style:{zh:"\u9009\u62E9\u5668\u7236\u8282\u70B9\u6837\u5F0F",en:"Parent Selector Style",zh_TW:"\u9078\u64C7\u5668\u7236\u7BC0\u9EDE\u6A23\u5F0F"},selector_grand_style:{zh:"\u9009\u62E9\u5668\u7956\u8282\u70B9\u6837\u5F0F",en:"Grand Selector Style",zh_TW:"\u9078\u64C7\u5668\u7956\u7BC0\u9EDE\u6A23\u5F0F"},inject_js:{zh:"\u6CE8\u5165JS",en:"Inject JS",zh_TW:"\u6CE8\u5165 JS"},inject_js_helper:{zh:"\u9884\u52A0\u8F7D\u65F6\u6CE8\u5165\uFF0C\u4E00\u4E2A\u9875\u9762\u4EC5\u8FD0\u884C\u4E00\u6B21\u3002\u5185\u7F6E\u5168\u5C40\u5BF9\u8C61 KT: {\n apiTranslate,\n apiDectect,\n apiSetting,\n apisMap,\n toLang,\n docInfo,\n glossary,\n }",en:"Injected during preload, runs only once per page. Built-in global object KT: {\n apiTranslate,\n apiDectect,\n apiSetting,\n apisMap,\n toLang,\n docInfo,\n glossary,\n }",zh_TW:"\u9810\u5148\u8F09\u5165\u6642\u6CE8\u5165\uFF0C\u4E00\u500B\u9801\u9762\u50C5\u904B\u884C\u4E00\u6B21\u3002\u5167\u5EFA\u5168\u57DF\u7269\u4EF6 KT: {\n apiTranslate,\n apiDectect,\n apiSetting,\n apisMap,\n toLang,\n docInfo,\n glossary,\n }"},inject_css:{zh:"\u6CE8\u5165CSS",en:"Inject CSS",zh_TW:"\u6CE8\u5165 CSS"},inject_css_helper:{zh:"\u9884\u52A0\u8F7D\u65F6\u6CE8\u5165\uFF0C\u4E00\u4E2A\u9875\u9762\u4EC5\u8FD0\u884C\u4E00\u6B21\u3002",en:"Injected during preload, runs only once per page.",zh_TW:"\u9810\u5148\u8F09\u5165\u6642\u6CE8\u5165\uFF0C\u4E00\u500B\u9801\u9762\u50C5\u904B\u884C\u4E00\u6B21\u3002"},fixer_function:{zh:"\u4FEE\u590D\u51FD\u6570",en:"Fixer Function",zh_TW:"\u4FEE\u5FA9\u51FD\u5F0F"},fixer_function_helper:{zh:"1\u3001br\u662F\u5C06
\u6362\u884C\u66FF\u6362\u6210

\u30022\u3001bn\u662F\u5C06\\n\u6362\u884C\u66FF\u6362\u6210

\u30023\u3001brToDiv\u548CbnToDiv\u662F\u66FF\u6362\u6210

\u3002",en:"1. br replaces
line breaks with

. 2. bn replaces \\n newline with

. 3. brToDiv and bnToDiv are replaced with

.",zh_TW:"1. br \u6703\u5C07
\u63DB\u884C\u66FF\u63DB\u70BA

\u30022. bn \u6703\u5C07 \\n \u63DB\u884C\u66FF\u63DB\u70BA

\u30023. brToDiv \u8207 bnToDiv \u6703\u66FF\u63DB\u70BA

\u3002"},import:{zh:"\u5BFC\u5165",en:"Import",zh_TW:"\u532F\u5165"},export:{zh:"\u5BFC\u51FA",en:"Export",zh_TW:"\u532F\u51FA"},export_translation:{zh:"\u5BFC\u51FA\u91CA\u4E49",en:"Export Translation",zh_TW:"\u532F\u51FA\u91CB\u7FA9"},error_cant_be_blank:{zh:"\u4E0D\u80FD\u4E3A\u7A7A",en:"Can not be blank",zh_TW:"\u4E0D\u53EF\u70BA\u7A7A"},error_duplicate_values:{zh:"\u5B58\u5728\u91CD\u590D\u7684\u503C",en:"There are duplicate values",zh_TW:"\u5B58\u5728\u91CD\u8907\u7684\u503C"},error_wrong_file_type:{zh:"\u9519\u8BEF\u7684\u6587\u4EF6\u7C7B\u578B",en:"Wrong file type",zh_TW:"\u6A94\u6848\u985E\u578B\u932F\u8AA4"},error_fetch_url:{zh:"\u8BF7\u68C0\u67E5url\u5730\u5740\u662F\u5426\u6B63\u786E\u6216\u7A0D\u540E\u518D\u8BD5\u3002",en:"Please check if the url address is correct or try again later.",zh_TW:"\u8ACB\u6AA2\u67E5 URL \u662F\u5426\u6B63\u78BA\u6216\u7A0D\u5F8C\u518D\u8A66\u3002"},deepl_api:{zh:"DeepL \u63A5\u53E3",en:"DeepL API",zh_TW:"DeepL \u4ECB\u9762"},deepl_key:{zh:"DeepL \u5BC6\u94A5",en:"DeepL Key",zh_TW:"DeepL \u91D1\u9470"},openai_api:{zh:"OpenAI \u63A5\u53E3",en:"OpenAI API",zh_TW:"OpenAI \u4ECB\u9762"},openai_key:{zh:"OpenAI \u5BC6\u94A5",en:"OpenAI Key",zh_TW:"OpenAI \u91D1\u9470"},openai_model:{zh:"OpenAI \u6A21\u578B",en:"OpenAI Model",zh_TW:"OpenAI \u6A21\u578B"},openai_prompt:{zh:"OpenAI \u63D0\u793A\u8BCD",en:"OpenAI Prompt",zh_TW:"OpenAI \u63D0\u793A\u8A5E"},if_clear_cache:{zh:"\u662F\u5426\u6E05\u9664\u7F13\u5B58\uFF08\u9ED8\u8BA4\u7F13\u5B587\u5929\uFF09",en:"Whether clear cache (Default cache is 7 days)",zh_TW:"\u662F\u5426\u6E05\u9664\u5FEB\u53D6\uFF08\u9810\u8A2D\u5FEB\u53D67\u5929\uFF09"},clear_cache_never:{zh:"\u4E0D\u6E05\u9664\u7F13\u5B58",en:"Never clear cache",zh_TW:"\u4E0D\u6E05\u9664\u5FEB\u53D6"},clear_cache_restart:{zh:"\u91CD\u542F\u6D4F\u89C8\u5668\u65F6\u6E05\u9664\u7F13\u5B58",en:"Clear cache when restarting browser",zh_TW:"\u91CD\u65B0\u555F\u52D5\u700F\u89BD\u5668\u6642\u6E05\u9664\u5FEB\u53D6"},data_sync_type:{zh:"\u6570\u636E\u540C\u6B65\u65B9\u5F0F",en:"Data Sync Type",zh_TW:"\u8CC7\u6599\u540C\u6B65\u65B9\u5F0F"},data_sync_url:{zh:"\u6570\u636E\u540C\u6B65\u63A5\u53E3",en:"Data Sync API",zh_TW:"\u8CC7\u6599\u540C\u6B65\u4ECB\u9762"},data_sync_user:{zh:"\u6570\u636E\u540C\u6B65\u8D26\u6237",en:"Data Sync User",zh_TW:"\u8CC7\u6599\u540C\u6B65\u5E33\u865F"},data_sync_key:{zh:"\u6570\u636E\u540C\u6B65\u5BC6\u94A5",en:"Data Sync Key",zh_TW:"\u8CC7\u6599\u540C\u6B65\u91D1\u9470"},sync_now:{zh:"\u7ACB\u5373\u540C\u6B65",en:"Sync Now",zh_TW:"\u7ACB\u5373\u540C\u6B65"},sync_success:{zh:"\u540C\u6B65\u6210\u529F\uFF01",en:"Sync Success",zh_TW:"\u540C\u6B65\u6210\u529F\uFF01"},sync_failed:{zh:"\u540C\u6B65\u5931\u8D25\uFF01",en:"Sync Error",zh_TW:"\u540C\u6B65\u5931\u6557\uFF01"},error_got_some_wrong:{zh:"\u62B1\u6B49\uFF0C\u51FA\u9519\u4E86\uFF01",en:"Sorry, something went wrong!",zh_TW:"\u62B1\u6B49\uFF0C\u767C\u751F\u932F\u8AA4\uFF01"},error_sync_setting:{zh:"\u60A8\u7684\u540C\u6B65\u7C7B\u578B\u5FC5\u987B\u4E3A\u201CKISS-Worker\u201D\uFF0C\u4E14\u9700\u586B\u5199\u5B8C\u6574",en:"Your sync type must be \"KISS-Worker\" and must be filled in completely",zh_TW:"\u60A8\u7684\u540C\u6B65\u578B\u614B\u5FC5\u9808\u70BA\u300CKISS-Worker\u300D\uFF0C\u4E14\u9700\u586B\u5BEB\u5B8C\u6574\u3002"},click_test:{zh:"\u70B9\u51FB\u6D4B\u8BD5",en:"Click Test",zh_TW:"\u9EDE\u64CA\u6E2C\u8A66"},test_success:{zh:"\u6D4B\u8BD5\u6210\u529F",en:"Test success",zh_TW:"\u6E2C\u8A66\u6210\u529F"},test_failed:{zh:"\u6D4B\u8BD5\u5931\u8D25",en:"Test failed",zh_TW:"\u6E2C\u8A66\u5931\u6557"},clear_all_cache_now:{zh:"\u7ACB\u5373\u6E05\u9664\u5168\u90E8\u7F13\u5B58",en:"Clear all cache now",zh_TW:"\u7ACB\u5373\u6E05\u9664\u5168\u90E8\u5FEB\u53D6"},clear_cache:{zh:"\u6E05\u9664\u7F13\u5B58",en:"Clear Cache",zh_TW:"\u6E05\u9664\u5FEB\u53D6"},clear_success:{zh:"\u6E05\u9664\u6210\u529F",en:"Clear success",zh_TW:"\u6E05\u9664\u6210\u529F"},clear_failed:{zh:"\u6E05\u9664\u5931\u8D25",en:"Clear failed",zh_TW:"\u6E05\u9664\u5931\u6557"},share:{zh:"\u5206\u4EAB",en:"Share",zh_TW:"\u5206\u4EAB"},clear_all:{zh:"\u6E05\u7A7A",en:"Clear All",zh_TW:"\u6E05\u7A7A"},help:{zh:"\u6C42\u52A9",en:"Help",zh_TW:"\u6C42\u52A9"},restore_default:{zh:"\u6062\u590D\u9ED8\u8BA4",en:"Restore Default",zh_TW:"\u6062\u5FA9\u9810\u8A2D"},shortcuts_setting:{zh:"\u5FEB\u6377\u952E\u8BBE\u7F6E",en:"Shortcuts Setting",zh_TW:"\u5FEB\u6377\u9375\u8A2D\u5B9A"},toggle_translate_shortcut:{zh:"\"\u5F00\u542F\u7FFB\u8BD1\"\u5FEB\u6377\u952E",en:"\"Toggle Translate\" Shortcut",zh_TW:"\u300C\u958B\u555F\u7FFB\u8B6F\u300D\u5FEB\u6377\u9375"},toggle_style_shortcut:{zh:"\"\u5207\u6362\u6837\u5F0F\"\u5FEB\u6377\u952E",en:"\"Toggle Style\" Shortcut",zh_TW:"\u300C\u5207\u63DB\u6A23\u5F0F\u300D\u5FEB\u6377\u9375"},toggle_popup_shortcut:{zh:"\"\u6253\u5F00\u5F39\u7A97\"\u5FEB\u6377\u952E",en:"\"Open Popup\" Shortcut",zh_TW:"\u300C\u958B\u555F\u5F48\u7A97\u300D\u5FEB\u6377\u9375"},open_setting_shortcut:{zh:"\"\u6253\u5F00\u8BBE\u7F6E\"\u5FEB\u6377\u952E",en:"\"Open Setting\" Shortcut",zh_TW:"\u300C\u958B\u555F\u8A2D\u5B9A\u300D\u5FEB\u6377\u9375"},hide_fab_button:{zh:"\u9690\u85CF\u60AC\u6D6E\u6309\u94AE",en:"Hide Fab Button",zh_TW:"\u96B1\u85CF\u61F8\u6D6E\u6309\u9215"},fab_click_action:{zh:"\u5355\u51FB\u60AC\u6D6E\u6309\u94AE\u52A8\u4F5C",en:"Single Click Fab Action",zh_TW:"\u55AE\u64CA\u61F8\u6D6E\u6309\u94AE\u52D5\u4F5C"},fab_click_menu:{zh:"\u5F39\u51FA\u83DC\u5355",en:"Popup Menu",zh_TW:"\u5F48\u51FA\u9078\u55AE"},fab_click_translate:{zh:"\u76F4\u63A5\u7FFB\u8BD1",en:"Translate",zh_TW:"\u76F4\u63A5\u7FFB\u8B6F"},hide_tran_button:{zh:"\u9690\u85CF\u7FFB\u8BD1\u6309\u94AE",en:"Hide Translate Button",zh_TW:"\u96B1\u85CF\u7FFB\u8B6F\u6309\u9215"},hide_click_away:{zh:"\u70B9\u51FB\u5916\u90E8\u5173\u95ED\u5F39\u7A97",en:"Click outside to close the pop-up window",zh_TW:"\u9EDE\u64CA\u5916\u90E8\u95DC\u9589\u5F48\u7A97"},use_simple_style:{zh:"\u4F7F\u7528\u7B80\u6D01\u754C\u9762",en:"Use a simple interface",zh_TW:"\u4F7F\u7528\u7C21\u6F54\u4ECB\u9762"},show:{zh:"\u663E\u793A",en:"Show",zh_TW:"\u986F\u793A"},hide:{zh:"\u9690\u85CF",en:"Hide",zh_TW:"\u96B1\u85CF"},save_rule:{zh:"\u4FDD\u5B58\u672C\u7AD9\u89C4\u5219",en:"Save this site rule",zh_TW:"\u4FDD\u5B58\u672C\u7AD9\u898F\u5247"},global_rule:{zh:"\u5168\u5C40\u89C4\u5219",en:"Global Rule",zh_TW:"\u5168\u57DF\u898F\u5247"},input_translate:{zh:"\u8F93\u5165\u6846\u7FFB\u8BD1",en:"Input Box Translation",zh_TW:"\u8F38\u5165\u6846\u7FFB\u8B6F"},use_input_box_translation:{zh:"\u542F\u7528\u8F93\u5165\u6846\u7FFB\u8BD1",en:"Input Box Translation",zh_TW:"\u555F\u7528\u8F38\u5165\u6846\u7FFB\u8B6F"},input_selector:{zh:"\u8F93\u5165\u6846\u9009\u62E9\u5668",en:"Input Selector",zh_TW:"\u8F38\u5165\u6846\u9078\u64C7\u5668"},input_selector_helper:{zh:"\u7528\u4E8E\u8F93\u5165\u6846\u7FFB\u8BD1\u3002",en:"Used for input box translation.",zh_TW:"\u7528\u65BC\u8F38\u5165\u6846\u7FFB\u8B6F\u3002"},trigger_trans_shortcut:{zh:"\u89E6\u53D1\u7FFB\u8BD1\u5FEB\u6377\u952E",en:"Trigger Translation Shortcut Keys",zh_TW:"\u89F8\u767C\u7FFB\u8B6F\u5FEB\u6377\u9375"},trigger_trans_shortcut_help:{zh:"\u9ED8\u8BA4\u4E3A\u5355\u51FB\u201CAltLeft+KeyI\u201D",en:"Default is \"AltLeft+KeyI\"",zh_TW:"\u9810\u8A2D\u70BA\u6309\u4E0B\u300CAltLeft+KeyI\u300D"},shortcut_press_count:{zh:"\u5FEB\u6377\u952E\u8FDE\u51FB\u6B21\u6570",en:"Shortcut Press Number",zh_TW:"\u5FEB\u6377\u9375\u9023\u64CA\u6B21\u6578"},combo_timeout:{zh:"\u8FDE\u51FB\u8D85\u65F6\u65F6\u95F4 (10-1000ms)",en:"Combo Timeout (10-1000ms)",zh_TW:"\u9023\u64CA\u903E\u6642 (10-1000ms)"},input_trans_start_sign:{zh:"\u7FFB\u8BD1\u8D77\u59CB\u6807\u8BC6",en:"Translation Start Sign",zh_TW:"\u7FFB\u8B6F\u8D77\u59CB\u6A19\u8A18"},input_trans_start_sign_help:{zh:"\u6807\u8BC6\u540E\u9762\u53EF\u4EE5\u52A0\u76EE\u6807\u8BED\u8A00\u4EE3\u7801\uFF0C\u5982\uFF1A \u201C/en \u4F60\u597D\u201D\u3001\u201C/zh hello\u201D",en:"The target language code can be added after the sign, such as: \"/en \u4F60\u597D\", \"/zh hello\"",zh_TW:"\u6A19\u8A18\u5F8C\u53EF\u52A0\u4E0A\u76EE\u6A19\u8A9E\u8A00\u4EE3\u78BC\uFF0C\u4F8B\u5982\uFF1A\u300C/en \u4F60\u597D\u300D\u3001\u300C/zh hello\u300D"},detect_lang_remote:{zh:"\u8FDC\u7A0B\u8BED\u8A00\u68C0\u6D4B",en:"Remote language detection",zh_TW:"\u9060\u7AEF\u8A9E\u8A00\u5075\u6E2C"},detect_lang_remote_help:{zh:"\u542F\u7528\u540E\u68C0\u6D4B\u51C6\u786E\u5EA6\u589E\u52A0\uFF0C\u4F46\u4F1A\u964D\u4F4E\u7FFB\u8BD1\u901F\u5EA6\uFF0C\u8BF7\u914C\u60C5\u5F00\u542F",en:"After enabling, the detection accuracy will increase, but it will reduce the translation speed. Please enable it as appropriate.",zh_TW:"\u555F\u7528\u5F8C\u53EF\u63D0\u5347\u5075\u6E2C\u6E96\u78BA\u5EA6\uFF0C\u4F46\u6703\u964D\u4F4E\u7FFB\u8B6F\u901F\u5EA6\uFF0C\u8ACB\u8996\u9700\u8981\u958B\u555F\u3002"},detect_lang_service:{zh:"\u8BED\u8A00\u68C0\u6D4B\u670D\u52A1",en:"Language detect service",zh_TW:"\u8A9E\u8A00\u6AA2\u6E2C\u670D\u52D9"},disable:{zh:"\u7981\u7528",en:"Disable",zh_TW:"\u505C\u7528"},enable:{zh:"\u542F\u7528",en:"Enable",zh_TW:"\u555F\u7528"},selection_translate:{zh:"\u5212\u8BCD\u7FFB\u8BD1",en:"Selection Translation",zh_TW:"\u5283\u8A5E\u7FFB\u8B6F"},toggle_selection_translate:{zh:"\u542F\u7528\u5212\u8BCD\u7FFB\u8BD1",en:"Use Selection Translate",zh_TW:"\u555F\u7528\u5283\u8A5E\u7FFB\u8B6F"},trigger_tranbox_shortcut:{zh:"\u663E\u793A\u7FFB\u8BD1\u6846/\u7FFB\u8BD1\u9009\u4E2D\u6587\u5B57\u5FEB\u6377\u952E",en:"Open Translate Popup/Translate Selected Shortcut",zh_TW:"\u986F\u793A\u7FFB\u8B6F\u6846\uFF0F\u7FFB\u8B6F\u9078\u4E2D\u6587\u5B57\u5FEB\u6377\u9375"},tranbtn_offset_x:{zh:"\u7FFB\u8BD1\u6309\u94AE\u504F\u79FBX\uFF08\xB1200\uFF09",en:"Translate Button Offset X (\xB1200)",zh_TW:"\u7FFB\u8B6F\u6309\u9215\u4F4D\u79FB X\uFF08\xB1200\uFF09"},tranbtn_offset_y:{zh:"\u7FFB\u8BD1\u6309\u94AE\u504F\u79FBY\uFF08\xB1200\uFF09",en:"Translate Button Offset Y (\xB1200)",zh_TW:"\u7FFB\u8B6F\u6309\u9215\u4F4D\u79FB Y\uFF08\xB1200\uFF09"},tranbox_offset_x:{zh:"\u7FFB\u8BD1\u6846\u504F\u79FBX\uFF08\xB1200\uFF09",en:"Translate Box Offset X (\xB1200)",zh_TW:"\u7FFB\u8B6F\u6846\u4F4D\u79FB X\uFF08\xB1200\uFF09"},tranbox_offset_y:{zh:"\u7FFB\u8BD1\u6846\u504F\u79FBY\uFF08\xB1200\uFF09",en:"Translate Box Offset Y (\xB1200)",zh_TW:"\u7FFB\u8B6F\u6846\u4F4D\u79FB Y\uFF08\xB1200\uFF09"},translated_text:{zh:"\u8BD1\u6587",en:"Translated Text",zh_TW:"\u8B6F\u6587"},original_text:{zh:"\u539F\u6587",en:"Original Text",zh_TW:"\u539F\u6587"},favorite_words:{zh:"\u6536\u85CF\u8BCD\u6C47",en:"Favorite Words",zh_TW:"\u6536\u85CF\u8A5E\u5F59"},touch_setting:{zh:"\u89E6\u5C4F\u8BBE\u7F6E",en:"Touch Setting",zh_TW:"\u89F8\u63A7\u8A2D\u5B9A"},touch_translate_shortcut:{zh:"\u89E6\u5C4F\u7FFB\u8BD1\u5FEB\u6377\u65B9\u5F0F (\u652F\u6301\u591A\u9009)",en:"Touch Translate Shortcut (multiple supported)",zh_TW:"\u89F8\u63A7\u7FFB\u8B6F\u6377\u5F91 (\u652F\u63F4\u591A\u9078)"},touch_tap_0:{zh:"\u7981\u7528",en:"Disable",zh_TW:"\u505C\u7528"},touch_tap_2:{zh:"\u53CC\u6307\u8F7B\u89E6",en:"Two finger tap",zh_TW:"\u96D9\u6307\u8F15\u89F8"},touch_tap_3:{zh:"\u4E09\u6307\u8F7B\u89E6",en:"Three finger tap",zh_TW:"\u4E09\u6307\u8F15\u89F8"},touch_tap_4:{zh:"\u56DB\u6307\u8F7B\u89E6",en:"Four finger tap",zh_TW:"\u56DB\u6307\u8F15\u89F8"},touch_tap_5:{zh:"\u5355\u6307\u53CC\u51FB",en:"Double-click",zh_TW:"\u55AE\u6307\u96D9\u64CA"},touch_tap_6:{zh:"\u5355\u6307\u4E09\u51FB",en:"Triple-click",zh_TW:"\u55AE\u6307\u4E09\u64CA"},touch_tap_7:{zh:"\u53CC\u6307\u53CC\u51FB",en:"Two-finger double-click",zh_TW:"\u96D9\u6307\u96D9\u64CA"},translate_blacklist:{zh:"\u7981\u7528\u7FFB\u8BD1\u540D\u5355",en:"Translate Blacklist",zh_TW:"\u505C\u7528\u7FFB\u8B6F\u540D\u55AE"},disabled_orilist:{zh:"\u7981\u7528Origin\u540D\u5355",en:"Disabled Origin List",zh_TW:"\u505C\u7528 Origin \u540D\u55AE"},disabled_csplist:{zh:"\u7981\u7528CSP\u540D\u5355",en:"Disabled CSP List",zh_TW:"\u505C\u7528 CSP \u540D\u55AE"},disabled_csplist_helper:{zh:"3\u3001\u901A\u8FC7\u8C03\u6574CSP\u7B56\u7565\uFF0C\u4F7F\u5F97\u67D0\u4E9B\u9875\u9762\u80FD\u591F\u6CE8\u5165JS/CSS/Media\uFF0C\u8BF7\u8C28\u614E\u4F7F\u7528\uFF0C\u9664\u975E\u60A8\u5DF2\u77E5\u6653\u76F8\u5173\u98CE\u9669\u3002",en:"3. By adjusting the CSP policy, some pages can inject JS/CSS/Media. Please use it with caution unless you are aware of the related risks.",zh_TW:"3. \u900F\u904E\u8ABF\u6574 CSP \u653F\u7B56\uFF0C\u4F7F\u90E8\u5206\u9801\u9762\u53EF\u6CE8\u5165 JS/CSS/Media\u3002\u8ACB\u8B39\u614E\u4F7F\u7528\uFF0C\u9664\u975E\u60A8\u5DF2\u77E5\u6089\u76F8\u95DC\u98A8\u96AA\u3002"},skip_langs:{zh:"\u4E0D\u7FFB\u8BD1\u7684\u8BED\u8A00",en:"Disable Languages",zh_TW:"\u4E0D\u7FFB\u8B6F\u7684\u8A9E\u8A00"},skip_langs_helper:{zh:"\u6B64\u529F\u80FD\u4F9D\u8D56\u51C6\u786E\u7684\u8BED\u8A00\u68C0\u6D4B\uFF0C\u5EFA\u8BAE\u542F\u7528\u8FDC\u7A0B\u8BED\u8A00\u68C0\u6D4B\u3002",en:"This feature relies on accurate language detection. It is recommended to enable remote language detection.",zh_TW:"\u6B64\u529F\u80FD\u4EF0\u8CF4\u6E96\u78BA\u7684\u8A9E\u8A00\u5075\u6E2C\uFF0C\u5EFA\u8B70\u555F\u7528\u9060\u7AEF\u8A9E\u8A00\u5075\u6E2C\u3002"},context_menus:{zh:"\u53F3\u952E\u83DC\u5355",en:"Context Menus",zh_TW:"\u53F3\u9375\u9078\u55AE"},hide_context_menus:{zh:"\u9690\u85CF\u53F3\u952E\u83DC\u5355",en:"Hide Context Menus",zh_TW:"\u96B1\u85CF\u53F3\u9375\u9078\u55AE"},simple_context_menus:{zh:"\u7B80\u5355\u53F3\u952E\u83DC\u5355",en:"Simple_context_menus Context Menus",zh_TW:"\u7C21\u6613\u53F3\u9375\u9078\u55AE"},secondary_context_menus:{zh:"\u4E8C\u7EA7\u53F3\u952E\u83DC\u5355",en:"Secondary Context Menus",zh_TW:"\u6B21\u7D1A\u53F3\u9375\u9078\u55AE"},mulkeys_help:{zh:"\u652F\u6301\u7528\u6362\u884C\u6216\u82F1\u6587\u9017\u53F7\u201C,\u201D\u5206\u9694\uFF0C\u8F6E\u8BE2\u8C03\u7528\u3002",en:"Supports polling calls separated by newlines or English commas \",\".",zh_TW:"\u652F\u63F4\u4EE5\u63DB\u884C\u6216\u82F1\u6587\u9017\u865F\u300C,\u300D\u5206\u9694\uFF0C\u8F2A\u8A62\u547C\u53EB\u3002"},translation_element_tag:{zh:"\u8BD1\u6587\u5143\u7D20\u6807\u7B7E",en:"Translation Element Tag",zh_TW:"\u8B6F\u6587\u5143\u7D20\u6A19\u7C64"},show_only_translations:{zh:"\u4EC5\u663E\u793A\u8BD1\u6587",en:"Show Only Translations",zh_TW:"\u50C5\u986F\u793A\u8B6F\u6587"},show_only_translations_help:{zh:"\u975E\u5B8C\u7F8E\u5B9E\u73B0\uFF0C\u67D0\u4E9B\u9875\u9762\u53EF\u80FD\u6709\u6837\u5F0F\u7B49\u95EE\u9898\u3002",en:"It is not a perfect implementation and some pages may have style issues.",zh_TW:"\u6B64\u70BA\u975E\u5B8C\u7F8E\u5BE6\u4F5C\uFF0C\u90E8\u5206\u9801\u9762\u53EF\u80FD\u51FA\u73FE\u6A23\u5F0F\u7B49\u554F\u984C\u3002"},translate_page_title:{zh:"\u662F\u5426\u7FFB\u8BD1\u9875\u9762\u6807\u9898",en:"Translate Page Title",zh_TW:"\u662F\u5426\u7FFB\u8B6F\u9801\u9762\u6A19\u984C"},more:{zh:"\u66F4\u591A",en:"More",zh_TW:"\u66F4\u591A"},less:{zh:"\u66F4\u5C11",en:"Less",zh_TW:"\u66F4\u5C11"},fixer_selector:{zh:"\u7F51\u9875\u4FEE\u590D\u9009\u62E9\u5668",en:"Fixer Selector",zh_TW:"\u7DB2\u9801\u4FEE\u5FA9\u9078\u64C7\u5668"},reg_niutrans:{zh:"\u83B7\u53D6\u5C0F\u725B\u7FFB\u8BD1\u5BC6\u94A5\u3010\u7B80\u7EA6\u7FFB\u8BD1\u4E13\u5C5E\u65B0\u7528\u6237\u6CE8\u518C\u8D60\u9001300\u4E07\u5B57\u7B26\u3011",en:"Get NiuTrans APIKey [KISS Translator Exclusive New User Registration Free 3 Million Characters]",zh_TW:"\u53D6\u5F97\u5C0F\u725B\u7FFB\u8B6F\u91D1\u9470\u3010\u7C21\u7D04\u7FFB\u8B6F\u5C08\u5C6C\u65B0\u7528\u6236\u8A3B\u518A\u8D08\u9001 300 \u842C\u5B57\u5143\u3011"},trigger_mode:{zh:"\u89E6\u53D1\u65B9\u5F0F",en:"Trigger Mode",zh_TW:"\u89F8\u767C\u65B9\u5F0F"},trigger_click:{zh:"\u70B9\u51FB\u89E6\u53D1",en:"Click Trigger",zh_TW:"\u9EDE\u64CA\u89F8\u767C"},trigger_hover:{zh:"\u9F20\u6807\u60AC\u505C\u89E6\u53D1",en:"Hover Trigger",zh_TW:"\u6ED1\u9F20\u61F8\u505C\u89F8\u767C"},trigger_select:{zh:"\u9009\u4E2D\u89E6\u53D1",en:"Select Trigger",zh_TW:"\u9078\u53D6\u89F8\u767C"},extend_styles:{zh:"\u9644\u52A0\u6837\u5F0F",en:"Extend Styles",zh_TW:"\u9644\u52A0\u6A23\u5F0F"},custom_option:{zh:"\u81EA\u5B9A\u4E49\u9009\u9879",en:"Custom Option",zh_TW:"\u81EA\u8A02\u9078\u9805"},translate_selected_text:{zh:"\u7FFB\u8BD1\u9009\u4E2D\u6587\u5B57",en:"Translate Selected Text",zh_TW:"\u7FFB\u8B6F\u9078\u53D6\u6587\u5B57"},toggle_style:{zh:"\u5207\u6362\u6837\u5F0F",en:"Toggle Style",zh_TW:"\u5207\u63DB\u6A23\u5F0F"},open_menu:{zh:"\u6253\u5F00\u5F39\u7A97\u83DC\u5355",en:"Open Popup Menu",zh_TW:"\u958B\u555F\u5F48\u7A97\u9078\u55AE"},open_setting:{zh:"\u6253\u5F00\u8BBE\u7F6E",en:"Open Setting",zh_TW:"\u958B\u555F\u8A2D\u5B9A"},follow_selection:{zh:"\u7FFB\u8BD1\u6846\u8DDF\u968F\u9009\u4E2D\u6587\u672C",en:"Transbox Follow Selection",zh_TW:"\u7FFB\u8B6F\u6846\u8DDF\u96A8\u9078\u53D6\u6587\u5B57"},tranbox_auto_height:{zh:"\u7FFB\u8BD1\u6846\u81EA\u9002\u5E94\u9AD8\u5EA6",en:"Translation box adaptive height",zh_TW:"\u7FFB\u8B6F\u6846\u81EA\u9069\u61C9\u9AD8\u5EA6"},translate_start_hook:{zh:"\u7FFB\u8BD1\u5F00\u59CB\u94A9\u5B50\u51FD\u6570",en:"Translate Start Hook",zh_TW:"\u7FFB\u8B6F\u958B\u59CB Hook"},translate_start_hook_helper:{zh:"\u7FFB\u8BD1\u524D\u65F6\u8FD0\u884C\uFF0C\u5165\u53C2\u4E3A\uFF1A {text,\n fromLang,\n toLang,\n apiSetting,\n docInfo,\n glossary,}",en:"Run before translation, input parameters are: {text,\n fromLang,\n toLang,\n apiSetting,\n docInfo,\n glossary,}",zh_TW:"\u7FFB\u8B6F\u524D\u6642\u904B\u884C\uFF0C\u5165\u53C3\u70BA\uFF1A {text,\n fromLang,\n toLang,\n apiSetting,\n docInfo,\n glossary,}"},translate_end_hook:{zh:"\u7FFB\u8BD1\u5B8C\u6210\u94A9\u5B50\u51FD\u6570",en:"Translate End Hook",zh_TW:"\u7FFB\u8B6F\u5B8C\u6210 Hook"},translate_end_hook_helper:{zh:"\u7FFB\u8BD1\u5B8C\u6210\u65F6\u8FD0\u884C\uFF0C\u5165\u53C2\u4E3A\uFF1A ({hostNode, parentNode, nodes, wrapperNode, innerNode})",en:"Run when translation is complete, input parameters are: ({hostNode, parentNode, nodes, wrapperNode, innerNode})",zh_TW:"\u7FFB\u8B6F\u5B8C\u6210\u6642\u904B\u884C\uFF0C\u5165\u53C3\u70BA\uFF1A ({hostNode, parentNode, nodes, wrapperNode, innerNode})"},translate_remove_hook:{zh:"\u7FFB\u8BD1\u79FB\u9664\u94A9\u5B50\u51FD\u6570",en:"Translate Removed Hook",zh_TW:"\u7FFB\u8B6F\u79FB\u9664 Hook"},translate_remove_hook_helper:{zh:"\u7FFB\u8BD1\u79FB\u9664\u65F6\u8FD0\u884C\uFF0C\u5165\u53C2\u4E3A\uFF1A \u7FFB\u8BD1\u8282\u70B9\u3002",en:"Run when translation is removed, the input parameters are: translation node.",zh_TW:"\u79FB\u9664\u7FFB\u8B6F\u6642\u57F7\u884C\uFF0C\u5165\u53C3\u70BA\uFF1A\u7FFB\u8B6F\u7BC0\u9EDE\u3002"},english_dict:{zh:"\u82F1\u6587\u8BCD\u5178",en:"English Dictionary",zh_TW:"\u82F1\u6587\u5B57\u5178"},english_suggest:{zh:"\u82F1\u6587\u5EFA\u8BAE",en:"English Suggest",zh_TW:"\u82F1\u6587\u5EFA\u8B70"},api_name:{zh:"\u63A5\u53E3\u540D\u79F0",en:"API Name",zh_TW:"\u4ECB\u9762\u540D\u7A31"},is_disabled:{zh:"\u662F\u5426\u7981\u7528",en:"Is Disabled",zh_TW:"\u662F\u5426\u505C\u7528"},translate_selected:{zh:"\u662F\u5426\u542F\u7528\u5212\u8BCD\u7FFB\u8BD1",en:"If translate selected",zh_TW:"\u662F\u5426\u555F\u7528\u5283\u8A5E\u7FFB\u8B6F"},use_batch_fetch:{zh:"\u662F\u5426\u805A\u5408\u53D1\u9001\u7FFB\u8BD1\u8BF7\u6C42",en:"Whether to aggregate and send translation requests",zh_TW:"\u662F\u5426\u805A\u5408\u767C\u9001\u7FFB\u8B6F\u8ACB\u6C42"},batch_interval:{zh:"\u805A\u5408\u8BF7\u6C42\u7B49\u5F85\u65F6\u95F4(100-10000)",en:"Aggregation request waiting time (100-10000)",zh_TW:"\u805A\u5408\u8ACB\u6C42\u7B49\u5F85\u6642\u9593(100-10000)"},batch_size:{zh:"\u805A\u5408\u8BF7\u6C42\u6700\u5927\u6BB5\u843D\u6570(1-100)",en:"Maximum number of paragraphs in an aggregation request (1-100)",zh_TW:"\u805A\u5408\u8ACB\u6C42\u6700\u5927\u6BB5\u843D\u6578(1-100)"},batch_length:{zh:"\u805A\u5408\u8BF7\u6C42\u6700\u5927\u6587\u672C\u957F\u5EA6(1000-100000)",en:"Maximum text length for aggregation requests (1000-100000)",zh_TW:"\u805A\u5408\u8ACB\u6C42\u6700\u5927\u6587\u5B57\u9577\u5EA6(1000-100000)"},use_context:{zh:"\u662F\u5426\u542F\u7528\u667A\u80FD\u4E0A\u4E0B\u6587",en:"Whether to enable AI context",zh_TW:"\u662F\u5426\u555F\u7528\u667A\u6167\u4E0A\u4E0B\u6587"},context_size:{zh:"\u4E0A\u4E0B\u6587\u4F1A\u8BDD\u6570\u91CF(1-20)",en:"Number of context sessions(1-20)",zh_TW:"\u4E0A\u4E0B\u6587\u6703\u8A71\u6578\u91CF(1-20)"},auto_scan_page:{zh:"\u81EA\u52A8\u626B\u63CF\u9875\u9762",en:"Auto scan page",zh_TW:"\u81EA\u52D5\u6383\u63CF\u9801\u9762"},has_rich_text:{zh:"\u542F\u7528\u5BCC\u6587\u672C\u7FFB\u8BD1",en:"Enable rich text translation",zh_TW:"\u555F\u7528\u5BCC\u6587\u672C\u7FFB\u8B6F"},has_shadowroot:{zh:"\u626B\u63CFShadowroot",en:"Scan Shadowroot",zh_TW:"\u6383\u63CFShadowroot"},mousehover_translate:{zh:"\u9F20\u6807\u60AC\u505C\u7FFB\u8BD1",en:"Mouseover Translation",zh_TW:"\u6ED1\u9F20\u61F8\u505C\u7FFB\u8B6F"},use_mousehover_translation:{zh:"\u542F\u7528\u9F20\u6807\u60AC\u505C\u7FFB\u8BD1",en:"Enable mouseover translation",zh_TW:"\u555F\u7528\u6ED1\u9F20\u61F8\u505C\u7FFB\u8B6F"},selected_translation_alert:{zh:"\u5212\u8BCD\u7FFB\u8BD1\u7684\u5F00\u542F\u548C\u5173\u95ED\u8BF7\u5230\u201C\u89C4\u5219\u8BBE\u7F6E\u201D\u91CC\u9762\u8BBE\u7F6E\u3002",en:"To turn selected translation on or off, please go to \"Rule Settings\".",zh_TW:"\u5283\u8A5E\u7FFB\u8B6F\u7684\u958B\u555F\u548C\u95DC\u9589\u8ACB\u5230\u300C\u898F\u5247\u8A2D\u5B9A\u300D\u88E1\u9762\u8A2D\u5B9A\u3002"},mousehover_key_help:{zh:"\u5F53\u5FEB\u6377\u952E\u7F6E\u7A7A\u65F6\u8868\u793A\u9F20\u6807\u60AC\u505C\u76F4\u63A5\u7FFB\u8BD1",en:"When the shortcut key is empty, it means that the mouse hovers to translate directly",zh_TW:"\u7576\u5FEB\u6377\u9375\u7F6E\u7A7A\u6642\u8868\u793A\u6ED1\u9F20\u61F8\u505C\u76F4\u63A5\u7FFB\u8B6F"},autoscan_alt:{zh:"\u81EA\u52A8\u626B\u63CF",en:"Auto Scan",zh_TW:"\u81EA\u52D5\u6383\u63CF"},shadowroot_alt:{zh:"ShadowRoot",en:"ShadowRoot",zh_TW:"ShadowRoot"},richtext_alt:{zh:"\u4FDD\u7559\u5BCC\u6587\u672C",en:"Rich Text",zh_TW:"\u4FDD\u7559\u5BCC\u6587\u672C"},transonly_alt:{zh:"\u9690\u85CF\u539F\u6587",en:"Hide Original",zh_TW:"\u96B1\u85CF\u539F\u6587"},confirm_title:{zh:"\u786E\u8BA4",en:"Confirm",zh_TW:"\u78BA\u8A8D"},confirm_message:{zh:"\u786E\u5B9A\u64CD\u4F5C\u5417\uFF1F",en:"Are you sure you want to proceed?",zh_TW:"\u78BA\u5B9A\u64CD\u4F5C\u55CE\uFF1F"},confirm_action:{zh:"\u786E\u5B9A",en:"Confirm",zh_TW:"\u78BA\u5B9A"},cancel_action:{zh:"\u53D6\u6D88",en:"Cancel",zh_TW:"\u53D6\u6D88"},pls_press_shortcut:{zh:"\u8BF7\u6309\u4E0B\u5FEB\u6377\u952E\u7EC4\u5408",en:"Please press the shortcut key combination",zh_TW:"\u8ACB\u6309\u4E0B\u5FEB\u901F\u9375\u7D44\u5408"},load_setting_err:{zh:"\u6570\u636E\u52A0\u8F7D\u51FA\u9519\uFF0C\u8BF7\u5237\u65B0\u9875\u9762\u6216\u5378\u8F7D\u540E\u91CD\u65B0\u5B89\u88C5\u3002",en:"Please press the shortcut key combination",zh_TW:"\u8ACB\u6309\u4E0B\u5FEB\u901F\u9375\u7D44\u5408"},translation_style:{zh:"\u7FFB\u8BD1\u98CE\u683C",en:"Translation style",zh_TW:"\u7FFB\u8B6F\u98A8\u683C"},placeholder:{zh:"\u5360\u4F4D\u7B26",en:"Placeholder",zh_TW:"\u4F54\u4F4D\u7B26"},tag_name:{zh:"\u5360\u4F4D\u6807\u7B7E\u540D",en:"Placeholder tag name",zh_TW:"\u4F54\u4F4D\u6A19\u540D"},system_prompt_helper:{zh:"\u5728\u672A\u5B8C\u5168\u7406\u89E3\u9ED8\u8BA4Prompt\u7684\u60C5\u51B5\u4E0B\uFF0C\u8BF7\u52FF\u968F\u610F\u4FEE\u6539\uFF0C\u5426\u5219\u53EF\u80FD\u65E0\u6CD5\u5DE5\u4F5C\u3002",en:"Do not modify the default prompt without fully understanding it, otherwise it may not work.",zh_TW:"\u5728\u672A\u5B8C\u5168\u7406\u89E3\u9810\u8A2DPrompt\u7684\u60C5\u6CC1\u4E0B\uFF0C\u8ACB\u52FF\u96A8\u610F\u4FEE\u6539\uFF0C\u5426\u5247\u53EF\u80FD\u7121\u6CD5\u904B\u4F5C\u3002"},if_pre_init:{zh:"\u662F\u5426\u9884\u521D\u59CB\u5316",en:"Whether to pre-initialize",zh_TW:"\u662F\u5426\u9810\u521D\u59CB\u5316"},export_old:{zh:"\u5BFC\u51FA\u65E7\u7248",en:"Export old version",zh_TW:"\u532F\u51FA\u820A\u7248"},favorite_words_helper:{zh:"\u5BFC\u5165\u8BCD\u6C47\u8BF7\u4F7F\u7528txt\u6587\u4EF6\uFF0C\u6BCF\u4E00\u884C\u4E00\u4E2A\u5355\u8BCD\u3002",en:"To import vocabulary, please use a txt file with one word per line.",zh_TW:"\u532F\u5165\u8A5E\u5F59\u8ACB\u4F7F\u7528txt\u6587\u4EF6\uFF0C\u6BCF\u4E00\u884C\u4E00\u500B\u55AE\u5B57\u3002"},btn_tip_click_away:{zh:"\u5931\u7126\u9690\u85CF/\u663E\u793A",en:"Loss of focus hide/show",zh_TW:"\u5931\u7126\u96B1\u85CF/\u986F\u793A"},btn_tip_follow_selection:{zh:"\u8DDF\u968F/\u56FA\u5B9A\u6A21\u5F0F",en:"Follow/Fixed Mode",zh_TW:"\u8DDF\u96A8/\u56FA\u5B9A\u6A21\u5F0F"},btn_tip_simple_style:{zh:"\u8FF7\u4F60/\u5E38\u89C4\u6A21\u5F0F",en:"Mini/Regular Mode",zh_TW:"\u8FF7\u4F60/\u5E38\u898F\u6A21\u5F0F"},api_placeholder:{zh:"\u5360\u4F4D\u7B26",en:"Placeholder",zh_TW:"\u4F54\u4F4D\u7B26"},api_placetag:{zh:"\u5360\u4F4D\u6807\u7B7E",en:"Placeholder tags",zh_TW:"\u4F54\u4F4D\u6A19"},detected_lang:{zh:"\u8BED\u8A00\u68C0\u6D4B",en:"Language detection",zh_TW:"\u8A9E\u8A00\u5075\u6E2C"},detected_result:{zh:"\u68C0\u6D4B\u7ED3\u679C",en:"Detect result",zh_TW:"\u6AA2\u6E2C\u7D50\u679C"},subtitle_translate:{zh:"\u5B57\u5E55\u7FFB\u8BD1",en:"Subtitle Translation",zh_TW:"\u5B57\u5E55\u7FFB\u8B6F"},toggle_subtitle_translate:{zh:"\u542F\u7528\u5B57\u5E55\u7FFB\u8BD1",en:"Enable subtitle translation",zh_TW:"\u555F\u7528\u5B57\u5E55\u7FFB\u8B6F"},is_bilingual_view:{zh:"\u53CC\u8BED\u663E\u793A",en:"Enable bilingual display",zh_TW:"\u96D9\u8A9E\u986F\u793A"},is_skip_ad:{zh:"\u5FEB\u8FDB\u5E7F\u544A",en:"Skip AD",zh_TW:"\u5FEB\u8F49\u5EE3\u544A"},download_subtitles:{zh:"\u4E0B\u8F7D\u5B57\u5E55",en:"Download subtitles",zh_TW:"\u4E0B\u8F7D\u5B57\u5E55"},background_styles:{zh:"\u80CC\u666F\u6837\u5F0F",en:"DBackground Style",zh_TW:"\u80CC\u666F\u6A23\u5F0F"},origin_styles:{zh:"\u539F\u6587\u6837\u5F0F",en:"Original style",zh_TW:"\u539F\u6587\u6A23\u5F0F"},translation_styles:{zh:"\u8BD1\u6587\u6837\u5F0F",en:"Translation style",zh_TW:"\u8B6F\u6587\u6A23\u5F0F"},ai_segmentation:{zh:"AI\u667A\u80FD\u65AD\u53E5",en:"AI intelligent punctuation",zh_TW:"AI\u667A\u6167\u65B7\u53E5"},ai_chunk_length:{zh:"AI\u5904\u7406\u5207\u5272\u957F\u5EA6(200-20000)",en:"AI processing chunk length(200-20000)",zh_TW:"AI\u5904\u7406\u5207\u5272\u957F\u5EA6(200-20000)"},subtitle_helper_1:{zh:"1\u3001\u76EE\u524D\u4EC5\u652F\u6301Youtube\u684C\u9762\u7F51\u7AD9\u3002",en:"1. Currently only supports Youtube desktop website.",zh_TW:"1.\u76EE\u524D\u50C5\u652F\u63F4Youtube\u684C\u9762\u7DB2\u7AD9\uFF0C\u4E14\u50C5\u652F\u63F4\u700F\u89BD\u5668\u64F4\u5145\u529F\u80FD\u3002"},subtitle_helper_2:{zh:"2\u3001\u63D2\u4EF6\u5185\u7F6E\u57FA\u7840\u7684\u5B57\u5E55\u5408\u5E76\u3001\u65AD\u53E5\u7B97\u6CD5\uFF0C\u53EF\u6EE1\u8DB3\u5927\u90E8\u5206\u60C5\u51B5\u3002",en:"2. The plug-in has built-in basic subtitle merging and sentence segmentation algorithms, which can meet most situations.",zh_TW:"2.\u63D2\u4EF6\u5167\u5EFA\u57FA\u790E\u7684\u5B57\u5E55\u5408\u4F75\u3001\u65B7\u53E5\u6F14\u7B97\u6CD5\uFF0C\u53EF\u6EFF\u8DB3\u5927\u90E8\u5206\u60C5\u6CC1\u3002"},subtitle_helper_3:{zh:"3\u3001\u4EA6\u53EF\u4EE5\u542F\u7528AI\u667A\u80FD\u65AD\u53E5\uFF0C\u4F46\u9700\u8003\u8651\u5207\u5272\u957F\u5EA6\u53CAAI\u63A5\u53E3\u80FD\u529B\uFF0C\u53EF\u80FD\u5904\u7406\u65F6\u95F4\u4F1A\u5F88\u957F\uFF0C\u751A\u81F3\u5904\u7406\u5931\u8D25\uFF0C\u5BFC\u81F4\u65E0\u6CD5\u770B\u5230\u5B57\u5E55\u3002",en:"3. You can also enable AI intelligent segmentation, but you need to consider the segmentation length and AI interface capabilities. The processing time may be very long or even fail, resulting in the inability to see subtitles.",zh_TW:"3.\u4EA6\u53EF\u555F\u7528AI\u667A\u80FD\u65B7\u53E5\uFF0C\u4F46\u9700\u8003\u616E\u5207\u5272\u9577\u5EA6\u53CAAI\u4ECB\u9762\u80FD\u529B\uFF0C\u53EF\u80FD\u8655\u7406\u6642\u9593\u6703\u5F88\u9577\uFF0C\u751A\u81F3\u8655\u7406\u5931\u6557\uFF0C\u5C0E\u81F4\u7121\u6CD5\u770B\u5230\u5B57\u5E55\u3002"},default_styles_example:{zh:"\u9ED8\u8BA4\u6837\u5F0F\u53C2\u8003\uFF1A",en:"Default styles reference:",zh_TW:"\u8A8D\u6A23\u5F0F\u53C3\u8003\uFF1A"},subtitle_load_succeed:{zh:"\u53CC\u8BED\u5B57\u5E55\u52A0\u8F7D\u6210\u529F\uFF01",en:"Bilingual subtitles loaded successfully!",zh_TW:"\u53CC\u8BED\u5B57\u5E55\u52A0\u8F7D\u6210\u529F\uFF01"},subtitle_load_failed:{zh:"\u53CC\u8BED\u5B57\u5E55\u52A0\u8F7D\u5931\u8D25\uFF01",en:"Failed to load bilingual subtitles!",zh_TW:"\u53CC\u8BED\u5B57\u5E55\u52A0\u8F7D\u5931\u8D25\uFF01"},try_get_subtitle_data:{zh:"\u5C1D\u8BD5\u83B7\u53D6\u5B57\u5E55\u6570\u636E\uFF0C\u8BF7\u7A0D\u5019...",en:"Trying to get subtitle data, please wait...",zh_TW:"\u5C1D\u8BD5\u83B7\u53D6\u5B57\u5E55\u6570\u636E\uFF0C\u8BF7\u7A0D\u5019..."},subtitle_data_processing:{zh:"\u5B57\u5E55\u6570\u636E\u5904\u7406\u4E2D...",en:"Subtitle data processing...",zh_TW:"\u5B57\u5E55\u6570\u636E\u5904\u7406\u4E2D..."},starting_to_process_subtitle:{zh:"\u5F00\u59CB\u5904\u7406\u5B57\u5E55\u6570\u636E...",en:"Starting to process subtitle data...",zh_TW:"\u5F00\u59CB\u5904\u7406\u5B57\u5E55\u6570\u636E..."},subtitle_data_is_ready:{zh:"\u5B57\u5E55\u6570\u636E\u5DF2\u51C6\u5907\u5C31\u7EEA\uFF0C\u8BF7\u70B9\u51FBKT\u6309\u94AE\u52A0\u8F7D",en:"The subtitle data is ready, please click the KT button to load it",zh_TW:"\u5B57\u5E55\u8CC7\u6599\u5DF2\u6E96\u5099\u5C31\u7DD2\uFF0C\u8ACB\u9EDE\u64CAKT\u6309\u9215\u52A0\u8F09"},starting_reprocess_events:{zh:"\u91CD\u65B0\u5904\u7406\u5B57\u5E55\u6570\u636E...",en:"Reprocess the subtitle data...",zh_TW:"\u91CD\u65B0\u5904\u7406\u5B57\u5E55\u6570\u636E..."},waitting_for_subtitle:{zh:"\u8BF7\u7B49\u5F85\u5B57\u5E55\u6570\u636E",en:"Please wait for the subtitle data.",zh_TW:"\u8BF7\u7B49\u5F85\u5B57\u5E55\u6570\u636E"},ai_processing_pls_wait:{zh:"AI\u5904\u7406\u4E2D\uFF0C\u8BF7\u7A0D\u7B49...",en:"AI processing in progress, please wait...",zh_TW:"AI\u5904\u7406\u4E2D\uFF0C\u8BF7\u7A0D\u7B49..."},processing_subtitles:{zh:"\u5B57\u5E55\u5904\u7406\u4E2D...",en:"Subtitle processing...",zh_TW:"\u5B57\u5E55\u5904\u7406\u4E2D..."},waiting_subtitles:{zh:"\u7B49\u5F85\u5B57\u5E55\u4E2D",en:"Waiting for subtitles",zh_TW:"\u7B49\u5F85\u5B57\u5E55\u4E2D"},subtitle_is_not_yet_ready:{zh:"\u5B57\u5E55\u6570\u636E\u5C1A\u672A\u51C6\u5907\u597D",en:"Subtitle is not yet ready.",zh_TW:"\u5B57\u5E55\u6570\u636E\u5C1A\u672A\u51C6\u5907\u597D"},log_level:{zh:"\u65E5\u5FD7\u7EA7\u522B",en:"Log Level",zh_TW:"\u65E5\u8A8C\u7B49\u7D1A"},goto_custom_api_example:{zh:"\u70B9\u51FB\u67E5\u770B\u3010\u81EA\u5B9A\u4E49\u63A5\u53E3\u793A\u4F8B\u3011",en:"Click to view [Custom Interface Example]",zh_TW:"\u9EDE\u9078\u67E5\u770B\u3010\u81EA\u8A02\u4ECB\u9762\u7BC4\u4F8B\u3011"},split_paragraph:{zh:"\u5207\u5206\u957F\u6BB5\u843D",en:"Split long paragraph",zh_TW:"\u5207\u5206\u9577\u6BB5\u843D"},split_length:{zh:"\u5207\u5206\u957F\u5EA6 (0-10000)",en:"Segmentation length(0-10000)",zh_TW:"\u5207\u5206\u9577\u5EA6(0-10000)"},highlight_words:{zh:"\u9AD8\u4EAE\u6536\u85CF\u8BCD\u6C47",en:"Highlight favorite words",zh_TW:"\u9AD8\u4EAE\u6536\u85CF\u8A5E\u5F59"},split_disable:{zh:"\u7981\u7528",en:"Disable",zh_TW:"\u505C\u7528"},split_textlength:{zh:"\u6309\u7167\u957F\u5EA6\u5207\u5206",en:"Split by length",zh_TW:"\u4F9D\u9577\u5EA6\u5207\u5206"},split_punctuation:{zh:"\u6309\u7167\u53E5\u5B50\u5207\u5206",en:"Split by sentence",zh_TW:"\u6309\u7167\u53E5\u5B50\u5207\u5206"},highlight_disable:{zh:"\u7981\u7528",en:"Disable",zh_TW:"\u505C\u7528"},highlight_beforetrans:{zh:"\u7FFB\u8BD1\u524D\u9AD8\u4EAE",en:"Highlight before translation",zh_TW:"\u7FFB\u8B6F\u524D\u9AD8\u4EAE"},highlight_aftertrans:{zh:"\u7FFB\u8BD1\u540E\u9AD8\u4EAE",en:"Highlight after translation",zh_TW:"\u7FFB\u8B6F\u5F8C\u9AD8\u4EAE"},pagescroll_root_margin:{zh:"\u6EDA\u52A8\u52A0\u8F7D\u63D0\u524D\u89E6\u53D1 (0-10000px)",en:"Early triggering of scroll loading (0-10000px)",zh_TW:"\u6EFE\u52D5\u8F09\u5165\u63D0\u524D\u89F8\u767C (0-10000px)"},styles_setting:{zh:"\u6837\u5F0F\u8BBE\u7F6E",en:"Style Setting",zh_TW:"\u6A23\u5F0F\u8A2D\u5B9A"},style_name:{zh:"\u6837\u5F0F\u540D\u79F0",en:"Style Name",zh_TW:"\u6A23\u5F0F\u540D\u7A31"},style_code:{zh:"\u6837\u5F0F\u4EE3\u7801",en:"Style Code",zh_TW:"\u6A23\u5F0F\u7A0B\u5F0F\u78BC"},pre_trans_seconds:{zh:"\u63D0\u524D\u7FFB\u8BD1\u65F6\u957F (10-36000s)",en:"Pre translation seconds (10-36000s)",zh_TW:"\u63D0\u524D\u7FFB\u8BD1\u65F6\u957F (10-36000s)"},throttle_trans_interval:{zh:"\u8282\u6D41\u7FFB\u8BD1\u95F4\u9694 (1-3600s)",en:"Throttling translation interval (1-3600s)",zh_TW:"\u8282\u6D41\u7FFB\u8BD1\u95F4\u9694 (1-3600s)"}};const newI18n=lang=>key=>{var _I18N$key;return((_I18N$key=I18N[key])===null||_I18N$key===void 0?void 0:_I18N$key[lang])||"";}; +const UI_LANGS=(/* unused pure expression or super */ null && ([["en","English"],["zh","简体中文"],["zh_TW","繁體中文"],["ja","日本語"],["ko","한국어"]]));const customApiLangs="[\"en\", \"English - English\"],\n[\"zh-CN\", \"Simplified Chinese - \u7B80\u4F53\u4E2D\u6587\"],\n[\"zh-TW\", \"Traditional Chinese - \u7E41\u9AD4\u4E2D\u6587\"],\n[\"ar\", \"Arabic - \u0627\u0644\u0639\u0631\u0628\u064A\u0629\"],\n[\"bg\", \"Bulgarian - \u0411\u044A\u043B\u0433\u0430\u0440\u0441\u043A\u0438\"],\n[\"ca\", \"Catalan - Catal\xE0\"],\n[\"hr\", \"Croatian - Hrvatski\"],\n[\"cs\", \"Czech - \u010Ce\u0161tina\"],\n[\"da\", \"Danish - Dansk\"],\n[\"nl\", \"Dutch - Nederlands\"],\n[\"fi\", \"Finnish - Suomi\"],\n[\"fr\", \"French - Fran\xE7ais\"],\n[\"de\", \"German - Deutsch\"],\n[\"el\", \"Greek - \u0395\u03BB\u03BB\u03B7\u03BD\u03B9\u03BA\u03AC\"],\n[\"hi\", \"Hindi - \u0939\u093F\u0928\u094D\u0926\u0940\"],\n[\"hu\", \"Hungarian - Magyar\"],\n[\"id\", \"Indonesian - Indonesia\"],\n[\"it\", \"Italian - Italiano\"],\n[\"ja\", \"Japanese - \u65E5\u672C\u8A9E\"],\n[\"ko\", \"Korean - \uD55C\uAD6D\uC5B4\"],\n[\"ms\", \"Malay - Melayu\"],\n[\"mt\", \"Maltese - Malti\"],\n[\"nb\", \"Norwegian - Norsk Bokm\xE5l\"],\n[\"pl\", \"Polish - Polski\"],\n[\"pt\", \"Portuguese - Portugu\xEAs\"],\n[\"ro\", \"Romanian - Rom\xE2n\u0103\"],\n[\"ru\", \"Russian - \u0420\u0443\u0441\u0441\u043A\u0438\u0439\"],\n[\"sk\", \"Slovak - Sloven\u010Dina\"],\n[\"sl\", \"Slovenian - Sloven\u0161\u010Dina\"],\n[\"es\", \"Spanish - Espa\xF1ol\"],\n[\"sv\", \"Swedish - Svenska\"],\n[\"ta\", \"Tamil - \u0BA4\u0BAE\u0BBF\u0BB4\u0BCD\"],\n[\"te\", \"Telugu - \u0C24\u0C46\u0C32\u0C41\u0C17\u0C41\"],\n[\"th\", \"Thai - \u0E44\u0E17\u0E22\"],\n[\"tr\", \"Turkish - T\xFCrk\xE7e\"],\n[\"uk\", \"Ukrainian - \u0423\u043A\u0440\u0430\u0457\u043D\u0441\u044C\u043A\u0430\"],\n[\"vi\", \"Vietnamese - Ti\u1EBFng Vi\u1EC7t\"],\n";const customApiHelpZH="// \u8BF7\u6C42\u6570\u636E\u9ED8\u8BA4\u683C\u5F0F\n{\n \"url\": \"{{url}}\",\n \"method\": \"POST\",\n \"headers\": {\n \"Content-type\": \"application/json\",\n \"Authorization\": \"Bearer {{key}}\"\n },\n \"body\": {\n \"text\": \"{{text}}\", // \u5F85\u7FFB\u8BD1\u6587\u5B57\n \"from\": \"{{from}}\", // \u6587\u5B57\u7684\u8BED\u8A00\uFF08\u53EF\u80FD\u4E3A\u7A7A\uFF09\n \"to\": \"{{to}}\", // \u76EE\u6807\u8BED\u8A00\n },\n}\n\n\n// \u8FD4\u56DE\u6570\u636E\u9ED8\u8BA4\u683C\u5F0F\n{\n text: \"\", // \u7FFB\u8BD1\u540E\u7684\u6587\u5B57\n from: \"\", // \u8BC6\u522B\u7684\u6E90\u8BED\u8A00\n to: \"\", // \u76EE\u6807\u8BED\u8A00\uFF08\u53EF\u9009\uFF09\n}\n\n\n// Hook \u8303\u4F8B\n// URL\nhttps://translate.googleapis.com/translate_a/single?client=gtx&dj=1&dt=t&ie=UTF-8&q={{text}}&sl=en&tl=zh-CN\n\n// Request Hook\n(text, from, to, url, key) => [url, {\n headers: {\n \"Content-type\": \"application/json\",\n },\n method: \"GET\",\n body: null,\n}]\n\n// Response Hook\n// \u5176\u4E2D\u8FD4\u56DE\u6570\u7EC4\u7B2C\u4E00\u4E2A\u503C\u8868\u793A\u8BD1\u6587\u5B57\u7B26\u4E32\uFF0C\u7B2C\u4E8C\u4E2A\u503C\u4E3A\u5E03\u5C14\u503C\uFF0C\u8868\u793A\u539F\u6587\u8BED\u8A00\u4E0E\u76EE\u6807\u8BED\u8A00\u662F\u5426\u76F8\u540C\n(res, text, from, to) => [res.sentences.map((item) => item.trans).join(\" \"), to === res.src]\n\n\n// \u652F\u6301\u7684\u8BED\u8A00\u4EE3\u7801\u5982\u4E0B\n".concat(customApiLangs,"\n");const customApiHelpEN="// Default request\n{\n \"url\": \"{{url}}\",\n \"method\": \"POST\",\n \"headers\": {\n \"Content-type\": \"application/json\",\n \"Authorization\": \"Bearer {{key}}\"\n },\n \"body\": {\n \"text\": \"{{text}}\", // Text to be translated\n \"from\": \"{{from}}\", // The language of the text (may be empty)\n \"to\": \"{{to}}\", // Target language\n },\n}\n\n\n// Default response\n{\n text: \"\", // translated text\n from: \"\", // Recognized source language\n to: \"\", // Target language (optional)\n}\n\n\n/// Hook Example\n// URL\nhttps://translate.googleapis.com/translate_a/single?client=gtx&dj=1&dt=t&ie=UTF-8&q={{text}}&sl=en&tl=zh-CN\n\n// Request Hook\n(text, from, to, url, key) => [url, {\n headers: {\n \"Content-type\": \"application/json\",\n },\n method: \"GET\",\n body: null,\n}]\n\n// Response Hook\n// In the returned array, the first value is the translated string, while the second value is a boolean\n// that indicates whether the source language is the same as the target language.\n(res, text, from, to) => [res.sentences.map((item) => item.trans).join(\" \"), to === res.src]\n\n\n// The supported language codes are as follows\n".concat(customApiLangs,"\n");const requestHookHelperZH="1\u3001\u7B2C\u4E00\u4E2A\u53C2\u6570\u5305\u542B\u5982\u4E0B\u5B57\u6BB5\uFF1A'texts', 'from', 'to', 'url', 'key', 'model', 'systemPrompt', ...\n2\u3001\u8FD4\u56DE\u503C\u5FC5\u987B\u662F\u5305\u542B\u4EE5\u4E0B\u5B57\u6BB5\u7684\u5BF9\u8C61\uFF1A 'url', 'body', 'headers', 'method'\n3\u3001\u5982\u8FD4\u56DE\u7A7A\u503C\uFF0C\u5219hook\u51FD\u6570\u4E0D\u4F1A\u4EA7\u751F\u4EFB\u4F55\u6548\u679C\u3002\n\n// \u793A\u4F8B\nasync (args, { url, body, headers, userMsg, method } = {}) => {\n return { url, body, headers, userMsg, method };\n}";const requestHookHelperEN="1. The first parameter contains the following fields: 'texts', 'from', 'to', 'url', 'key', 'model', 'systemPrompt', ...\n2. The return value must be an object containing the following fields: 'url', 'body', 'headers', 'method'\n3. If a null value is returned, the hook function will have no effect.\n\n// Example\nasync (args, { url, body, headers, userMsg, method } = {}) => {\n return { url, body, headers, userMsg, method };\n}";const responsetHookHelperZH="1\u3001\u7B2C\u4E00\u4E2A\u53C2\u6570\u5305\u542B\u5982\u4E0B\u5B57\u6BB5\uFF1A'res', ...\n2\u3001\u8FD4\u56DE\u503C\u5FC5\u987B\u662F\u5305\u542B\u4EE5\u4E0B\u5B57\u6BB5\u7684\u5BF9\u8C61\uFF1A 'translations'\n \uFF08'translations' \u5E94\u4E3A\u4E00\u4E2A\u4E8C\u7EF4\u6570\u7EC4\uFF1A[[\u8BD1\u6587, \u539F\u6587\u8BED\u8A00]]\uFF09\n3\u3001\u5982\u8FD4\u56DE\u7A7A\u503C\uFF0C\u5219hook\u51FD\u6570\u4E0D\u4F1A\u4EA7\u751F\u4EFB\u4F55\u6548\u679C\u3002\n\n// \u793A\u4F8B\nasync ({ res, ...args }) => {\n const translations = [[\"\u4F60\u597D\", \"en\"]];\n const modelMsg = {}; // \u7528\u4E8EAI\u4E0A\u4E0B\u6587\n return { translations, modelMsg };\n}";const responsetHookHelperEN="1. The first parameter contains the following fields: 'res', ...\n2. The return value must be an object containing the following fields: 'translations'\n ('translations' should be a two-dimensional array: [[translation, source language]]).\n3. If a null value is returned, the hook function will have no effect.\n\n// Example\nasync ({ res, ...args }) => {\n const translations = [[\"\u4F60\u597D\", \"en\"]];\n const modelMsg = {}; // For AI context\n return { translations, modelMsg };\n}";const I18N={app_name:{zh:"\u7B80\u7EA6\u7FFB\u8BD1",en:"KISS Translator",zh_TW:"\u7C21\u7D04\u7FFB\u8B6F",ja:"KISS Translator",ko:"KISS Translator"},translate:{zh:"\u7FFB\u8BD1",en:"Translate",zh_TW:"\u7FFB\u8B6F",ja:"\u7FFB\u8A33",ko:"\uBC88\uC5ED"},custom_api_help:{zh:customApiHelpZH,en:customApiHelpEN,zh_TW:customApiHelpZH,ja:customApiHelpEN,ko:customApiHelpEN},request_hook_helper:{zh:requestHookHelperZH,en:requestHookHelperEN,zh_TW:requestHookHelperZH,ja:requestHookHelperEN,ko:requestHookHelperEN},response_hook_helper:{zh:responsetHookHelperZH,en:responsetHookHelperEN,zh_TW:responsetHookHelperZH,ja:responsetHookHelperEN,ko:responsetHookHelperEN},translate_alt:{zh:"\u7FFB\u8BD1",en:"Translate",zh_TW:"\u7FFB\u8B6F",ja:"\u7FFB\u8A33",ko:"\uBC88\uC5ED"},basic_setting:{zh:"\u57FA\u672C\u8BBE\u7F6E",en:"Basic Setting",zh_TW:"\u57FA\u672C\u8A2D\u5B9A",ja:"\u57FA\u672C\u8A2D\u5B9A",ko:"\uAE30\uBCF8 \uC124\uC815"},rules_setting:{zh:"\u89C4\u5219\u8BBE\u7F6E",en:"Rules Setting",zh_TW:"\u898F\u5247\u8A2D\u5B9A",ja:"\u30EB\u30FC\u30EB\u8A2D\u5B9A",ko:"\uADDC\uCE59 \uC124\uC815"},apis_setting:{zh:"\u63A5\u53E3\u8BBE\u7F6E",en:"Apis Setting",zh_TW:"API\u8A2D\u5B9A",ja:"API\u8A2D\u5B9A",ko:"API \uC124\uC815"},sync_setting:{zh:"\u540C\u6B65\u8BBE\u7F6E",en:"Sync Setting",zh_TW:"\u540C\u6B65\u8A2D\u5B9A",ja:"\u540C\u671F\u8A2D\u5B9A",ko:"\uB3D9\uAE30\uD654 \uC124\uC815"},patch_setting:{zh:"\u8865\u4E01\u8BBE\u7F6E",en:"Patch Setting",zh_TW:"\u4FEE\u88DC\u8A2D\u5B9A",ja:"\u30D1\u30C3\u30C1\u8A2D\u5B9A",ko:"\uD328\uCE58 \uC124\uC815"},patch_setting_help:{zh:"\u9488\u5BF9\u4E00\u4E9B\u7279\u6B8A\u7F51\u7AD9\u7684\u4FEE\u6B63\u811A\u672C\uFF0C\u4EE5\u4FBF\u7FFB\u8BD1\u8F6F\u4EF6\u5F97\u5230\u66F4\u597D\u7684\u5C55\u793A\u6548\u679C\u3002",en:"Corrected scripts for some special websites so that the translation software can get better display results.",zh_TW:"\u91DD\u5C0D\u67D0\u4E9B\u7279\u6B8A\u7DB2\u7AD9\u7684\u4FEE\u6B63\u8173\u672C\uFF0C\u8B93\u7FFB\u8B6F\u8EDF\u9AD4\u6709\u66F4\u597D\u7684\u986F\u793A\u6548\u679C\u3002",ja:"\u4E00\u90E8\u306E\u7279\u6B8A\u306A\u30A6\u30A7\u30D6\u30B5\u30A4\u30C8\u7528\u306E\u4FEE\u6B63\u30B9\u30AF\u30EA\u30D7\u30C8\u3067\u3001\u7FFB\u8A33\u30BD\u30D5\u30C8\u30A6\u30A7\u30A2\u306E\u8868\u793A\u52B9\u679C\u3092\u5411\u4E0A\u3055\u305B\u307E\u3059\u3002",ko:"\uC77C\uBD80 \uD2B9\uC218 \uC6F9\uC0AC\uC774\uD2B8\uB97C \uC704\uD55C \uC218\uC815 \uC2A4\uD06C\uB9BD\uD2B8\uB85C, \uBC88\uC5ED \uC18C\uD504\uD2B8\uC6E8\uC5B4\uC758 \uD45C\uC2DC \uD6A8\uACFC\uB97C \uAC1C\uC120\uD569\uB2C8\uB2E4."},inject_webfix:{zh:"\u6CE8\u5165\u4FEE\u590D\u8865\u4E01",en:"Inject Webfix",zh_TW:"\u6CE8\u5165\u4FEE\u6B63\u88DC\u4E01",ja:"Webfix\u3092\u6CE8\u5165",ko:"\uC6F9 \uC218\uC815 \uD328\uCE58 \uC8FC\uC785"},about:{zh:"\u5173\u4E8E",en:"About",zh_TW:"\u95DC\u65BC",ja:"\u6982\u8981",ko:"\uC815\uBCF4"},about_md:{zh:"README.md",en:"README.en.md",zh_TW:"README.md",ja:"README.ja.md",// 假设的文件名 +ko:"README.ko.md"// 假设的文件名 +},about_md_local:{zh:"\u8BF7 [\u70B9\u51FB\u8FD9\u91CC](".concat("https://github.com/fishjar/kiss-translator",") \u67E5\u770B\u8BE6\u60C5\u3002"),en:"Please [click here](".concat("https://github.com/fishjar/kiss-translator",") for details."),zh_TW:"\u8ACB [\u9EDE\u9019\u88E1](".concat("https://github.com/fishjar/kiss-translator",") \u67E5\u770B\u8A73\u7D30\u5167\u5BB9\u3002"),ja:"\u8A73\u7D30\u306F [\u3053\u3061\u3089](".concat("https://github.com/fishjar/kiss-translator",") \u3092\u30AF\u30EA\u30C3\u30AF\u3057\u3066\u304F\u3060\u3055\u3044\u3002"),ko:"\uC790\uC138\uD55C \uB0B4\uC6A9\uC740 [\uC5EC\uAE30](".concat("https://github.com/fishjar/kiss-translator",")\uB97C \uD074\uB9AD\uD558\uC138\uC694.")},ui_lang:{zh:"\u754C\u9762\u8BED\u8A00",en:"Interface Language",zh_TW:"\u4ECB\u9762\u8A9E\u8A00",ja:"\u30A4\u30F3\u30BF\u30FC\u30D5\u30A7\u30FC\u30B9\u8A00\u8A9E",ko:"\uC778\uD130\uD398\uC774\uC2A4 \uC5B8\uC5B4"},fetch_limit:{zh:"\u6700\u5927\u5E76\u53D1\u8BF7\u6C42\u6570\u91CF (1-100)",en:"Maximum Number Of Concurrent Requests (1-100)",zh_TW:"\u6700\u5927\u540C\u6642\u8ACB\u6C42\u6578\u91CF (1-100)",ja:"\u6700\u5927\u540C\u6642\u30EA\u30AF\u30A8\u30B9\u30C8\u6570 (1-100)",ko:"\uCD5C\uB300 \uB3D9\uC2DC \uC694\uCCAD \uC218 (1-100)"},if_think:{zh:"\u542F\u7528\u6216\u7981\u7528\u6A21\u578B\u7684\u6DF1\u5EA6\u601D\u8003\u80FD\u529B",en:"Enable or disable the model\u2019s thinking behavior ",zh_TW:"\u555F\u7528\u6216\u505C\u7528\u6A21\u578B\u7684\u6DF1\u5EA6\u601D\u8003\u80FD\u529B",ja:"\u30E2\u30C7\u30EB\u306E\u601D\u8003\u884C\u52D5\u3092\u6709\u52B9\u307E\u305F\u306F\u7121\u52B9\u306B\u3059\u308B",ko:"\uBAA8\uB378\uC758 \uC0AC\uACE0 \uD589\uB3D9 \uD65C\uC131\uD654 \uB610\uB294 \uBE44\uD65C\uC131\uD654"},think:{zh:"\u542F\u7528\u6DF1\u5EA6\u601D\u8003",en:"enable thinking",zh_TW:"\u555F\u7528\u6DF1\u5EA6\u601D\u8003",ja:"\u601D\u8003\u3092\u6709\u52B9\u306B\u3059\u308B",ko:"\uC0AC\uACE0 \uD65C\uC131\uD654"},nothink:{zh:"\u7981\u7528\u6DF1\u5EA6\u601D\u8003",en:"disable thinking",zh_TW:"\u505C\u7528\u6DF1\u5EA6\u601D\u8003",ja:"\u601D\u8003\u3092\u7121\u52B9\u306B\u3059\u308B",ko:"\uC0AC\uACE0 \uBE44\uD65C\uC131\uD654"},think_ignore:{zh:"\u5FFD\u7565\u4EE5\u4E0B\u6A21\u578B\u7684\u8F93\u51FA,\u9017\u53F7(,)\u5206\u5272,\u5F53\u6A21\u578B\u652F\u6301\u601D\u8003\u4F46ollama\u4E0D\u652F\u6301\u65F6\u9700\u8981\u586B\u5199\u672C\u53C2\u6570",en:"Ignore the block for the following models, comma (,) separated",zh_TW:"\u5FFD\u7565\u4EE5\u4E0B\u6A21\u578B\u7684 \u8F38\u51FA\uFF0C\u4EE5\u9017\u865F (,) \u5206\u9694\uFF1B\u7576\u6A21\u578B\u652F\u63F4\u601D\u8003\u4F46 ollama \u4E0D\u652F\u63F4\u6642\u9700\u8981\u586B\u5BEB\u6B64\u53C3\u6578",ja:"\u4EE5\u4E0B\u306E\u30E2\u30C7\u30EB\u306E\u51FA\u529B\u3092\u7121\u8996\u3059\u308B (\u30B3\u30F3\u30DE(,)\u533A\u5207\u308A)\u3002\u30E2\u30C7\u30EB\u304C\u601D\u8003\u3092\u30B5\u30DD\u30FC\u30C8\u3057\u3066\u3044\u308B\u304C\u3001ollama\u304C\u30B5\u30DD\u30FC\u30C8\u3057\u3066\u3044\u306A\u3044\u5834\u5408\u306B\u8A18\u5165\u304C\u5FC5\u8981\u3067\u3059",ko:"\uB2E4\uC74C \uBAA8\uB378\uC758 \uBE14\uB85D \uBB34\uC2DC (\uC27C\uD45C(,)\uB85C \uAD6C\uBD84), \uBAA8\uB378\uC774 \uC0AC\uACE0\uB97C \uC9C0\uC6D0\uD558\uC9C0\uB9CC ollama\uAC00 \uC9C0\uC6D0\uD558\uC9C0 \uC54A\uB294 \uACBD\uC6B0 \uC774 \uB9E4\uAC1C\uBCC0\uC218\uB97C \uC785\uB825\uD574\uC57C \uD569\uB2C8\uB2E4"},fetch_interval:{zh:"\u6BCF\u6B21\u8BF7\u6C42\u95F4\u9694\u65F6\u95F4 (0-5000ms)",en:"Time Between Requests (0-5000ms)",zh_TW:"\u6BCF\u6B21\u8ACB\u6C42\u9593\u9694\u6642\u9593 (0-5000ms)",ja:"\u30EA\u30AF\u30A8\u30B9\u30C8\u9593\u9694 (0-5000ms)",ko:"\uC694\uCCAD \uAC04 \uC2DC\uAC04 (0-5000ms)"},translate_interval:{zh:"\u7FFB\u8BD1\u95F4\u9694\u65F6\u95F4 (10-2000ms)",en:"Translation Interval (10-2000ms)",zh_TW:"\u7FFB\u8B6F\u9593\u9694\u6642\u9593 (10-2000ms)",ja:"\u7FFB\u8A33\u9593\u9694 (10-2000ms)",ko:"\uBC88\uC5ED \uAC04\uACA9 (10-2000ms)"},http_timeout:{zh:"\u8BF7\u6C42\u8D85\u65F6\u65F6\u95F4 (5000-60000ms)",en:"Request Timeout Time (5000-60000ms)",zh_TW:"\u8ACB\u6C42\u903E\u6642\u6642\u9593 (5000-60000ms)",ja:"\u30EA\u30AF\u30A8\u30B9\u30C8\u30BF\u30A4\u30E0\u30A2\u30A6\u30C8 (5000-60000ms)",ko:"\uC694\uCCAD \uC2DC\uAC04 \uCD08\uACFC (5000-60000ms)"},custom_header:{zh:"\u81EA\u5B9A\u4E49Header\u53C2\u6570",en:"Custom Header Params",zh_TW:"\u81EA\u8A02 Header \u53C3\u6578",ja:"\u30AB\u30B9\u30BF\u30E0\u30D8\u30C3\u30C0\u30FC",ko:"\uC0AC\uC6A9\uC790 \uC9C0\uC815 \uD5E4\uB354"},custom_header_help:{zh:"\u4F7F\u7528JSON\u683C\u5F0F\uFF0C\u4F8B\u5982 \"User-Agent\": \"Mozilla/5.0 (X11; Linux x86_64; rv:141.0) Gecko/20100101 Firefox/141.0\"",en:"Use JSON format, for example \"User-Agent\": \"Mozilla/5.0 (X11; Linux x86_64; rv:141.0) Gecko/20100101 Firefox/141.0\"",zh_TW:"\u4F7F\u7528JSON\u683C\u5F0F\uFF0C\u4F8B\u5982 \"User-Agent\": \"Mozilla/5.0 (X11; Linux x86_64; rv:141.0) Gecko/20100101 Firefox/141.0\"",ja:"JSON\u5F62\u5F0F\u3092\u4F7F\u7528\u3057\u3066\u304F\u3060\u3055\u3044\u3002\u4F8B: \"User-Agent\": \"Mozilla/5.0 (X11; Linux x86_64; rv:141.0) Gecko/20100101 Firefox/141.0\"",ko:"JSON \uD615\uC2DD\uC744 \uC0AC\uC6A9\uD558\uC138\uC694. \uC608: \"User-Agent\": \"Mozilla/5.0 (X11; Linux x86_64; rv:141.0) Gecko/20100101 Firefox/141.0\""},custom_body:{zh:"\u81EA\u5B9A\u4E49Body\u53C2\u6570",en:"Custom Body Params",zh_TW:"\u81EA\u8A02 Body \u53C3\u6578",ja:"\u30AB\u30B9\u30BF\u30E0\u30DC\u30C7\u30A3",ko:"\uC0AC\uC6A9\uC790 \uC9C0\uC815 \uBC14\uB514"},custom_body_help:{zh:"\u4F7F\u7528JSON\u683C\u5F0F\uFF0C\u4F8B\u5982 \"top_p\": 0.7",en:"Use JSON format, for example \"top_p\": 0.7",zh_TW:"\u4F7F\u7528JSON\u683C\u5F0F\uFF0C\u4F8B\u5982 \"top_p\": 0.7",ja:"JSON\u5F62\u5F0F\u3092\u4F7F\u7528\u3057\u3066\u304F\u3060\u3055\u3044\u3002\u4F8B: \"top_p\": 0.7",ko:"JSON \uD615\uC2DD\uC744 \uC0AC\uC6A9\uD558\uC138\uC694. \uC608: \"top_p\": 0.7"},min_translate_length:{zh:"\u6700\u5C0F\u7FFB\u8BD1\u5B57\u7B26\u6570 (1-100)",en:"Minimum number Of Translated Characters (1-100)",zh_TW:"\u6700\u5C0F\u7FFB\u8B6F\u5B57\u5143\u6578 (1-100)",ja:"\u6700\u5C0F\u7FFB\u8A33\u6587\u5B57\u6570 (1-100)",ko:"\uCD5C\uC18C \uBC88\uC5ED \uBB38\uC790 \uC218 (1-100)"},max_translate_length:{zh:"\u6700\u5927\u7FFB\u8BD1\u5B57\u7B26\u6570 (100-100000)",en:"Maximum number Of Translated Characters (100-100000)",zh_TW:"\u6700\u5927\u7FFB\u8B6F\u5B57\u5143\u6578 (100-100000)",ja:"\u6700\u5927\u7FFB\u8A33\u6587\u5B57\u6570 (100-100000)",ko:"\uCD5C\uB300 \uBC88\uC5ED \uBB38\uC790 \uC218 (100-100000)"},num_of_newline_characters:{zh:"\u6362\u884C\u5B57\u7B26\u6570 (1-1000)",en:"Number of Newline Characters (1-1000)",zh_TW:"\u63DB\u884C\u5B57\u5143\u6578 (1-1000)",ja:"\u6539\u884C\u6587\u5B57\u6570 (1-1000)",ko:"\uC904\uBC14\uAFC8 \uBB38\uC790 \uC218 (1-1000)"},translate_service:{zh:"\u7FFB\u8BD1\u670D\u52A1",en:"Translate Service",zh_TW:"\u7FFB\u8B6F\u670D\u52D9",ja:"\u7FFB\u8A33\u30B5\u30FC\u30D3\u30B9",ko:"\uBC88\uC5ED \uC11C\uBE44\uC2A4"},translate_service_multiple:{zh:"\u7FFB\u8BD1\u670D\u52A1 (\u652F\u6301\u591A\u9009)",en:"Translation service (multiple supported)",zh_TW:"\u7FFB\u8B6F\u670D\u52D9 (\u652F\u63F4\u591A\u9078)",ja:"\u7FFB\u8A33\u30B5\u30FC\u30D3\u30B9 (\u8907\u6570\u9078\u629E\u53EF)",ko:"\uBC88\uC5ED \uC11C\uBE44\uC2A4 (\uB2E4\uC911 \uC120\uD0DD \uC9C0\uC6D0)"},translate_timing:{zh:"\u7FFB\u8BD1\u65F6\u673A",en:"Translate Timing",zh_TW:"\u7FFB\u8B6F\u6642\u6A5F",ja:"\u7FFB\u8A33\u30BF\u30A4\u30DF\u30F3\u30B0",ko:"\uBC88\uC5ED \uC2DC\uC810"},mk_pagescroll:{zh:"\u6EDA\u52A8\u52A0\u8F7D\u7FFB\u8BD1\uFF08\u63A8\u8350\uFF09",en:"Rolling Loading (Suggested)",zh_TW:"\u6EFE\u52D5\u8F09\u5165\u7FFB\u8B6F\uFF08\u5EFA\u8B70\uFF09",ja:"\u30B9\u30AF\u30ED\u30FC\u30EB\u7FFB\u8A33 (\u63A8\u5968)",ko:"\uC2A4\uD06C\uB864 \uBC88\uC5ED (\uAD8C\uC7A5)"},mk_pageopen:{zh:"\u7ACB\u5373\u5168\u90E8\u7FFB\u8BD1",en:"Translate all now",zh_TW:"\u7ACB\u5373\u5168\u90E8\u7FFB\u8B6F",ja:"\u3059\u3050\u306B\u3059\u3079\u3066\u7FFB\u8A33",ko:"\uC989\uC2DC \uBAA8\uB450 \uBC88\uC5ED"},mk_mouseover:{zh:"\u9F20\u6807\u60AC\u505C\u7FFB\u8BD1",en:"Mouseover",zh_TW:"\u6ED1\u9F20\u61F8\u505C\u7FFB\u8B6F",ja:"\u30DE\u30A6\u30B9\u30AA\u30FC\u30D0\u30FC\u7FFB\u8A33",ko:"\uB9C8\uC6B0\uC2A4\uC624\uBC84 \uBC88\uC5ED"},mk_ctrlKey:{zh:"Control + \u9F20\u6807\u60AC\u505C",en:"Control + Mouseover",zh_TW:"Control + \u6ED1\u9F20\u61F8\u505C",ja:"Control + \u30DE\u30A6\u30B9\u30AA\u30FC\u30D0\u30FC",ko:"Control + \uB9C8\uC6B0\uC2A4\uC624\uBC84"},mk_shiftKey:{zh:"Shift + \u9F20\u6807\u60AC\u505C",en:"Shift + Mouseover",zh_TW:"Shift + \u6ED1\u9F20\u61F8\u505C",ja:"Shift + \u30DE\u30A6\u30B9\u30AA\u30FC\u30D0\u30FC",ko:"Shift + \uB9C8\uC6B0\uC2A4\uC624\uBC84"},mk_altKey:{zh:"Alt + \u9F20\u6807\u60AC\u505C",en:"Alt + Mouseover",zh_TW:"Alt + \u6ED1\u9F20\u61F8\u505C",ja:"Alt + \u30DE\u30A6\u30B9\u30AA\u30FC\u30D0\u30FC",ko:"Alt + \uB9C8\uC6B0\uC2A4\uC624\uBC84"},from_lang:{zh:"\u539F\u6587\u8BED\u8A00",en:"Source Language",zh_TW:"\u539F\u6587\u8A9E\u8A00",ja:"\u539F\u6587\u306E\u8A00\u8A9E",ko:"\uC6D0\uBCF8 \uC5B8\uC5B4"},to_lang:{zh:"\u76EE\u6807\u8BED\u8A00",en:"Target Language",zh_TW:"\u76EE\u6A19\u8A9E\u8A00",ja:"\u7FFB\u8A33\u5148\u306E\u8A00\u8A9E",ko:"\uB300\uC0C1 \uC5B8\uC5B4"},to_lang2:{zh:"\u7B2C\u4E8C\u76EE\u6807\u8BED\u8A00",en:"Target Language 2",zh_TW:"\u7B2C\u4E8C\u76EE\u6A19\u8A9E\u8A00",ja:"\u7B2C\u4E8C\u7FFB\u8A33\u5148\u306E\u8A00\u8A9E",ko:"\uB450 \uBC88\uC9F8 \uB300\uC0C1 \uC5B8\uC5B4"},to_lang2_helper:{zh:"\u8BBE\u5B9A\u540E\uFF0C\u4E0E\u76EE\u6807\u8BED\u8A00\u4EA7\u751F\u4E92\u8BD1\u6548\u679C\uFF0C\u4F46\u4F9D\u8D56\u8FDC\u7A0B\u8BED\u8A00\u8BC6\u522B\u3002",en:"After setting, it will produce mutual translation effect with the target language, but it relies on remote language recognition.",zh_TW:"\u8A2D\u5B9A\u5F8C\u6703\u8207\u76EE\u6A19\u8A9E\u8A00\u4E92\u8B6F\uFF0C\u4F46\u4F9D\u8CF4\u9060\u7AEF\u8A9E\u8A00\u8B58\u5225\u3002",ja:"\u8A2D\u5B9A\u5F8C\u3001\u30BF\u30FC\u30B2\u30C3\u30C8\u8A00\u8A9E\u3068\u306E\u76F8\u4E92\u7FFB\u8A33\u304C\u53EF\u80FD\u306B\u306A\u308A\u307E\u3059\u304C\u3001\u30EA\u30E2\u30FC\u30C8\u8A00\u8A9E\u8A8D\u8B58\u306B\u4F9D\u5B58\u3057\u307E\u3059\u3002",ko:"\uC124\uC815 \uD6C4, \uB300\uC0C1 \uC5B8\uC5B4\uC640 \uC0C1\uD638 \uBC88\uC5ED \uD6A8\uACFC\uAC00 \uBC1C\uC0DD\uD558\uC9C0\uB9CC, \uC6D0\uACA9 \uC5B8\uC5B4 \uC778\uC2DD\uC5D0 \uC758\uC874\uD569\uB2C8\uB2E4."},text_style:{zh:"\u8BD1\u6587\u6837\u5F0F",en:"Text Style",zh_TW:"\u8B6F\u6587\u6A23\u5F0F",ja:"\u7FFB\u8A33\u30C6\u30AD\u30B9\u30C8\u30B9\u30BF\u30A4\u30EB",ko:"\uBC88\uC5ED \uD14D\uC2A4\uD2B8 \uC2A4\uD0C0\uC77C"},text_style_alt:{zh:"\u8BD1\u6587\u6837\u5F0F",en:"Text Style",zh_TW:"\u8B6F\u6587\u6A23\u5F0F",ja:"\u7FFB\u8A33\u30C6\u30AD\u30B9\u30C8\u30B9\u30BF\u30A4\u30EB",ko:"\uBC88\uC5ED \uD14D\uC2A4\uD2B8 \uC2A4\uD0C0\uC77C"},bg_color:{zh:"\u6837\u5F0F\u989C\u8272",en:"Style Color",zh_TW:"\u6A23\u5F0F\u984F\u8272",ja:"\u30B9\u30BF\u30A4\u30EB\u30AB\u30E9\u30FC",ko:"\uC2A4\uD0C0\uC77C \uC0C9\uC0C1"},remain_unchanged:{zh:"\u4FDD\u7559\u4E0D\u53D8",en:"Remain Unchanged",zh_TW:"\u4FDD\u7559\u4E0D\u8B8A",ja:"\u5909\u66F4\u3057\u306A\u3044",ko:"\uBCC0\uACBD\uD558\uC9C0 \uC54A\uC74C"},google_api:{zh:"\u8C37\u6B4C\u7FFB\u8BD1\u63A5\u53E3",en:"Google Translate API",zh_TW:"Google \u7FFB\u8B6F\u4ECB\u9762",ja:"Google \u7FFB\u8A33 API",ko:"Google \uBC88\uC5ED API"},default_selector:{zh:"\u9ED8\u8BA4\u9009\u62E9\u5668",en:"Default selector",zh_TW:"\u9810\u8A2D\u9078\u64C7\u5668",ja:"\u30C7\u30D5\u30A9\u30EB\u30C8\u30BB\u30EC\u30AF\u30BF",ko:"\uAE30\uBCF8 \uC120\uD0DD\uC790"},selector_rules:{zh:"\u9009\u62E9\u5668\u89C4\u5219",en:"Selector Rules",zh_TW:"\u9078\u64C7\u5668\u898F\u5247",ja:"\u30BB\u30EC\u30AF\u30BF\u30FC\u30EB\u30FC\u30EB",ko:"\uC120\uD0DD\uC790 \uADDC\uCE59"},save:{zh:"\u4FDD\u5B58",en:"Save",zh_TW:"\u5132\u5B58",ja:"\u4FDD\u5B58",ko:"\uC800\uC7A5"},edit:{zh:"\u7F16\u8F91",en:"Edit",zh_TW:"\u7DE8\u8F2F",ja:"\u7DE8\u96C6",ko:"\uC218\uC815"},cancel:{zh:"\u53D6\u6D88",en:"Cancel",zh_TW:"\u53D6\u6D88",ja:"\u30AD\u30E3\u30F3\u30BB\u30EB",ko:"\uCDE8\uC18C"},delete:{zh:"\u5220\u9664",en:"Delete",zh_TW:"\u522A\u9664",ja:"\u524A\u9664",ko:"\uC0AD\uC81C"},reset:{zh:"\u91CD\u7F6E",en:"Reset",zh_TW:"\u91CD\u8A2D",ja:"\u30EA\u30BB\u30C3\u30C8",ko:"\uCD08\uAE30\uD654"},add:{zh:"\u6DFB\u52A0",en:"Add",zh_TW:"\u65B0\u589E",ja:"\u8FFD\u52A0",ko:"\uCD94\uAC00"},inject_rules:{zh:"\u6CE8\u5165\u8BA2\u9605\u89C4\u5219",en:"Inject Subscribe Rules",zh_TW:"\u6CE8\u5165\u8A02\u95B1\u898F\u5247",ja:"\u8CFC\u8AAD\u30EB\u30FC\u30EB\u3092\u6CE8\u5165",ko:"\uAD6C\uB3C5 \uADDC\uCE59 \uC8FC\uC785"},personal_rules:{zh:"\u4E2A\u4EBA\u89C4\u5219",en:"Rules",zh_TW:"\u500B\u4EBA\u898F\u5247",ja:"\u500B\u4EBA\u30EB\u30FC\u30EB",ko:"\uAC1C\uC778 \uADDC\uCE59"},subscribe_rules:{zh:"\u8BA2\u9605\u89C4\u5219",en:"Subscribe",zh_TW:"\u8A02\u95B1\u898F\u5247",ja:"\u8CFC\u8AAD\u30EB\u30FC\u30EB",ko:"\uAD6C\uB3C5 \uADDC\uCE59"},overwrite_subscribe_rules:{zh:"\u8986\u5199\u8BA2\u9605\u89C4\u5219",en:"Overwrite",zh_TW:"\u8986\u5BEB\u8A02\u95B1\u898F\u5247",ja:"\u8CFC\u8AAD\u30EB\u30FC\u30EB\u3092\u4E0A\u66F8\u304D",ko:"\uAD6C\uB3C5 \uADDC\uCE59 \uB36E\uC5B4\uC4F0\uAE30"},subscribe_url:{zh:"\u8BA2\u9605\u5730\u5740",en:"Subscribe URL",zh_TW:"\u8A02\u95B1\u7DB2\u5740",ja:"\u8CFC\u8AADURL",ko:"\uAD6C\uB3C5 URL"},rules_warn_1:{zh:"1\u3001\u89C4\u5219\u751F\u6548\u7684\u4F18\u5148\u7EA7\u4F9D\u6B21\u4E3A\uFF1A\u4E2A\u4EBA\u89C4\u5219 > \u8BA2\u9605\u89C4\u5219 > \u5168\u5C40\u89C4\u5219\u3002\"\u5168\u5C40\u89C4\u5219\"\u76F8\u5F53\u4E8E\u515C\u5E95\u89C4\u5219\u3002",en:"1. The priority of rules is: personal rules > subscription rules > global rules. \"Global rules\" are like a fallback rule.",zh_TW:"1.\u898F\u5247\u751F\u6548\u7684\u512A\u5148\u9806\u5E8F\u4F9D\u5E8F\u70BA\uFF1A\u500B\u4EBA\u898F\u5247 > \u8A02\u95B1\u898F\u5247 > \u5168\u57DF\u898F\u5247\u3002 \"\u5168\u57DF\u898F\u5247\"\u76F8\u7576\u65BC\u515C\u5E95\u898F\u5247\u3002",ja:"1. \u30EB\u30FC\u30EB\u306E\u512A\u5148\u9806\u4F4D: \u500B\u4EBA\u30EB\u30FC\u30EB > \u8CFC\u8AAD\u30EB\u30FC\u30EB > \u30B0\u30ED\u30FC\u30D0\u30EB\u30EB\u30FC\u30EB\u3002\u300C\u30B0\u30ED\u30FC\u30D0\u30EB\u30EB\u30FC\u30EB\u300D\u306F\u30D5\u30A9\u30FC\u30EB\u30D0\u30C3\u30AF\u30EB\u30FC\u30EB\u306E\u3088\u3046\u306A\u3082\u306E\u3067\u3059\u3002",ko:"1. \uADDC\uCE59 \uC6B0\uC120\uC21C\uC704: \uAC1C\uC778 \uADDC\uCE59 > \uAD6C\uB3C5 \uADDC\uCE59 > \uC804\uC5ED \uADDC\uCE59. \"\uC804\uC5ED \uADDC\uCE59\"\uC740 \uC77C\uC885\uC758 \uD3F4\uBC31(fallback) \uADDC\uCE59\uC785\uB2C8\uB2E4."},rules_warn_2:{zh:"2\u3001\u201C\u8BA2\u9605\u89C4\u5219\u201D\u9009\u62E9\u6CE8\u5165\u540E\u624D\u4F1A\u751F\u6548\u3002",en:"2. \"Subscription rules\" will take effect only after injection is selected.",zh_TW:"2\u3001\u300C\u8A02\u95B1\u898F\u5247\u300D\u9078\u64C7\u6CE8\u5165\u5F8C\u624D\u6703\u751F\u6548\u3002",ja:"2. \u300C\u8CFC\u8AAD\u30EB\u30FC\u30EB\u300D\u306F\u6CE8\u5165\u3092\u9078\u629E\u3057\u305F\u5F8C\u306B\u306E\u307F\u6709\u52B9\u306B\u306A\u308A\u307E\u3059\u3002",ko:"2. \"\uAD6C\uB3C5 \uADDC\uCE59\"\uC740 \uC8FC\uC785\uC744 \uC120\uD0DD\uD55C \uD6C4\uC5D0\uB9CC \uC801\uC6A9\uB429\uB2C8\uB2E4."},rules_warn_3:{zh:"3\u3001\u5173\u4E8E\u89C4\u5219\u586B\u5199\uFF1A\u8F93\u5165\u6846\u7559\u7A7A\u6216\u4E0B\u62C9\u6846\u9009\u201C*\u201D\u8868\u793A\u91C7\u7528\u5168\u5C40\u89C4\u5219\u3002",en:"3. Regarding filling in the rules: Leave the input box blank or select \"*\" in the drop-down box to use global rule.",zh_TW:"3. \u898F\u5247\u586B\u5BEB\u8AAA\u660E\uFF1A\u8F38\u5165\u6846\u7559\u7A7A\u6216\u4E0B\u62C9\u9078\u64C7\u300C*\u300D\u8868\u793A\u4F7F\u7528\u5168\u57DF\u898F\u5247\u3002",ja:"3. \u30EB\u30FC\u30EB\u306E\u8A18\u5165\u306B\u3064\u3044\u3066: \u5165\u529B\u30DC\u30C3\u30AF\u30B9\u3092\u7A7A\u767D\u306B\u3059\u308B\u304B\u3001\u30C9\u30ED\u30C3\u30D7\u30C0\u30A6\u30F3\u3067\u300C*\u300D\u3092\u9078\u629E\u3059\u308B\u3068\u3001\u30B0\u30ED\u30FC\u30D0\u30EB\u30EB\u30FC\u30EB\u304C\u4F7F\u7528\u3055\u308C\u307E\u3059\u3002",ko:"3. \uADDC\uCE59 \uC791\uC131 \uAD00\uB828: \uC785\uB825\uB780\uC744 \uBE44\uC6CC\uB450\uAC70\uB098 \uB4DC\uB86D\uB2E4\uC6B4\uC5D0\uC11C \"*\"\uB97C \uC120\uD0DD\uD558\uBA74 \uC804\uC5ED \uADDC\uCE59\uC774 \uC0AC\uC6A9\uB429\uB2C8\uB2E4."},sync_warn:{zh:"\u6D89\u53CA\u9690\u79C1\u6570\u636E\u7684\u540C\u6B65\u8BF7\u8C28\u614E\u9009\u62E9\u7B2C\u4E09\u65B9\u540C\u6B65\u670D\u52A1\uFF0C\u5EFA\u8BAE\u81EA\u884C\u642D\u5EFA kiss-worker \u6216 WebDAV \u670D\u52A1\u3002",en:"When synchronizing data that involves privacy, please be cautious about choosing third-party sync services. It is recommended to set up your own sync service using kiss-worker or WebDAV.",zh_TW:"\u540C\u6B65\u6D89\u53CA\u96B1\u79C1\u8CC7\u6599\u6642\uFF0C\u8ACB\u8B39\u614E\u9078\u64C7\u7B2C\u4E09\u65B9\u540C\u6B65\u670D\u52D9\uFF1B\u5EFA\u8B70\u81EA\u5EFA kiss-worker \u6216 WebDAV \u670D\u52D9\u3002",ja:"\u30D7\u30E9\u30A4\u30D0\u30B7\u30FC\u306B\u95A2\u308F\u308B\u30C7\u30FC\u30BF\u3092\u540C\u671F\u3059\u308B\u5834\u5408\u3001\u30B5\u30FC\u30C9\u30D1\u30FC\u30C6\u30A3\u306E\u540C\u671F\u30B5\u30FC\u30D3\u30B9\u306F\u614E\u91CD\u306B\u9078\u629E\u3057\u3066\u304F\u3060\u3055\u3044\u3002kiss-worker \u3084 WebDAV \u30B5\u30FC\u30D3\u30B9\u3092\u81EA\u5DF1\u30DB\u30B9\u30C6\u30A3\u30F3\u30B0\u3059\u308B\u3053\u3068\u3092\u304A\u52E7\u3081\u3057\u307E\u3059\u3002",ko:"\uAC1C\uC778\uC815\uBCF4\uAC00 \uD3EC\uD568\uB41C \uB370\uC774\uD130\uB97C \uB3D9\uAE30\uD654\uD560 \uACBD\uC6B0, \uD0C0\uC0AC \uB3D9\uAE30\uD654 \uC11C\uBE44\uC2A4 \uC120\uD0DD\uC5D0 \uC2E0\uC911\uC744 \uAE30\uD558\uC2ED\uC2DC\uC624. \uC790\uCCB4 kiss-worker \uB610\uB294 WebDAV \uC11C\uBE44\uC2A4\uB97C \uAD6C\uCD95\uD558\uB294 \uAC83\uC744 \uAD8C\uC7A5\uD569\uB2C8\uB2E4."},sync_warn_2:{zh:"\u5982\u679C\u670D\u52A1\u5668\u5B58\u5728\u5176\u4ED6\u5BA2\u6237\u7AEF\u540C\u6B65\u7684\u6570\u636E\uFF0C\u7B2C\u4E00\u6B21\u540C\u6B65\u5C06\u76F4\u63A5\u8986\u76D6\u672C\u5730\u914D\u7F6E\uFF0C\u540E\u9762\u5219\u6839\u636E\u4FEE\u6539\u65F6\u95F4\uFF0C\u65B0\u7684\u8986\u76D6\u65E7\u7684\u3002",en:"If the server has data synchronized by other clients, the first synchronization will directly overwrite the local configuration, and later, according to the modification time, the new one will overwrite the old one.",zh_TW:"\u82E5\u4F3A\u670D\u5668\u4E0A\u5B58\u5728\u5176\u4ED6\u7528\u6236\u7AEF\u540C\u6B65\u7684\u8CC7\u6599\uFF0C\u7B2C\u4E00\u6B21\u540C\u6B65\u6703\u76F4\u63A5\u8986\u84CB\u672C\u6A5F\u8A2D\u5B9A\uFF1B\u4E4B\u5F8C\u5247\u4F9D\u4FEE\u6539\u6642\u9593\uFF0C\u7531\u65B0\u7684\u8986\u84CB\u820A\u7684\u3002",ja:"\u30B5\u30FC\u30D0\u30FC\u306B\u4ED6\u306E\u30AF\u30E9\u30A4\u30A2\u30F3\u30C8\u306B\u3088\u3063\u3066\u540C\u671F\u3055\u308C\u305F\u30C7\u30FC\u30BF\u304C\u3042\u308B\u5834\u5408\u3001\u6700\u521D\u306E\u540C\u671F\u306F\u30ED\u30FC\u30AB\u30EB\u8A2D\u5B9A\u3092\u76F4\u63A5\u4E0A\u66F8\u304D\u3057\u3001\u305D\u306E\u5F8C\u306F\u5909\u66F4\u6642\u9593\u306B\u5FDC\u3058\u3066\u65B0\u3057\u3044\u3082\u306E\u304C\u53E4\u3044\u3082\u306E\u3092\u4E0A\u66F8\u304D\u3057\u307E\u3059\u3002",ko:"\uC11C\uBC84\uC5D0 \uB2E4\uB978 \uD074\uB77C\uC774\uC5B8\uD2B8\uAC00 \uB3D9\uAE30\uD654\uD55C \uB370\uC774\uD130\uAC00 \uC788\uB294 \uACBD\uC6B0, \uCCAB \uBC88\uC9F8 \uB3D9\uAE30\uD654\uB294 \uB85C\uCEEC \uAD6C\uC131\uC744 \uC9C1\uC811 \uB36E\uC5B4\uC4F0\uBA70, \uC774\uD6C4\uC5D0\uB294 \uC218\uC815 \uC2DC\uAC04\uC5D0 \uB530\uB77C \uC0C8 \uD56D\uBAA9\uC774 \uAE30\uC874 \uD56D\uBAA9\uC744 \uB36E\uC5B4\uC501\uB2C8\uB2E4."},about_sync_api:{zh:"\u81EA\u5EFAkiss-wroker\u6570\u636E\u540C\u6B65\u670D\u52A1",en:"Self-hosting a Kiss-worker data sync service",zh_TW:"\u81EA\u5EFA kiss-wroker \u8CC7\u6599\u540C\u6B65\u670D\u52D9",ja:"Kiss-worker \u30C7\u30FC\u30BF\u540C\u671F\u30B5\u30FC\u30D3\u30B9\u3092\u30BB\u30EB\u30D5\u30DB\u30B9\u30C8\u3059\u308B",ko:"Kiss-worker \uB370\uC774\uD130 \uB3D9\uAE30\uD654 \uC11C\uBE44\uC2A4 \uC790\uCCB4 \uD638\uC2A4\uD305"},about_api:{zh:"1\u3001\u5176\u4E2D BuiltinAI \u4E3A\u6D4F\u89C8\u5668\u5185\u7F6EAI\u7FFB\u8BD1\uFF0C\u76EE\u524D\u4EC5 Chrome 138 \u53CA\u4EE5\u4E0A\u7248\u672C\u5F97\u5230\u652F\u6301\u3002",en:"1. BuiltinAI is the browser's built-in AI translation, which is currently only supported by Chrome 138 and above.",zh_TW:"1.\u5176\u4E2D BuiltinAI \u70BA\u700F\u89BD\u5668\u5167\u5EFAAI\u7FFB\u8B6F\uFF0C\u76EE\u524D\u50C5 Chrome 138 \u4EE5\u4E0A\u7248\u672C\u652F\u63F4\u3002",ja:"1. BuiltinAI \u306F\u30D6\u30E9\u30A6\u30B6\u5185\u8535\u306EAI\u7FFB\u8A33\u3067\u3001\u73FE\u5728 Chrome 138 \u4EE5\u964D\u306E\u30D0\u30FC\u30B8\u30E7\u30F3\u3067\u306E\u307F\u30B5\u30DD\u30FC\u30C8\u3055\u308C\u3066\u3044\u307E\u3059\u3002",ko:"1. BuiltinAI\uB294 \uBE0C\uB77C\uC6B0\uC800 \uB0B4\uC7A5 AI \uBC88\uC5ED\uC73C\uB85C, \uD604\uC7AC Chrome 138 \uC774\uC0C1 \uBC84\uC804\uC5D0\uC11C\uB9CC \uC9C0\uC6D0\uB429\uB2C8\uB2E4."},about_api_2:{zh:"2\u3001\u5927\u90E8\u5206AI\u63A5\u53E3\u90FD\u4E0EOpenAI\u517C\u5BB9\uFF0C\u56E0\u6B64\u9009\u62E9\u6DFB\u52A0OpenAI\u7C7B\u578B\u5373\u53EF\u3002It should be noted that Prompt has two types: batch translation and nobatch translation. Not all interfaces support batch translation.",en:"2. Most AI interfaces are compatible with OpenAI, so just choose to add the OpenAI type.",zh_TW:"2.\u5927\u90E8\u5206AI\u4ECB\u9762\u90FD\u8207OpenAI\u76F8\u5BB9\uFF0C\u56E0\u6B64\u9078\u64C7\u65B0\u589EOpenAI\u985E\u578B\u5373\u53EF\u3002\u8981\u6CE8\u610F\u7684\u662FPrompt\u5206\u805A\u5408\u7FFB\u8B6F\u548C\u975E\u805A\u5408\u7FFB\u8B6F\u5169\u7A2E\uFF0C\u4E0D\u662F\u6240\u6709\u4ECB\u9762\u90FD\u652F\u63F4\u805A\u5408\u7FFB\u8B6F\u3002",ja:"2. \u307B\u3068\u3093\u3069\u306EAI\u30A4\u30F3\u30BF\u30FC\u30D5\u30A7\u30FC\u30B9\u306FOpenAI\u3068\u4E92\u63DB\u6027\u304C\u3042\u308B\u305F\u3081\u3001OpenAI\u30BF\u30A4\u30D7\u3092\u8FFD\u52A0\u3059\u308B\u3060\u3051\u3067\u5341\u5206\u3067\u3059\u3002",ko:"2. \uB300\uBD80\uBD84\uC758 AI \uC778\uD130\uD398\uC774\uC2A4\uB294 OpenAI\uC640 \uD638\uD658\uB418\uBBC0\uB85C OpenAI \uC720\uD615\uC744 \uCD94\uAC00\uD558\uAE30\uB9CC \uD558\uBA74 \uB429\uB2C8\uB2E4."},about_api_3:{zh:"3\u3001\u6682\u672A\u5217\u51FA\u7684\u63A5\u53E3\uFF0C\u7406\u8BBA\u4E0A\u90FD\u53EF\u4EE5\u901A\u8FC7\u81EA\u5B9A\u4E49\u63A5\u53E3 (Custom) \u7684\u5F62\u5F0F\u652F\u6301\u3002",en:"3. Interfaces that have not yet been launched can theoretically be supported through custom interfaces.",zh_TW:"3.\u66AB\u672A\u5217\u51FA\u7684\u4ECB\u9762\uFF0C\u7406\u8AD6\u4E0A\u90FD\u53EF\u900F\u904E\u81EA\u8A02\u4ECB\u9762 (Custom) \u7684\u5F62\u5F0F\u652F\u63F4\u3002",ja:"3. \u307E\u3060\u30EA\u30B9\u30C8\u3055\u308C\u3066\u3044\u306A\u3044\u30A4\u30F3\u30BF\u30FC\u30D5\u30A7\u30FC\u30B9\u3082\u3001\u7406\u8AD6\u4E0A\u306F\u30AB\u30B9\u30BF\u30E0\u30A4\u30F3\u30BF\u30FC\u30D5\u30A7\u30FC\u30B9 (Custom) \u3092\u901A\u3058\u3066\u30B5\u30DD\u30FC\u30C8\u53EF\u80FD\u3067\u3059\u3002",ko:"3. \uC544\uC9C1 \uB4F1\uB85D\uB418\uC9C0 \uC54A\uC740 \uC778\uD130\uD398\uC774\uC2A4\uB3C4 \uC774\uB860\uC801\uC73C\uB85C\uB294 \uC0AC\uC6A9\uC790 \uC815\uC758 \uC778\uD130\uD398\uC774\uC2A4 (Custom)\uB97C \uD1B5\uD574 \uC9C0\uC6D0\uB420 \uC218 \uC788\uC2B5\uB2C8\uB2E4."},about_api_proxy:{zh:"\u67E5\u770B\u81EA\u5EFA\u4E00\u4E2A\u7FFB\u8BD1\u63A5\u53E3\u4EE3\u7406",en:"Check out the self-built translation interface proxy",zh_TW:"\u67E5\u770B\u5982\u4F55\u81EA\u5EFA\u7FFB\u8B6F\u4ECB\u9762 Proxy",ja:"\u81EA\u4F5C\u306E\u7FFB\u8A33\u30A4\u30F3\u30BF\u30FC\u30D5\u30A7\u30FC\u30B9\u30D7\u30ED\u30AD\u30B7\u3092\u30C1\u30A7\u30C3\u30AF\u3059\u308B",ko:"\uC790\uCCB4 \uAD6C\uCD95 \uBC88\uC5ED \uC778\uD130\uD398\uC774\uC2A4 \uD504\uB85D\uC2DC \uD655\uC778\uD558\uAE30"},setting_helper:{zh:"\u65B0\u65E7\u914D\u7F6E\u5E76\u4E0D\u517C\u5BB9\uFF0C\u5BFC\u51FA\u7684\u65E7\u7248\u914D\u7F6E\uFF0C\u52FF\u518D\u6B21\u5BFC\u5165\u3002",en:"The old and new configurations are not compatible. Do not import the exported old configuration again.",zh_TW:"\u65B0\u820A\u914D\u7F6E\u4E26\u4E0D\u76F8\u5BB9\uFF0C\u532F\u51FA\u7684\u820A\u7248\u914D\u7F6E\uFF0C\u52FF\u518D\u6B21\u532F\u5165\u3002",ja:"\u65B0\u65E7\u306E\u8A2D\u5B9A\u306B\u4E92\u63DB\u6027\u306F\u3042\u308A\u307E\u305B\u3093\u3002\u30A8\u30AF\u30B9\u30DD\u30FC\u30C8\u3057\u305F\u53E4\u3044\u8A2D\u5B9A\u3092\u518D\u5EA6\u30A4\u30F3\u30DD\u30FC\u30C8\u3057\u306A\u3044\u3067\u304F\u3060\u3055\u3044\u3002",ko:"\uC774\uC804 \uAD6C\uC131\uACFC \uC0C8 \uAD6C\uC131\uC740 \uD638\uD658\uB418\uC9C0 \uC54A\uC2B5\uB2C8\uB2E4. \uB0B4\uBCF4\uB0B8 \uC774\uC804 \uAD6C\uC131\uC744 \uB2E4\uC2DC \uAC00\uC838\uC624\uC9C0 \uB9C8\uC2ED\uC2DC\uC624."},style_none:{zh:"\u65E0",en:"None",zh_TW:"\u7121",ja:"\u306A\u3057",ko:"\uC5C6\uC74C"},under_line:{zh:"\u4E0B\u5212\u76F4\u7EBF",en:"Underline",zh_TW:"\u4E0B\u5283\u76F4\u7DDA",ja:"\u4E0B\u7DDA",ko:"\uBC11\uC904"},dot_line:{zh:"\u4E0B\u5212\u70B9\u72B6\u7EBF",en:"Dotted Underline",zh_TW:"\u4E0B\u5283\u9EDE\u72C0\u7DDA",ja:"\u70B9\u7DDA\u306E\u4E0B\u7DDA",ko:"\uC810\uC120 \uBC11\uC904"},dash_line:{zh:"\u4E0B\u5212\u865A\u7EBF",en:"Dashed Underline",zh_TW:"\u4E0B\u5283\u865B\u7DDA",ja:"\u7834\u7DDA\u306E\u4E0B\u7DDA",ko:"\uD30C\uC120 \uBC11\uC904"},dash_box:{zh:"\u865A\u7EBF\u6846",en:"Dashed Box",zh_TW:"\u865B\u7DDA\u6846",ja:"\u7834\u7DDA\u30DC\u30C3\u30AF\u30B9",ko:"\uD30C\uC120 \uC0C1\uC790"},dash_line_bold:{zh:"\u4E0B\u5212\u865A\u7EBF\u52A0\u7C97",en:"Dashed Underline Bold",zh_TW:"\u4E0B\u5283\u865B\u7DDA",ja:"\u7834\u7DDA\u306E\u4E0B\u7DDA (\u592A\u5B57)",ko:"\uAD75\uC740 \uD30C\uC120 \uBC11\uC904"},dash_box_bold:{zh:"\u865A\u7EBF\u6846\u52A0\u7C97",en:"Dashed Box Bold",zh_TW:"\u865B\u7DDA\u6846\u52A0\u7C97",ja:"\u7834\u7DDA\u30DC\u30C3\u30AF\u30B9 (\u592A\u5B57)",ko:"\uAD75\uC740 \uD30C\uC120 \uC0C1\uC790"},marker:{zh:"\u9A6C\u514B\u7B14",en:"Marker",zh_TW:"\u99AC\u514B\u7B46",ja:"\u30DE\u30FC\u30AB\u30FC",ko:"\uB9C8\uCEE4"},gradient_marker:{zh:"\u6E10\u53D8\u9A6C\u514B\u7B14",en:"Gradient Marker",zh_TW:"\u6F38\u5C64\u99AC\u514B\u7B46",ja:"\u30B0\u30E9\u30C7\u30FC\u30B7\u30E7\u30F3\u30DE\u30FC\u30AB\u30FC",ko:"\uADF8\uB77C\uB370\uC774\uC158 \uB9C8\uCEE4"},wavy_line:{zh:"\u4E0B\u5212\u6CE2\u6D6A\u7EBF",en:"Wavy Underline",zh_TW:"\u4E0B\u5283\u6CE2\u6D6A\u7DDA",ja:"\u6CE2\u7DDA\u306E\u4E0B\u7DDA",ko:"\uBB3C\uACB0 \uBC11\uC904"},wavy_line_bold:{zh:"\u4E0B\u5212\u6CE2\u6D6A\u7EBF\u52A0\u7C97",en:"Wavy Underline Bold",zh_TW:"\u4E0B\u5283\u6CE2\u6D6A\u7DDA\u52A0\u7C97",ja:"\u6CE2\u7DDA\u306E\u4E0B\u7DDA (\u592A\u5B57)",ko:"\uAD75\uC740 \uBB3C\uACB0 \uBC11\uC904"},fuzzy:{zh:"\u6A21\u7CCA",en:"Fuzzy",zh_TW:"\u6A21\u7CCA",ja:"\u307C\u304B\u3057",ko:"\uD750\uB9BC"},highlight:{zh:"\u9AD8\u4EAE",en:"Highlight",zh_TW:"\u53CD\u767D\u6A19\u793A",ja:"\u30CF\u30A4\u30E9\u30A4\u30C8",ko:"\uD558\uC774\uB77C\uC774\uD2B8"},blockquote:{zh:"\u5F15\u7528",en:"Blockquote",zh_TW:"\u5F15\u7528",ja:"\u5F15\u7528",ko:"\uC778\uC6A9"},gradient:{zh:"\u6E10\u53D8",en:"Gradient",zh_TW:"\u6F38\u8B8A",ja:"\u30B0\u30E9\u30C7\u30FC\u30B7\u30E7\u30F3",ko:"\uADF8\uB77C\uB370\uC774\uC158"},blink:{zh:"\u95EA\u73B0",en:"Blink",zh_TW:"\u9583\u73FE",ja:"\u70B9\u6EC5",ko:"\uAE5C\uBC15\uC784"},glow:{zh:"\u53D1\u5149",en:"Glow",zh_TW:"\u767C\u5149",ja:"\u767A\u5149",ko:"\uBC1C\uAD11"},colorful:{zh:"\u591A\u5F69",en:"Colorful",zh_TW:"\u591A\u5F69",ja:"\u30AB\u30E9\u30D5\u30EB",ko:"\uB2E4\uCC44\uB86D\uAC8C"},setting:{zh:"\u8BBE\u7F6E",en:"Setting",zh_TW:"\u8A2D\u5B9A",ja:"\u8A2D\u5B9A",ko:"\uC124\uC815"},pattern:{zh:"\u5339\u914D\u7F51\u5740",en:"URL pattern",zh_TW:"\u5339\u914D\u7DB2\u5740",ja:"URL\u30D1\u30BF\u30FC\u30F3",ko:"URL \uD328\uD134"},pattern_helper:{zh:"1\u3001\u652F\u6301\u661F\u53F7(*)\u901A\u914D\u7B26\u30022\u3001\u591A\u4E2AURL\u7528\u6362\u884C\u6216\u82F1\u6587\u9017\u53F7\u201C,\u201D\u5206\u9694\u3002",en:"1. Supports the asterisk (*) wildcard character. 2. Separate multiple URLs with newlines or English commas \",\".",zh_TW:"1. \u652F\u63F4\u661F\u865F (*) \u842C\u7528\u5B57\u5143\u30022. \u591A\u500B URL \u8ACB\u4EE5\u63DB\u884C\u6216\u82F1\u6587\u9017\u865F\u300C,\u300D\u5206\u9694\u3002",ja:"1. \u30A2\u30B9\u30BF\u30EA\u30B9\u30AF (*) \u30EF\u30A4\u30EB\u30C9\u30AB\u30FC\u30C9\u3092\u30B5\u30DD\u30FC\u30C8\u3057\u307E\u3059\u3002 2. \u8907\u6570\u306EURL\u306F\u6539\u884C\u307E\u305F\u306F\u82F1\u8A9E\u306E\u30B3\u30F3\u30DE\u300C,\u300D\u3067\u533A\u5207\u308A\u307E\u3059\u3002",ko:"1. \uBCC4\uD45C(*) \uC640\uC77C\uB4DC\uCE74\uB4DC \uBB38\uC790\uB97C \uC9C0\uC6D0\uD569\uB2C8\uB2E4. 2. \uC5EC\uB7EC URL\uC740 \uC904\uBC14\uAFC8 \uB610\uB294 \uC601\uC5B4 \uC27C\uD45C \",\"\uB85C \uAD6C\uBD84\uD569\uB2C8\uB2E4."},selector_helper:{zh:"1\u3001\u9700\u8981\u7FFB\u8BD1\u7684\u76EE\u6807\u5143\u7D20\u30022\u3001\u5F00\u542F\u81EA\u52A8\u626B\u63CF\u9875\u9762\u540E\uFF0C\u672C\u8BBE\u7F6E\u65E0\u6548\u30023\u3001\u9075\u5FAACSS\u9009\u62E9\u5668\u8BED\u6CD5\u3002",en:"1. The target element to be translated. 2. This setting is invalid when automatic page scanning is enabled. 3. Follow the CSS selector syntax.",zh_TW:"1\u3001\u9700\u8981\u7FFB\u8B6F\u7684\u76EE\u6A19\u5143\u7D20\u3002 2.\u958B\u555F\u81EA\u52D5\u6383\u63CF\u9801\u9762\u5F8C\uFF0C\u672C\u8A2D\u5B9A\u7121\u6548\u3002 3.\u9075\u5FAACSS\u9078\u64C7\u5668\u8A9E\u6CD5\u3002",ja:"1. \u7FFB\u8A33\u5BFE\u8C61\u306E\u8981\u7D20\u3002 2. \u30DA\u30FC\u30B8\u306E\u81EA\u52D5\u30B9\u30AD\u30E3\u30F3\u3092\u6709\u52B9\u306B\u3059\u308B\u3068\u3001\u3053\u306E\u8A2D\u5B9A\u306F\u7121\u52B9\u306B\u306A\u308A\u307E\u3059\u3002 3. CSS\u30BB\u30EC\u30AF\u30BF\u69CB\u6587\u306B\u5F93\u3063\u3066\u304F\u3060\u3055\u3044\u3002",ko:"1. \uBC88\uC5ED\uD560 \uB300\uC0C1 \uC694\uC18C\uC785\uB2C8\uB2E4. 2. \uC790\uB3D9 \uD398\uC774\uC9C0 \uC2A4\uCE94\uC774 \uD65C\uC131\uD654\uB418\uBA74 \uC774 \uC124\uC815\uC740 \uBB34\uD6A8\uD654\uB429\uB2C8\uB2E4. 3. CSS \uC120\uD0DD\uC790 \uAD6C\uBB38\uC744 \uB530\uB985\uB2C8\uB2E4."},translate_switch:{zh:"\u5F00\u542F\u7FFB\u8BD1",en:"Translate Switch",zh_TW:"\u958B\u555F\u7FFB\u8B6F",ja:"\u7FFB\u8A33\u3092\u6709\u52B9\u306B\u3059\u308B",ko:"\uBC88\uC5ED \uCF1C\uAE30"},default_enabled:{zh:"\u9ED8\u8BA4\u5F00\u542F",en:"Enabled",zh_TW:"\u9810\u8A2D\u958B\u555F",ja:"\u30C7\u30D5\u30A9\u30EB\u30C8\u3067\u6709\u52B9",ko:"\uAE30\uBCF8\uC73C\uB85C \uC0AC\uC6A9"},default_disabled:{zh:"\u9ED8\u8BA4\u5173\u95ED",en:"Disabled",zh_TW:"\u9810\u8A2D\u95DC\u9589",ja:"\u30C7\u30D5\u30A9\u30EB\u30C8\u3067\u7121\u52B9",ko:"\uAE30\uBCF8\uC73C\uB85C \uC0AC\uC6A9 \uC548\uD568"},selector:{zh:"\u9009\u62E9\u5668",en:"Selector",zh_TW:"\u9078\u64C7\u5668",ja:"\u30BB\u30EC\u30AF\u30BF",ko:"\uC120\uD0DD\uC790"},target_selector:{zh:"\u76EE\u6807\u5143\u7D20\u9009\u62E9\u5668",en:"Target element selector",zh_TW:"\u76EE\u6A19\u5143\u7D20\u9078\u64C7\u5668",ja:"\u5BFE\u8C61\u8981\u7D20\u30BB\u30EC\u30AF\u30BF",ko:"\uB300\uC0C1 \uC694\uC18C \uC120\uD0DD\uC790"},keep_selector:{zh:"\u4FDD\u7559\u5143\u7D20\u9009\u62E9\u5668",en:"Keep unchanged selector",zh_TW:"\u4FDD\u7559\u5143\u7D20\u9078\u64C7\u5668",ja:"\u4FDD\u6301\u8981\u7D20\u30BB\u30EC\u30AF\u30BF",ko:"\uC720\uC9C0\uD560 \uC694\uC18C \uC120\uD0DD\uC790"},keep_selector_helper:{zh:"1\u3001\u76EE\u6807\u5143\u7D20\u4E0B\u9762\u9700\u8981\u539F\u6837\u4FDD\u7559\u7684\u5B50\u8282\u70B9\u30022\u3001\u9075\u5FAACSS\u9009\u62E9\u5668\u8BED\u6CD5\u3002",en:"1. The child nodes under the target element need to remain intact. 2. Follow the CSS selector syntax.",zh_TW:"1. \u76EE\u6A19\u5143\u7D20\u4E0B\u7684\u5B50\u7BC0\u9EDE\u9700\u8981\u4FDD\u6301\u539F\u6A23\u3002 2. \u9075\u5FAA CSS \u9078\u64C7\u5668\u8A9E\u6CD5\u3002",ja:"1. \u5BFE\u8C61\u8981\u7D20\u306E\u4E0B\u306B\u3042\u308B\u3001\u305D\u306E\u307E\u307E\u4FDD\u6301\u3059\u308B\u5FC5\u8981\u304C\u3042\u308B\u5B50\u30CE\u30FC\u30C9\u3002 2. CSS\u30BB\u30EC\u30AF\u30BF\u69CB\u6587\u306B\u5F93\u3063\u3066\u304F\u3060\u3055\u3044\u3002",ko:"1. \uB300\uC0C1 \uC694\uC18C \uC544\uB798\uC758 \uC790\uC2DD \uB178\uB4DC \uC911 \uADF8\uB300\uB85C \uC720\uC9C0\uD574\uC57C \uD558\uB294 \uB178\uB4DC. 2. CSS \uC120\uD0DD\uC790 \uAD6C\uBB38\uC744 \uB530\uB985\uB2C8\uB2E4."},root_selector:{zh:"\u6839\u8282\u70B9\u9009\u62E9\u5668",en:"Root node selector",zh_TW:"\u6839\u7BC0\u9EDE\u9078\u64C7\u5668",ja:"\u30EB\u30FC\u30C8\u30CE\u30FC\u30C9\u30BB\u30EC\u30AF\u30BF",ko:"\uB8E8\uD2B8 \uB178\uB4DC \uC120\uD0DD\uC790"},root_selector_helper:{zh:"1\u3001\u7528\u4E8E\u7F29\u5C0F\u9875\u9762\u7FFB\u8BD1\u8303\u56F4\u30022\u3001\u9075\u5FAACSS\u9009\u62E9\u5668\u8BED\u6CD5\u3002",en:"1. Used to narrow the translation scope of the page. 2. Follow the CSS selector syntax.",zh_TW:"1.\u7528\u65BC\u7E2E\u5C0F\u9801\u9762\u7FFB\u8B6F\u7BC4\u570D\u3002 2\u3001\u9075\u5FAACSS\u9078\u64C7\u5668\u8A9E\u6CD5\u3002",ja:"1. \u30DA\u30FC\u30B8\u306E\u7FFB\u8A33\u7BC4\u56F2\u3092\u7D5E\u308A\u8FBC\u3080\u305F\u3081\u306B\u4F7F\u7528\u3057\u307E\u3059\u3002 2. CSS\u30BB\u30EC\u30AF\u30BF\u69CB\u6587\u306B\u5F93\u3063\u3066\u304F\u3060\u3055\u3044\u3002",ko:"1. \uD398\uC774\uC9C0\uC758 \uBC88\uC5ED \uBC94\uC704\uB97C \uC881\uD788\uB294 \uB370 \uC0AC\uC6A9\uB429\uB2C8\uB2E4. 2. CSS \uC120\uD0DD\uC790 \uAD6C\uBB38\uC744 \uB530\uB985\uB2C8\uB2E4."},ignore_selector:{zh:"\u4E0D\u7FFB\u8BD1\u8282\u70B9\u9009\u62E9\u5668",en:"Ignore node selectors",zh_TW:"\u4E0D\u7FFB\u8B6F\u7BC0\u9EDE\u9078\u64C7\u5668",ja:"\u7FFB\u8A33\u3057\u306A\u3044\u30CE\u30FC\u30C9\u30BB\u30EC\u30AF\u30BF",ko:"\uBC88\uC5ED \uBB34\uC2DC \uB178\uB4DC \uC120\uD0DD\uC790"},ignore_selector_helper:{zh:"1\u3001\u9700\u8981\u5FFD\u7565\u7684\u8282\u70B9\u30022\u3001\u9075\u5FAACSS\u9009\u62E9\u5668\u8BED\u6CD5\u3002",en:"1. Nodes to be ignored. 2. Follow CSS selector syntax.",zh_TW:"1\u3001\u9700\u8981\u5FFD\u7565\u7684\u7BC0\u9EDE\u3002 2\u3001\u9075\u5FAACSS\u9078\u64C7\u5668\u8A9E\u6CD5\u3002",ja:"1. \u7121\u8996\u3059\u308B\u30CE\u30FC\u30C9\u3002 2. CSS\u30BB\u30EC\u30AF\u30BF\u69CB\u6587\u306B\u5F93\u3063\u3066\u304F\u3060\u3055\u3044\u3002",ko:"1. \uBB34\uC2DC\uD560 \uB178\uB4DC. 2. CSS \uC120\uD0DD\uC790 \uAD6C\uBB38\uC744 \uB530\uB985\uB2C8\uB2E4."},terms:{zh:"\u4E13\u4E1A\u672F\u8BED",en:"Terms",zh_TW:"\u5C08\u696D\u8853\u8A9E",ja:"\u5C02\u9580\u7528\u8A9E",ko:"\uC804\uBB38 \uC6A9\uC5B4"},terms_helper:{zh:"1\u3001\u652F\u6301\u6B63\u5219\u8868\u8FBE\u5F0F\u5339\u914D\uFF0C\u65E0\u9700\u659C\u6746\uFF0C\u4E0D\u652F\u6301\u4FEE\u9970\u7B26\u30022\u3001\u591A\u6761\u672F\u8BED\u7528\u6362\u884C\u6216\u5206\u53F7\u201C;\u201D\u9694\u5F00\u30023\u3001\u672F\u8BED\u548C\u8BD1\u6587\u7528\u82F1\u6587\u9017\u53F7\u201C,\u201D\u9694\u5F00\u30024\u3001\u6CA1\u6709\u8BD1\u6587\u89C6\u4E3A\u4E0D\u7FFB\u8BD1\u672F\u8BED\u3002",en:"1. Supports regular expression matching, no slash required, and no modifiers are supported. 2. Separate multiple terms with newlines or semicolons \";\". 3. Terms and translations are separated by English commas \",\". 4. If there is no translation, the term will be deemed not to be translated.",zh_TW:"1. \u652F\u63F4\u6B63\u5247\u8868\u9054\u5F0F\u6BD4\u5C0D\uFF0C\u7121\u9700\u659C\u7DDA\uFF0C\u4E14\u4E0D\u652F\u63F4\u4FEE\u98FE\u7B26\u30022. \u591A\u689D\u8853\u8A9E\u4EE5\u63DB\u884C\u6216\u5206\u865F\u300C;\u300D\u5206\u9694\u30023. \u8853\u8A9E\u8207\u8B6F\u6587\u4EE5\u82F1\u6587\u9017\u865F\u300C,\u300D\u5206\u9694\u30024. \u7121\u8B6F\u6587\u8005\u8996\u70BA\u4E0D\u7FFB\u8B6F\u8A72\u8853\u8A9E\u3002",ja:"1. \u6B63\u898F\u8868\u73FE\u30DE\u30C3\u30C1\u30F3\u30B0\u3092\u30B5\u30DD\u30FC\u30C8 (\u30B9\u30E9\u30C3\u30B7\u30E5\u4E0D\u8981\u3001\u4FEE\u98FE\u5B50\u975E\u5BFE\u5FDC)\u3002 2. \u8907\u6570\u306E\u7528\u8A9E\u306F\u6539\u884C\u307E\u305F\u306F\u30BB\u30DF\u30B3\u30ED\u30F3\u300C;\u300D\u3067\u533A\u5207\u308A\u307E\u3059\u3002 3. \u7528\u8A9E\u3068\u7FFB\u8A33\u306F\u82F1\u8A9E\u306E\u30B3\u30F3\u30DE\u300C,\u300D\u3067\u533A\u5207\u308A\u307E\u3059\u3002 4. \u7FFB\u8A33\u304C\u306A\u3044\u5834\u5408\u306F\u3001\u305D\u306E\u7528\u8A9E\u3092\u7FFB\u8A33\u3057\u306A\u3044\u3082\u306E\u3068\u307F\u306A\u3057\u307E\u3059\u3002",ko:"1. \uC815\uADDC\uC2DD \uC77C\uCE58\uB97C \uC9C0\uC6D0\uD558\uBA70, \uC2AC\uB798\uC2DC\uAC00 \uD544\uC694 \uC5C6\uACE0 \uC218\uC815\uC790\uB294 \uC9C0\uC6D0\uB418\uC9C0 \uC54A\uC2B5\uB2C8\uB2E4. 2. \uC5EC\uB7EC \uC6A9\uC5B4\uB294 \uC904\uBC14\uAFC8 \uB610\uB294 \uC138\uBBF8\uCF5C\uB860 \";\"\uC73C\uB85C \uAD6C\uBD84\uD569\uB2C8\uB2E4. 3. \uC6A9\uC5B4\uC640 \uBC88\uC5ED\uC740 \uC601\uC5B4 \uC27C\uD45C \",\"\uB85C \uAD6C\uBD84\uD569\uB2C8\uB2E4. 4. \uBC88\uC5ED\uC774 \uC5C6\uB294 \uACBD\uC6B0 \uD574\uB2F9 \uC6A9\uC5B4\uB97C \uBC88\uC5ED\uD558\uC9C0 \uC54A\uB294 \uAC83\uC73C\uB85C \uAC04\uC8FC\uD569\uB2C8\uB2E4."},ai_terms:{zh:"AI\u4E13\u4E1A\u672F\u8BED",en:"AI Terms",zh_TW:"AI\u5C08\u696D\u8853\u8A9E",ja:"AI\u5C02\u9580\u7528\u8A9E",ko:"AI \uC804\uBB38 \uC6A9\uC5B4"},ai_terms_helper:{zh:"1\u3001AI\u667A\u80FD\u66FF\u6362\uFF0C\u4E0D\u652F\u6301\u6B63\u5219\u8868\u8FBE\u5F0F\u30022\u3001\u591A\u6761\u672F\u8BED\u7528\u6362\u884C\u6216\u5206\u53F7\u201C;\u201D\u9694\u5F00\u30023\u3001\u672F\u8BED\u548C\u8BD1\u6587\u7528\u82F1\u6587\u9017\u53F7\u201C,\u201D\u9694\u5F00\u30024\u3001\u6CA1\u6709\u8BD1\u6587\u89C6\u4E3A\u4E0D\u7FFB\u8BD1\u672F\u8BED\u3002",en:"1. AI intelligent replacement does not support regular expressions.2. Separate multiple terms with newlines or semicolons \";\". 3. Terms and translations are separated by English commas \",\". 4. If there is no translation, the term will be deemed not to be translated.",zh_TW:"1.AI\u667A\u80FD\u66FF\u63DB\uFF0C\u4E0D\u652F\u63F4\u6B63\u898F\u8868\u793A\u5F0F\u30022. \u591A\u689D\u8853\u8A9E\u4EE5\u63DB\u884C\u6216\u5206\u865F\u300C;\u300D\u5206\u9694\u30023. \u8853\u8A9E\u8207\u8B6F\u6587\u4EE5\u82F1\u6587\u9017\u865F\u300C,\u300D\u5206\u9694\u30024. \u7121\u8B6F\u6587\u8005\u8996\u70BA\u4E0D\u7FFB\u8B6F\u8A72\u8853\u8A9E\u3002",ja:"1. AI\u306B\u3088\u308B\u30A4\u30F3\u30C6\u30EA\u30B8\u30A7\u30F3\u30C8\u306A\u7F6E\u63DB (\u6B63\u898F\u8868\u73FE\u975E\u5BFE\u5FDC)\u3002 2. \u8907\u6570\u306E\u7528\u8A9E\u306F\u6539\u884C\u307E\u305F\u306F\u30BB\u30DF\u30B3\u30ED\u30F3\u300C;\u300D\u3067\u533A\u5207\u308A\u307E\u3059\u3002 3. \u7528\u8A9E\u3068\u7FFB\u8A33\u306F\u82F1\u8A9E\u306E\u30B3\u30F3\u30DE\u300C,\u300D\u3067\u533A\u5207\u308A\u307E\u3059\u3002 4. \u7FFB\u8A33\u304C\u306A\u3044\u5834\u5408\u306F\u3001\u305D\u306E\u7528\u8A9E\u3092\u7FFB\u8A33\u3057\u306A\u3044\u3082\u306E\u3068\u307F\u306A\u3057\u307E\u3059\u3002",ko:"1. AI \uC9C0\uB2A5\uD615 \uB300\uCCB4, \uC815\uADDC\uC2DD\uC744 \uC9C0\uC6D0\uD558\uC9C0 \uC54A\uC2B5\uB2C8\uB2E4. 2. \uC5EC\uB7EC \uC6A9\uC5B4\uB294 \uC904\uBC14\uAFC8 \uB610\uB294 \uC138\uBBF8\uCF5C\uB860 \";\"\uC73C\uB85C \uAD6C\uBD84\uD569\uB2C8\uB2E4. 3. \uC6A9\uC5B4\uC640 \uBC88\uC5ED\uC740 \uC601\uC5B4 \uC27C\uD45C \",\"\uB85C \uAD6C\uBD84\uD569\uB2C8\uB2E4. 4. \uBC88\uC5ED\uC774 \uC5C6\uB294 \uACBD\uC6B0 \uD574\uB2F9 \uC6A9\uC5B4\uB97C \uBC88\uC5ED\uD558\uC9C0 \uC54A\uB294 \uAC83\uC73C\uB85C \uAC04\uC8FC\uD569\uB2C8\uB2E4."},text_ext_style:{zh:"\u8BD1\u6587\u9644\u52A0\u6837\u5F0F",en:"Translation additional styles",zh_TW:"\u8B6F\u6587\u9644\u52A0\u6A23\u5F0F",ja:"\u7FFB\u8A33\u306E\u8FFD\u52A0\u30B9\u30BF\u30A4\u30EB",ko:"\uBC88\uC5ED \uCD94\uAC00 \uC2A4\uD0C0\uC77C"},selector_style:{zh:"\u9009\u62E9\u5668\u8282\u70B9\u6837\u5F0F",en:"Selector Style",zh_TW:"\u9078\u64C7\u5668\u7BC0\u9EDE\u6A23\u5F0F",ja:"\u30BB\u30EC\u30AF\u30BF\u30CE\u30FC\u30C9\u30B9\u30BF\u30A4\u30EB",ko:"\uC120\uD0DD\uC790 \uB178\uB4DC \uC2A4\uD0C0\uC77C"},terms_style:{zh:"\u4E13\u4E1A\u672F\u8BED\u6837\u5F0F",en:"Terms Style",zh_TW:"\u5C08\u696D\u8853\u8A9E\u6A23\u5F0F",ja:"\u5C02\u9580\u7528\u8A9E\u30B9\u30BF\u30A4\u30EB",ko:"\uC804\uBB38 \uC6A9\uC5B4 \uC2A4\uD0C0\uC77C"},highlight_style:{zh:"\u8BCD\u6C47\u9AD8\u4EAE\u6837\u5F0F",en:"Fav Words highlight style",zh_TW:"\u8A5E\u5F59\u9AD8\u4EAE\u6A23\u5F0F",ja:"\u5358\u8A9E\u30CF\u30A4\u30E9\u30A4\u30C8\u30B9\u30BF\u30A4\u30EB",ko:"\uB2E8\uC5B4 \uD558\uC774\uB77C\uC774\uD2B8 \uC2A4\uD0C0\uC77C"},selector_style_helper:{zh:"\u5F00\u542F\u7FFB\u8BD1\u65F6\u6CE8\u5165\u3002",en:"It is injected when translation is turned on.",zh_TW:"\u5728\u958B\u555F\u7FFB\u8B6F\u6642\u6CE8\u5165\u3002",ja:"\u7FFB\u8A33\u304C\u6709\u52B9\u306A\u3068\u304D\u306B\u6CE8\u5165\u3055\u308C\u307E\u3059\u3002",ko:"\uBC88\uC5ED\uC774 \uCF1C\uC838 \uC788\uC744 \uB54C \uC8FC\uC785\uB429\uB2C8\uB2E4."},selector_parent_style:{zh:"\u9009\u62E9\u5668\u7236\u8282\u70B9\u6837\u5F0F",en:"Parent Selector Style",zh_TW:"\u9078\u64C7\u5668\u7236\u7BC0\u9EDE\u6A23\u5F0F",ja:"\u89AA\u30BB\u30EC\u30AF\u30BF\u30B9\u30BF\u30A4\u30EB",ko:"\uBD80\uBAA8 \uC120\uD0DD\uC790 \uC2A4\uD0C0\uC77C"},selector_grand_style:{zh:"\u9009\u62E9\u5668\u7956\u8282\u70B9\u6837\u5F0F",en:"Grand Selector Style",zh_TW:"\u9078\u64C7\u5668\u7956\u7BC0\u9EDE\u6A23\u5F0F",ja:"\u7956\u5148\u30BB\u30EC\u30AF\u30BF\u30B9\u30BF\u30A4\u30EB",ko:"\uC0C1\uC704 \uC120\uD0DD\uC790 \uC2A4\uD0C0\uC77C"},inject_js:{zh:"\u6CE8\u5165JS",en:"Inject JS",zh_TW:"\u6CE8\u5165 JS",ja:"JS\u3092\u6CE8\u5165",ko:"JS \uC8FC\uC785"},inject_js_helper:{zh:"\u9884\u52A0\u8F7D\u65F6\u6CE8\u5165\uFF0C\u4E00\u4E2A\u9875\u9762\u4EC5\u8FD0\u884C\u4E00\u6B21\u3002\u5185\u7F6E\u5168\u5C40\u5BF9\u8C61 KT: {\n apiTranslate,\n apiDectect,\n apiSetting,\n apisMap,\n toLang,\n docInfo,\n glossary,\n }",en:"Injected during preload, runs only once per page. Built-in global object KT: {\n apiTranslate,\n apiDectect,\n apiSetting,\n apisMap,\n toLang,\n docInfo,\n glossary,\n }",zh_TW:"\u9810\u5148\u8F09\u5165\u6642\u6CE8\u5165\uFF0C\u4E00\u500B\u9801\u9762\u50C5\u904B\u884C\u4E00\u6B21\u3002\u5167\u5EFA\u5168\u57DF\u7269\u4EF6 KT: {\n apiTranslate,\n apiDectect,\n apiSetting,\n apisMap,\n toLang,\n docInfo,\n glossary,\n }",ja:"\u30D7\u30EA\u30ED\u30FC\u30C9\u6642\u306B\u6CE8\u5165\u3055\u308C\u3001\u30DA\u30FC\u30B8\u3054\u3068\u306B1\u56DE\u3060\u3051\u5B9F\u884C\u3055\u308C\u307E\u3059\u3002\u7D44\u307F\u8FBC\u307F\u30B0\u30ED\u30FC\u30D0\u30EB\u30AA\u30D6\u30B8\u30A7\u30AF\u30C8 KT: {\n apiTranslate,\n apiDectect,\n apiSetting,\n apisMap,\n toLang,\n docInfo,\n glossary,\n }",ko:"\uBBF8\uB9AC \uB85C\uB4DC \uC2DC \uC8FC\uC785\uB418\uBA70 \uD398\uC774\uC9C0\uB2F9 \uD55C \uBC88\uB9CC \uC2E4\uD589\uB429\uB2C8\uB2E4. \uB0B4\uC7A5 \uC804\uC5ED \uAC1D\uCCB4 KT: {\n apiTranslate,\n apiDectect,\n apiSetting,\n apisMap,\n toLang,\n docInfo,\n glossary,\n }"},inject_css:{zh:"\u6CE8\u5165CSS",en:"Inject CSS",zh_TW:"\u6CE8\u5165 CSS",ja:"CSS\u3092\u6CE8\u5165",ko:"CSS \uC8FC\uC785"},inject_css_helper:{zh:"\u9884\u52A0\u8F7D\u65F6\u6CE8\u5165\uFF0C\u4E00\u4E2A\u9875\u9762\u4EC5\u8FD0\u884C\u4E00\u6B21\u3002",en:"Injected during preload, runs only once per page.",zh_TW:"\u9810\u5148\u8F09\u5165\u6642\u6CE8\u5165\uFF0C\u4E00\u500B\u9801\u9762\u50C5\u904B\u884C\u4E00\u6B21\u3002",ja:"\u30D7\u30EA\u30ED\u30FC\u30C9\u6642\u306B\u6CE8\u5165\u3055\u308C\u3001\u30DA\u30FC\u30B8\u3054\u3068\u306B1\u56DE\u3060\u3051\u5B9F\u884C\u3055\u308C\u307E\u3059\u3002",ko:"\uBBF8\uB9AC \uB85C\uB4DC \uC2DC \uC8FC\uC785\uB418\uBA70 \uD398\uC774\uC9C0\uB2F9 \uD55C \uBC88\uB9CC \uC2E4\uD589\uB429\uB2C8\uB2E4."},fixer_function:{zh:"\u4FEE\u590D\u51FD\u6570",en:"Fixer Function",zh_TW:"\u4FEE\u5FA9\u51FD\u5F0F",ja:"\u4FEE\u6B63\u95A2\u6570",ko:"\uC218\uC815 \uD568\uC218"},fixer_function_helper:{zh:"1\u3001br\u662F\u5C06
\u6362\u884C\u66FF\u6362\u6210

\u30022\u3001bn\u662F\u5C06\\n\u6362\u884C\u66FF\u6362\u6210

\u30023\u3001brToDiv\u548CbnToDiv\u662F\u66FF\u6362\u6210

\u3002",en:"1. br replaces
line breaks with

. 2. bn replaces \\n newline with

. 3. brToDiv and bnToDiv are replaced with

.",zh_TW:"1. br \u6703\u5C07
\u63DB\u884C\u66FF\u63DB\u70BA

\u30022. bn \u6703\u5C07 \\n \u63DB\u884C\u66FF\u63DB\u70BA

\u30023. brToDiv \u8207 bnToDiv \u6703\u66FF\u63DB\u70BA

\u3002",ja:"1. br \u306F
\u6539\u884C\u3092

\u306B\u7F6E\u304D\u63DB\u3048\u307E\u3059\u3002 2. bn \u306F \\n \u6539\u884C\u3092

\u306B\u7F6E\u304D\u63DB\u3048\u307E\u3059\u3002 3. brToDiv \u3068 bnToDiv \u306F

\u306B\u7F6E\u304D\u63DB\u3048\u307E\u3059\u3002",ko:"1. br\uC740
\uC904\uBC14\uAFC8\uC744

\uB85C \uB300\uCCB4\uD569\uB2C8\uB2E4. 2. bn\uC740 \\n \uC904\uBC14\uAFC8\uC744

\uB85C \uB300\uCCB4\uD569\uB2C8\uB2E4. 3. brToDiv \uBC0F bnToDiv\uB294

\uB85C \uB300\uCCB4\uB429\uB2C8\uB2E4."},import:{zh:"\u5BFC\u5165",en:"Import",zh_TW:"\u532F\u5165",ja:"\u30A4\u30F3\u30DD\u30FC\u30C8",ko:"\uAC00\uC838\uC624\uAE30"},export:{zh:"\u5BFC\u51FA",en:"Export",zh_TW:"\u532F\u51FA",ja:"\u30A8\u30AF\u30B9\u30DD\u30FC\u30C8",ko:"\uB0B4\uBCF4\uB0B4\uAE30"},export_translation:{zh:"\u5BFC\u51FA\u91CA\u4E49",en:"Export Translation",zh_TW:"\u532F\u51FA\u91CB\u7FA9",ja:"\u8A33\u6587\u306E\u30A8\u30AF\u30B9\u30DD\u30FC\u30C8",ko:"\uBC88\uC5ED \uB0B4\uBCF4\uB0B4\uAE30"},error_cant_be_blank:{zh:"\u4E0D\u80FD\u4E3A\u7A7A",en:"Can not be blank",zh_TW:"\u4E0D\u53EF\u70BA\u7A7A",ja:"\u7A7A\u767D\u306B\u3059\u308B\u3053\u3068\u306F\u3067\u304D\u307E\u305B\u3093",ko:"\uBE44\uC6CC\uB458 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4"},error_duplicate_values:{zh:"\u5B58\u5728\u91CD\u590D\u7684\u503C",en:"There are duplicate values",zh_TW:"\u5B58\u5728\u91CD\u8907\u7684\u503C",ja:"\u91CD\u8907\u3059\u308B\u5024\u304C\u5B58\u5728\u3057\u307E\u3059",ko:"\uC911\uBCF5\uB41C \uAC12\uC774 \uC788\uC2B5\uB2C8\uB2E4"},error_wrong_file_type:{zh:"\u9519\u8BEF\u7684\u6587\u4EF6\u7C7B\u578B",en:"Wrong file type",zh_TW:"\u6A94\u6848\u985E\u578B\u932F\u8AA4",ja:"\u4E0D\u6B63\u306A\u30D5\u30A1\u30A4\u30EB\u30BF\u30A4\u30D7\u3067\u3059",ko:"\uC798\uBABB\uB41C \uD30C\uC77C \uD615\uC2DD\uC785\uB2C8\uB2E4"},error_fetch_url:{zh:"\u8BF7\u68C0\u67E5url\u5730\u5740\u662F\u5426\u6B63\u786E\u6216\u7A0D\u540E\u518D\u8BD5\u3002",en:"Please check if the url address is correct or try again later.",zh_TW:"\u8ACB\u6AA2\u67E5 URL \u662F\u5426\u6B63\u78BA\u6216\u7A0D\u5F8C\u518D\u8A66\u3002",ja:"URL\u30A2\u30C9\u30EC\u30B9\u304C\u6B63\u3057\u3044\u304B\u78BA\u8A8D\u3059\u308B\u304B\u3001\u5F8C\u3067\u3082\u3046\u4E00\u5EA6\u304A\u8A66\u3057\u304F\u3060\u3055\u3044\u3002",ko:"URL \uC8FC\uC18C\uAC00 \uC62C\uBC14\uB978\uC9C0 \uD655\uC778\uD558\uAC70\uB098 \uB098\uC911\uC5D0 \uB2E4\uC2DC \uC2DC\uB3C4\uD558\uC2ED\uC2DC\uC624."},deepl_api:{zh:"DeepL \u63A5\u53E3",en:"DeepL API",zh_TW:"DeepL \u4ECB\u9762",ja:"DeepL API",ko:"DeepL API"},deepl_key:{zh:"DeepL \u5BC6\u94A5",en:"DeepL Key",zh_TW:"DeepL \u91D1\u9470",ja:"DeepL \u30AD\u30FC",ko:"DeepL \uD0A4"},openai_api:{zh:"OpenAI \u63A5\u53E3",en:"OpenAI API",zh_TW:"OpenAI \u4ECB\u9762",ja:"OpenAI API",ko:"OpenAI API"},openai_key:{zh:"OpenAI \u5BC6\u94A5",en:"OpenAI Key",zh_TW:"OpenAI \u91D1\u9470",ja:"OpenAI \u30AD\u30FC",ko:"OpenAI \uD0A4"},openai_model:{zh:"OpenAI \u6A21\u578B",en:"OpenAI Model",zh_TW:"OpenAI \u6A21\u578B",ja:"OpenAI \u30E2\u30C7\u30EB",ko:"OpenAI \uBAA8\uB378"},openai_prompt:{zh:"OpenAI \u63D0\u793A\u8BCD",en:"OpenAI Prompt",zh_TW:"OpenAI \u63D0\u793A\u8A5E",ja:"OpenAI \u30D7\u30ED\u30F3\u30D7\u30C8",ko:"OpenAI \uD504\uB86C\uD504\uD2B8"},if_clear_cache:{zh:"\u662F\u5426\u6E05\u9664\u7F13\u5B58\uFF08\u9ED8\u8BA4\u7F13\u5B587\u5929\uFF09",en:"Whether clear cache (Default cache is 7 days)",zh_TW:"\u662F\u5426\u6E05\u9664\u5FEB\u53D6\uFF08\u9810\u8A2D\u5FEB\u53D67\u5929\uFF09",ja:"\u30AD\u30E3\u30C3\u30B7\u30E5\u3092\u30AF\u30EA\u30A2\u3057\u307E\u3059\u304B\uFF08\u30C7\u30D5\u30A9\u30EB\u30C8\u306E\u30AD\u30E3\u30C3\u30B7\u30E5\u671F\u9593\u306F7\u65E5\u9593\u3067\u3059\uFF09",ko:"\uCE90\uC2DC\uB97C \uC9C0\uC6B0\uC2DC\uACA0\uC2B5\uB2C8\uAE4C (\uAE30\uBCF8 \uCE90\uC2DC 7\uC77C)"},clear_cache_never:{zh:"\u4E0D\u6E05\u9664\u7F13\u5B58",en:"Never clear cache",zh_TW:"\u4E0D\u6E05\u9664\u5FEB\u53D6",ja:"\u30AD\u30E3\u30C3\u30B7\u30E5\u3092\u30AF\u30EA\u30A2\u3057\u306A\u3044",ko:"\uCE90\uC2DC \uC9C0\uC6B0\uC9C0 \uC54A\uC74C"},clear_cache_restart:{zh:"\u91CD\u542F\u6D4F\u89C8\u5668\u65F6\u6E05\u9664\u7F13\u5B58",en:"Clear cache when restarting browser",zh_TW:"\u91CD\u65B0\u555F\u52D5\u700F\u89BD\u5668\u6642\u6E05\u9664\u5FEB\u53D6",ja:"\u30D6\u30E9\u30A6\u30B6\u518D\u8D77\u52D5\u6642\u306B\u30AD\u30E3\u30C3\u30B7\u30E5\u3092\u30AF\u30EA\u30A2",ko:"\uBE0C\uB77C\uC6B0\uC800 \uC7AC\uC2DC\uC791 \uC2DC \uCE90\uC2DC \uC9C0\uC6B0\uAE30"},data_sync_type:{zh:"\u6570\u636E\u540C\u6B65\u65B9\u5F0F",en:"Data Sync Type",zh_TW:"\u8CC7\u6599\u540C\u6B65\u65B9\u5F0F",ja:"\u30C7\u30FC\u30BF\u540C\u671F\u30BF\u30A4\u30D7",ko:"\uB370\uC774\uD130 \uB3D9\uAE30\uD654 \uC720\uD615"},data_sync_url:{zh:"\u6570\u636E\u540C\u6B65\u63A5\u53E3",en:"Data Sync API",zh_TW:"\u8CC7\u6599\u540C\u6B65\u4ECB\u9762",ja:"\u30C7\u30FC\u30BF\u540C\u671FAPI",ko:"\uB370\uC774\uD130 \uB3D9\uAE30\uD654 API"},data_sync_user:{zh:"\u6570\u636E\u540C\u6B65\u8D26\u6237",en:"Data Sync User",zh_TW:"\u8CC7\u6599\u540C\u6B65\u5E33\u865F",ja:"\u30C7\u30FC\u30BF\u540C\u671F\u30A2\u30AB\u30A6\u30F3\u30C8",ko:"\uB370\uC774\uD130 \uB3D9\uAE30\uD654 \uACC4\uC815"},data_sync_key:{zh:"\u6570\u636E\u540C\u6B65\u5BC6\u94A5",en:"Data Sync Key",zh_TW:"\u8CC7\u6599\u540C\u6B65\u91D1\u9470",ja:"\u30C7\u30FC\u30BF\u540C\u671F\u30AD\u30FC",ko:"\uB370\uC774\uD130 \uB3D9\uAE30\uD654 \uD0A4"},sync_now:{zh:"\u7ACB\u5373\u540C\u6B65",en:"Sync Now",zh_TW:"\u7ACB\u5373\u540C\u6B65",ja:"\u4ECA\u3059\u3050\u540C\u671F",ko:"\uC9C0\uAE08 \uB3D9\uAE30\uD654"},sync_success:{zh:"\u540C\u6B65\u6210\u529F\uFF01",en:"Sync Success",zh_TW:"\u540C\u6B65\u6210\u529F\uFF01",ja:"\u540C\u671F\u6210\u529F\uFF01",ko:"\uB3D9\uAE30\uD654 \uC131\uACF5!"},sync_failed:{zh:"\u540C\u6B65\u5931\u8D25\uFF01",en:"Sync Error",zh_TW:"\u540C\u6B65\u5931\u6557\uFF01",ja:"\u540C\u671F\u5931\u6557\uFF01",ko:"\uB3D9\uAE30\uD654 \uC2E4\uD328!"},error_got_some_wrong:{zh:"\u62B1\u6B49\uFF0C\u51FA\u9519\u4E86\uFF01",en:"Sorry, something went wrong!",zh_TW:"\u62B1\u6B49\uFF0C\u767C\u751F\u932F\u8AA4\uFF01",ja:"\u7533\u3057\u8A33\u3042\u308A\u307E\u305B\u3093\u3001\u30A8\u30E9\u30FC\u304C\u767A\u751F\u3057\u307E\u3057\u305F\uFF01",ko:"\uC8C4\uC1A1\uD569\uB2C8\uB2E4, \uC624\uB958\uAC00 \uBC1C\uC0DD\uD588\uC2B5\uB2C8\uB2E4!"},error_sync_setting:{zh:"\u60A8\u7684\u540C\u6B65\u7C7B\u578B\u5FC5\u987B\u4E3A\u201CKISS-Worker\u201D\uFF0C\u4E14\u9700\u586B\u5199\u5B8C\u6574",en:"Your sync type must be \"KISS-Worker\" and must be filled in completely",zh_TW:"\u60A8\u7684\u540C\u6B65\u578B\u614B\u5FC5\u9808\u70BA\u300CKISS-Worker\u300D\uFF0C\u4E14\u9700\u586B\u5BEB\u5B8C\u6574\u3002",ja:"\u540C\u671F\u30BF\u30A4\u30D7\u306F\u300CKISS-Worker\u300D\u3067\u3042\u308B\u5FC5\u8981\u304C\u3042\u308A\u3001\u3059\u3079\u3066\u5165\u529B\u3059\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059\u3002",ko:"\uB3D9\uAE30\uD654 \uC720\uD615\uC740 \"KISS-Worker\"\uC5EC\uC57C \uD558\uBA70, \uBAA8\uB4E0 \uD56D\uBAA9\uC744 \uBE60\uC9D0\uC5C6\uC774 \uC785\uB825\uD574\uC57C \uD569\uB2C8\uB2E4."},click_test:{zh:"\u70B9\u51FB\u6D4B\u8BD5",en:"Click Test",zh_TW:"\u9EDE\u64CA\u6E2C\u8A66",ja:"\u30AF\u30EA\u30C3\u30AF\u3057\u3066\u30C6\u30B9\u30C8",ko:"\uD074\uB9AD \uD14C\uC2A4\uD2B8"},test_success:{zh:"\u6D4B\u8BD5\u6210\u529F",en:"Test success",zh_TW:"\u6E2C\u8A66\u6210\u529F",ja:"\u30C6\u30B9\u30C8\u6210\u529F",ko:"\uD14C\uC2A4\uD2B8 \uC131\uACF5"},test_failed:{zh:"\u6D4B\u8BD5\u5931\u8D25",en:"Test failed",zh_TW:"\u6E2C\u8A66\u5931\u6557",ja:"\u30C6\u30B9\u30C8\u5931\u6557",ko:"\uD14C\uC2A4\uD2B8 \uC2E4\uD328"},clear_all_cache_now:{zh:"\u7ACB\u5373\u6E05\u9664\u5168\u90E8\u7F13\u5B58",en:"Clear all cache now",zh_TW:"\u7ACB\u5373\u6E05\u9664\u5168\u90E8\u5FEB\u53D6",ja:"\u3059\u3079\u3066\u306E\u30AD\u30E3\u30C3\u30B7\u30E5\u3092\u4ECA\u3059\u3050\u30AF\u30EA\u30A2",ko:"\uBAA8\uB4E0 \uCE90\uC2DC \uC9C0\uAE08 \uC9C0\uC6B0\uAE30"},clear_cache:{zh:"\u6E05\u9664\u7F13\u5B58",en:"Clear Cache",zh_TW:"\u6E05\u9664\u5FEB\u53D6",ja:"\u30AD\u30E3\u30C3\u30B7\u30E5\u3092\u30AF\u30EA\u30A2",ko:"\uCE90\uC2DC \uC9C0\uC6B0\uAE30"},clear_success:{zh:"\u6E05\u9664\u6210\u529F",en:"Clear success",zh_TW:"\u6E05\u9664\u6210\u529F",ja:"\u30AF\u30EA\u30A2\u6210\u529F",ko:"\uC9C0\uC6B0\uAE30 \uC131\uACF5"},clear_failed:{zh:"\u6E05\u9664\u5931\u8D25",en:"Clear failed",zh_TW:"\u6E05\u9664\u5931\u6557",ja:"\u30AF\u30EA\u30A2\u5931\u6557",ko:"\uC9C0\uC6B0\uAE30 \uC2E4\uD328"},share:{zh:"\u5206\u4EAB",en:"Share",zh_TW:"\u5206\u4EAB",ja:"\u5171\u6709",ko:"\uACF5\uC720"},clear_all:{zh:"\u6E05\u7A7A",en:"Clear All",zh_TW:"\u6E05\u7A7A",ja:"\u3059\u3079\u3066\u30AF\u30EA\u30A2",ko:"\uBAA8\uB450 \uC9C0\uC6B0\uAE30"},help:{zh:"\u6C42\u52A9",en:"Help",zh_TW:"\u6C42\u52A9",ja:"\u30D8\u30EB\u30D7",ko:"\uB3C4\uC6C0\uB9D0"},restore_default:{zh:"\u6062\u590D\u9ED8\u8BA4",en:"Restore Default",zh_TW:"\u6062\u5FA9\u9810\u8A2D",ja:"\u30C7\u30D5\u30A9\u30EB\u30C8\u306B\u623B\u3059",ko:"\uAE30\uBCF8\uAC12 \uBCF5\uC6D0"},shortcuts_setting:{zh:"\u5FEB\u6377\u952E\u8BBE\u7F6E",en:"Shortcuts Setting",zh_TW:"\u5FEB\u6377\u9375\u8A2D\u5B9A",ja:"\u30B7\u30E7\u30FC\u30C8\u30AB\u30C3\u30C8\u8A2D\u5B9A",ko:"\uB2E8\uCD95\uD0A4 \uC124\uC815"},toggle_translate_shortcut:{zh:"\"\u5F00\u542F\u7FFB\u8BD1\"\u5FEB\u6377\u952E",en:"\"Toggle Translate\" Shortcut",zh_TW:"\u300C\u958B\u555F\u7FFB\u8B6F\u300D\u5FEB\u6377\u9375",ja:"\u300C\u7FFB\u8A33\u5207\u308A\u66FF\u3048\u300D\u30B7\u30E7\u30FC\u30C8\u30AB\u30C3\u30C8",ko:"\"\uBC88\uC5ED \uCF1C\uAE30\" \uB2E8\uCD95\uD0A4"},toggle_style_shortcut:{zh:"\"\u5207\u6362\u6837\u5F0F\"\u5FEB\u6377\u952E",en:"\"Toggle Style\" Shortcut",zh_TW:"\u300C\u5207\u63DB\u6A23\u5F0F\u300D\u5FEB\u6377\u9375",ja:"\u300C\u30B9\u30BF\u30A4\u30EB\u5207\u308A\u66FF\u3048\u300D\u30B7\u30E7\u30FC\u30C8\u30AB\u30C3\u30C8",ko:"\"\uC2A4\uD0C0\uC77C \uC804\uD658\" \uB2E8\uCD95\uD0A4"},toggle_popup_shortcut:{zh:"\"\u6253\u5F00\u5F39\u7A97\"\u5FEB\u6377\u952E",en:"\"Open Popup\" Shortcut",zh_TW:"\u300C\u958B\u555F\u5F48\u7A97\u300D\u5FEB\u6377\u9375",ja:"\u300C\u30DD\u30C3\u30D7\u30A2\u30C3\u30D7\u3092\u958B\u304F\u300D\u30B7\u30E7\u30FC\u30C8\u30AB\u30C3\u30C8",ko:"\"\uD31D\uC5C5 \uC5F4\uAE30\" \uB2E8\uCD95\uD0A4"},open_setting_shortcut:{zh:"\"\u6253\u5F00\u8BBE\u7F6E\"\u5FEB\u6377\u952E",en:"\"Open Setting\" Shortcut",zh_TW:"\u300C\u958B\u555F\u8A2D\u5B9A\u300D\u5FEB\u6377\u9375",ja:"\u300C\u8A2D\u5B9A\u3092\u958B\u304F\u300D\u30B7\u30E7\u30FC\u30C8\u30AB\u30C3\u30C8",ko:"\"\uC124\uC815 \uC5F4\uAE30\" \uB2E8\uCD95\uD0A4"},hide_fab_button:{zh:"\u9690\u85CF\u60AC\u6D6E\u6309\u94AE",en:"Hide Fab Button",zh_TW:"\u96B1\u85CF\u61F8\u6D6E\u6309\u9215",ja:"\u30D5\u30ED\u30FC\u30C6\u30A3\u30F3\u30B0\u30DC\u30BF\u30F3\u3092\u96A0\u3059",ko:"\uD50C\uB85C\uD305 \uBC84\uD2BC \uC228\uAE30\uAE30"},fab_click_action:{zh:"\u5355\u51FB\u60AC\u6D6E\u6309\u94AE\u52A8\u4F5C",en:"Single Click Fab Action",zh_TW:"\u55AE\u64CA\u61F8\u6D6E\u6309\u94AE\u52D5\u4F5C",ja:"\u30D5\u30ED\u30FC\u30C6\u30A3\u30F3\u30B0\u30DC\u30BF\u30F3\u306E\u30AF\u30EA\u30C3\u30AF\u52D5\u4F5C",ko:"\uD50C\uB85C\uD305 \uBC84\uD2BC \uD074\uB9AD \uB3D9\uC791"},fab_click_menu:{zh:"\u5F39\u51FA\u83DC\u5355",en:"Popup Menu",zh_TW:"\u5F48\u51FA\u9078\u55AE",ja:"\u30E1\u30CB\u30E5\u30FC\u3092\u958B\u304F",ko:"\uD31D\uC5C5 \uBA54\uB274"},fab_click_translate:{zh:"\u76F4\u63A5\u7FFB\u8BD1",en:"Translate",zh_TW:"\u76F4\u63A5\u7FFB\u8B6F",ja:"\u76F4\u63A5\u7FFB\u8A33",ko:"\uBC14\uB85C \uBC88\uC5ED"},hide_tran_button:{zh:"\u9690\u85CF\u7FFB\u8BD1\u6309\u94AE",en:"Hide Translate Button",zh_TW:"\u96B1\u85CF\u7FFB\u8B6F\u6309\u9215",ja:"\u7FFB\u8A33\u30DC\u30BF\u30F3\u3092\u96A0\u3059",ko:"\uBC88\uC5ED \uBC84\uD2BC \uC228\uAE30\uAE30"},hide_click_away:{zh:"\u70B9\u51FB\u5916\u90E8\u5173\u95ED\u5F39\u7A97",en:"Click outside to close the pop-up window",zh_TW:"\u9EDE\u64CA\u5916\u90E8\u95DC\u9589\u5F48\u7A97",ja:"\u5916\u90E8\u30AF\u30EA\u30C3\u30AF\u3067\u30DD\u30C3\u30D7\u30A2\u30C3\u30D7\u3092\u9589\u3058\u308B",ko:"\uBC14\uAE65\uCABD \uD074\uB9AD \uC2DC \uD31D\uC5C5 \uB2EB\uAE30"},use_simple_style:{zh:"\u4F7F\u7528\u7B80\u6D01\u754C\u9762",en:"Use a simple interface",zh_TW:"\u4F7F\u7528\u7C21\u6F54\u4ECB\u9762",ja:"\u30B7\u30F3\u30D7\u30EBUI\u3092\u4F7F\u7528",ko:"\uAC04\uB2E8\uD55C \uC778\uD130\uD398\uC774\uC2A4 \uC0AC\uC6A9"},show:{zh:"\u663E\u793A",en:"Show",zh_TW:"\u986F\u793A",ja:"\u8868\u793A",ko:"\uD45C\uC2DC"},hide:{zh:"\u9690\u85CF",en:"Hide",zh_TW:"\u96B1\u85CF",ja:"\u975E\u8868\u793A",ko:"\uC228\uAE30\uAE30"},save_rule:{zh:"\u4FDD\u5B58\u672C\u7AD9\u89C4\u5219",en:"Save this site rule",zh_TW:"\u4FDD\u5B58\u672C\u7AD9\u898F\u5247",ja:"\u3053\u306E\u30B5\u30A4\u30C8\u306E\u30EB\u30FC\u30EB\u3092\u4FDD\u5B58",ko:"\uC774 \uC0AC\uC774\uD2B8 \uADDC\uCE59 \uC800\uC7A5"},global_rule:{zh:"\u5168\u5C40\u89C4\u5219",en:"Global Rule",zh_TW:"\u5168\u57DF\u898F\u5247",ja:"\u30B0\u30ED\u30FC\u30D0\u30EB\u30EB\u30FC\u30EB",ko:"\uC804\uC5ED \uADDC\uCE59"},input_translate:{zh:"\u8F93\u5165\u6846\u7FFB\u8BD1",en:"Input Box Translation",zh_TW:"\u8F38\u5165\u6846\u7FFB\u8B6F",ja:"\u5165\u529B\u30DC\u30C3\u30AF\u30B9\u7FFB\u8A33",ko:"\uC785\uB825\uCC3D \uBC88\uC5ED"},use_input_box_translation:{zh:"\u542F\u7528\u8F93\u5165\u6846\u7FFB\u8BD1",en:"Input Box Translation",zh_TW:"\u555F\u7528\u8F38\u5165\u6846\u7FFB\u8B6F",ja:"\u5165\u529B\u30DC\u30C3\u30AF\u30B9\u7FFB\u8A33\u3092\u6709\u52B9\u306B\u3059\u308B",ko:"\uC785\uB825\uCC3D \uBC88\uC5ED \uC0AC\uC6A9"},input_selector:{zh:"\u8F93\u5165\u6846\u9009\u62E9\u5668",en:"Input Selector",zh_TW:"\u8F38\u5165\u6846\u9078\u64C7\u5668",ja:"\u5165\u529B\u30DC\u30C3\u30AF\u30B9\u30BB\u30EC\u30AF\u30BF",ko:"\uC785\uB825\uCC3D \uC120\uD0DD\uC790"},input_selector_helper:{zh:"\u7528\u4E8E\u8F93\u5165\u6846\u7FFB\u8BD1\u3002",en:"Used for input box translation.",zh_TW:"\u7528\u65BC\u8F38\u5165\u6846\u7FFB\u8B6F\u3002",ja:"\u5165\u529B\u30DC\u30C3\u30AF\u30B9\u306E\u7FFB\u8A33\u306B\u4F7F\u7528\u3057\u307E\u3059\u3002",ko:"\uC785\uB825\uCC3D \uBC88\uC5ED\uC5D0 \uC0AC\uC6A9\uB429\uB2C8\uB2E4."},trigger_trans_shortcut:{zh:"\u89E6\u53D1\u7FFB\u8BD1\u5FEB\u6377\u952E",en:"Trigger Translation Shortcut Keys",zh_TW:"\u89F8\u767C\u7FFB\u8B6F\u5FEB\u6377\u9375",ja:"\u7FFB\u8A33\u30B7\u30E7\u30FC\u30C8\u30AB\u30C3\u30C8\u30AD\u30FC",ko:"\uBC88\uC5ED \uC2E4\uD589 \uB2E8\uCD95\uD0A4"},trigger_trans_shortcut_help:{zh:"\u9ED8\u8BA4\u4E3A\u5355\u51FB\u201CAltLeft+KeyI\u201D",en:"Default is \"AltLeft+KeyI\"",zh_TW:"\u9810\u8A2D\u70BA\u6309\u4E0B\u300CAltLeft+KeyI\u300D",ja:"\u30C7\u30D5\u30A9\u30EB\u30C8\u306F\u300CAltLeft+KeyI\u300D\u3067\u3059",ko:"\uAE30\uBCF8\uAC12 \"AltLeft+KeyI\""},shortcut_press_count:{zh:"\u5FEB\u6377\u952E\u8FDE\u51FB\u6B21\u6570",en:"Shortcut Press Number",zh_TW:"\u5FEB\u6377\u9375\u9023\u64CA\u6B21\u6578",ja:"\u30B7\u30E7\u30FC\u30C8\u30AB\u30C3\u30C8\u306E\u9023\u7D9A\u30D7\u30EC\u30B9\u56DE\u6570",ko:"\uB2E8\uCD95\uD0A4 \uC5F0\uC18D \uC785\uB825 \uD69F\uC218"},combo_timeout:{zh:"\u8FDE\u51FB\u8D85\u65F6\u65F6\u95F4 (10-1000ms)",en:"Combo Timeout (10-1000ms)",zh_TW:"\u9023\u64CA\u903E\u6642 (10-1000ms)",ja:"\u9023\u7D9A\u30D7\u30EC\u30B9\u30BF\u30A4\u30E0\u30A2\u30A6\u30C8 (10-1000ms)",ko:"\uC5F0\uC18D \uC785\uB825 \uC2DC\uAC04 \uCD08\uACFC (10-1000ms)"},input_trans_start_sign:{zh:"\u7FFB\u8BD1\u8D77\u59CB\u6807\u8BC6",en:"Translation Start Sign",zh_TW:"\u7FFB\u8B6F\u8D77\u59CB\u6A19\u8A18",ja:"\u7FFB\u8A33\u958B\u59CB\u8A18\u53F7",ko:"\uBC88\uC5ED \uC2DC\uC791 \uD45C\uC2DC"},input_trans_start_sign_help:{zh:"\u6807\u8BC6\u540E\u9762\u53EF\u4EE5\u52A0\u76EE\u6807\u8BED\u8A00\u4EE3\u7801\uFF0C\u5982\uFF1A \u201C/en \u4F60\u597D\u201D\u3001\u201C/zh hello\u201D",en:"The target language code can be added after the sign, such as: \"/en \u4F60\u597D\", \"/zh hello\"",zh_TW:"\u6A19\u8A18\u5F8C\u53EF\u52A0\u4E0A\u76EE\u6A19\u8A9E\u8A00\u4EE3\u78BC\uFF0C\u4F8B\u5982\uFF1A\u300C/en \u4F60\u597D\u300D\u3001\u300C/zh hello\u300D",ja:"\u8A18\u53F7\u306E\u5F8C\u306B\u5BFE\u8C61\u8A00\u8A9E\u30B3\u30FC\u30C9\u3092\u8FFD\u52A0\u3067\u304D\u307E\u3059\u3002\u4F8B\uFF1A\u300C/en \u4F60\u597D\u300D\u3001\u300C/zh hello\u300D",ko:"\uD45C\uC2DC \uB4A4\uC5D0 \uB300\uC0C1 \uC5B8\uC5B4 \uCF54\uB4DC\uB97C \uCD94\uAC00\uD560 \uC218 \uC788\uC2B5\uB2C8\uB2E4. \uC608: \"/en \u4F60\u597D\", \"/zh hello\""},detect_lang_remote:{zh:"\u8FDC\u7A0B\u8BED\u8A00\u68C0\u6D4B",en:"Remote language detection",zh_TW:"\u9060\u7AEF\u8A9E\u8A00\u5075\u6E2C",ja:"\u30EA\u30E2\u30FC\u30C8\u8A00\u8A9E\u691C\u51FA",ko:"\uC6D0\uACA9 \uC5B8\uC5B4 \uAC10\uC9C0"},detect_lang_remote_help:{zh:"\u542F\u7528\u540E\u68C0\u6D4B\u51C6\u786E\u5EA6\u589E\u52A0\uFF0C\u4F46\u4F1A\u964D\u4F4E\u7FFB\u8BD1\u901F\u5EA6\uFF0C\u8BF7\u914C\u60C5\u5F00\u542F",en:"After enabling, the detection accuracy will increase, but it will reduce the translation speed. Please enable it as appropriate.",zh_TW:"\u555F\u7528\u5F8C\u53EF\u63D0\u5347\u5075\u6E2C\u6E96\u78BA\u5EA6\uFF0C\u4F46\u6703\u964D\u4F4E\u7FFB\u8B6F\u901F\u5EA6\uFF0C\u8ACB\u8996\u9700\u8981\u958B\u555F\u3002",ja:"\u6709\u52B9\u306B\u3059\u308B\u3068\u691C\u51FA\u7CBE\u5EA6\u304C\u5411\u4E0A\u3057\u307E\u3059\u304C\u3001\u7FFB\u8A33\u901F\u5EA6\u304C\u4F4E\u4E0B\u3059\u308B\u53EF\u80FD\u6027\u304C\u3042\u308A\u307E\u3059\u3002\u5FC5\u8981\u306B\u5FDC\u3058\u3066\u6709\u52B9\u306B\u3057\u3066\u304F\u3060\u3055\u3044\u3002",ko:"\uD65C\uC131\uD654\uD558\uBA74 \uAC10\uC9C0 \uC815\uD655\uB3C4\uAC00 \uB192\uC544\uC9C0\uC9C0\uB9CC \uBC88\uC5ED \uC18D\uB3C4\uAC00 \uB290\uB824\uC9C8 \uC218 \uC788\uC2B5\uB2C8\uB2E4. \uC801\uC808\uD788 \uD65C\uC131\uD654\uD558\uC2ED\uC2DC\uC624."},detect_lang_service:{zh:"\u8BED\u8A00\u68C0\u6D4B\u670D\u52A1",en:"Language detect service",zh_TW:"\u8A9E\u8A00\u6AA2\u6E2C\u670D\u52D9",ja:"\u8A00\u8A9E\u691C\u51FA\u30B5\u30FC\u30D3\u30B9",ko:"\uC5B8\uC5B4 \uAC10\uC9C0 \uC11C\uBE44\uC2A4"},disable:{zh:"\u7981\u7528",en:"Disable",zh_TW:"\u505C\u7528",ja:"\u7121\u52B9",ko:"\uBE44\uD65C\uC131\uD654"},enable:{zh:"\u542F\u7528",en:"Enable",zh_TW:"\u555F\u7528",ja:"\u6709\u52B9",ko:"\uD65C\uC131\uD654"},selection_translate:{zh:"\u5212\u8BCD\u7FFB\u8BD1",en:"Selection Translation",zh_TW:"\u5283\u8A5E\u7FFB\u8B6F",ja:"\u9078\u629E\u7FFB\u8A33",ko:"\uC120\uD0DD \uBC88\uC5ED"},toggle_selection_translate:{zh:"\u542F\u7528\u5212\u8BCD\u7FFB\u8BD1",en:"Use Selection Translate",zh_TW:"\u555F\u7528\u5283\u8A5E\u7FFB\u8B6F",ja:"\u9078\u629E\u7FFB\u8A33\u3092\u6709\u52B9\u306B\u3059\u308B",ko:"\uC120\uD0DD \uBC88\uC5ED \uC0AC\uC6A9"},trigger_tranbox_shortcut:{zh:"\u663E\u793A\u7FFB\u8BD1\u6846/\u7FFB\u8BD1\u9009\u4E2D\u6587\u5B57\u5FEB\u6377\u952E",en:"Open Translate Popup/Translate Selected Shortcut",zh_TW:"\u986F\u793A\u7FFB\u8B6F\u6846\uFF0F\u7FFB\u8B6F\u9078\u4E2D\u6587\u5B57\u5FEB\u6377\u9375",ja:"\u7FFB\u8A33\u30DD\u30C3\u30D7\u30A2\u30C3\u30D7\u8868\u793A/\u9078\u629E\u7FFB\u8A33\u30B7\u30E7\u30FC\u30C8\u30AB\u30C3\u30C8",ko:"\uBC88\uC5ED\uCC3D \uD45C\uC2DC/\uC120\uD0DD \uBC88\uC5ED \uB2E8\uCD95\uD0A4"},tranbtn_offset_x:{zh:"\u7FFB\u8BD1\u6309\u94AE\u504F\u79FBX\uFF08\xB1200\uFF09",en:"Translate Button Offset X (\xB1200)",zh_TW:"\u7FFB\u8B6F\u6309\u9215\u4F4D\u79FB X\uFF08\xB1200\uFF09",ja:"\u7FFB\u8A33\u30DC\u30BF\u30F3\u30AA\u30D5\u30BB\u30C3\u30C8X (\xB1200)",ko:"\uBC88\uC5ED \uBC84\uD2BC \uC624\uD504\uC14B X (\xB1200)"},tranbtn_offset_y:{zh:"\u7FFB\u8BD1\u6309\u94AE\u504F\u79FBY\uFF08\xB1200\uFF09",en:"Translate Button Offset Y (\xB1200)",zh_TW:"\u7FFB\u8B6F\u6309\u9215\u4F4D\u79FB Y\uFF08\xB1200\uFF09",ja:"\u7FFB\u8A33\u30DC\u30BF\u30F3\u30AA\u30D5\u30BB\u30C3\u30C8Y (\xB1200)",ko:"\uBC88\uC5ED \uBC84\uD2BC \uC624\uD504\uC14B Y (\xB1200)"},tranbox_offset_x:{zh:"\u7FFB\u8BD1\u6846\u504F\u79FBX\uFF08\xB1200\uFF09",en:"Translate Box Offset X (\xB1200)",zh_TW:"\u7FFB\u8B6F\u6846\u4F4D\u79FB X\uFF08\xB1200\uFF09",ja:"\u7FFB\u8A33\u30DC\u30C3\u30AF\u30B9\u30AA\u30D5\u30BB\u30C3\u30C8X (\xB1200)",ko:"\uBC88\uC5ED\uCC3D \uC624\uD504\uC14B X (\xB1200)"},tranbox_offset_y:{zh:"\u7FFB\u8BD1\u6846\u504F\u79FBY\uFF08\xB1200\uFF09",en:"Translate Box Offset Y (\xB1200)",zh_TW:"\u7FFB\u8B6F\u6846\u4F4D\u79FB Y\uFF08\xB1200\uFF09",ja:"\u7FFB\u8A33\u30DC\u30C3\u30AF\u30B9\u30AA\u30D5\u30BB\u30C3\u30C8Y (\xB1200)",ko:"\uBC88\uC5ED\uCC3D \uC624\uD504\uC14B Y (\xB1200)"},translated_text:{zh:"\u8BD1\u6587",en:"Translated Text",zh_TW:"\u8B6F\u6587",ja:"\u7FFB\u8A33\u6E08\u307F\u30C6\u30AD\u30B9\u30C8",ko:"\uBC88\uC5ED\uB41C \uD14D\uC2A4\uD2B8"},original_text:{zh:"\u539F\u6587",en:"Original Text",zh_TW:"\u539F\u6587",ja:"\u539F\u6587",ko:"\uC6D0\uBCF8 \uD14D\uC2A4\uD2B8"},favorite_words:{zh:"\u6536\u85CF\u8BCD\u6C47",en:"Favorite Words",zh_TW:"\u6536\u85CF\u8A5E\u5F59",ja:"\u304A\u6C17\u306B\u5165\u308A\u5358\u8A9E",ko:"\uC990\uACA8\uCC3E\uB294 \uB2E8\uC5B4"},touch_setting:{zh:"\u89E6\u5C4F\u8BBE\u7F6E",en:"Touch Setting",zh_TW:"\u89F8\u63A7\u8A2D\u5B9A",ja:"\u30BF\u30C3\u30C1\u8A2D\u5B9A",ko:"\uD130\uCE58 \uC124\uC815"},touch_translate_shortcut:{zh:"\u89E6\u5C4F\u7FFB\u8BD1\u5FEB\u6377\u65B9\u5F0F (\u652F\u6301\u591A\u9009)",en:"Touch Translate Shortcut (multiple supported)",zh_TW:"\u89F8\u63A7\u7FFB\u8B6F\u6377\u5F91 (\u652F\u63F4\u591A\u9078)",ja:"\u30BF\u30C3\u30C1\u7FFB\u8A33\u30B7\u30E7\u30FC\u30C8\u30AB\u30C3\u30C8 (\u8907\u6570\u9078\u629E\u53EF)",ko:"\uD130\uCE58 \uBC88\uC5ED \uB2E8\uCD95\uD0A4 (\uB2E4\uC911 \uC120\uD0DD \uC9C0\uC6D0)"},touch_tap_0:{zh:"\u7981\u7528",en:"Disable",zh_TW:"\u505C\u7528",ja:"\u7121\u52B9",ko:"\uBE44\uD65C\uC131\uD654"},touch_tap_2:{zh:"\u53CC\u6307\u8F7B\u89E6",en:"Two finger tap",zh_TW:"\u96D9\u6307\u8F15\u89F8",ja:"2\u672C\u6307\u30BF\u30C3\u30D7",ko:"\uB450 \uC190\uAC00\uB77D \uD0ED"},touch_tap_3:{zh:"\u4E09\u6307\u8F7B\u89E6",en:"Three finger tap",zh_TW:"\u4E09\u6307\u8F15\u89F8",ja:"3\u672C\u6307\u30BF\u30C3\u30D7",ko:"\uC138 \uC190\uAC00\uB77D \uD0ED"},touch_tap_4:{zh:"\u56DB\u6307\u8F7B\u89E6",en:"Four finger tap",zh_TW:"\u56DB\u6307\u8F15\u89F8",ja:"4\u672C\u6307\u30BF\u30C3\u30D7",ko:"\uB124 \uC190\uAC00\uB77D \uD0ED"},touch_tap_5:{zh:"\u5355\u6307\u53CC\u51FB",en:"Double-click",zh_TW:"\u55AE\u6307\u96D9\u64CA",ja:"\u30C0\u30D6\u30EB\u30AF\u30EA\u30C3\u30AF",ko:"\uB354\uBE14 \uD074\uB9AD"},touch_tap_6:{zh:"\u5355\u6307\u4E09\u51FB",en:"Triple-click",zh_TW:"\u55AE\u6307\u4E09\u64CA",ja:"\u30C8\u30EA\u30D7\u30EB\u30AF\u30EA\u30C3\u30AF",ko:"\uD2B8\uB9AC\uD50C \uD074\uB9AD"},touch_tap_7:{zh:"\u53CC\u6307\u53CC\u51FB",en:"Two-finger double-click",zh_TW:"\u96D9\u6307\u96D9\u64CA",ja:"2\u672C\u6307\u30C0\u30D6\u30EB\u30AF\u30EA\u30C3\u30AF",ko:"\uB450 \uC190\uAC00\uB77D \uB354\uBE14 \uD074\uB9AD"},translate_blacklist:{zh:"\u7981\u7528\u7FFB\u8BD1\u540D\u5355",en:"Translate Blacklist",zh_TW:"\u505C\u7528\u7FFB\u8B6F\u540D\u55AE",ja:"\u7FFB\u8A33\u30D6\u30E9\u30C3\u30AF\u30EA\u30B9\u30C8",ko:"\uBC88\uC5ED \uBE14\uB799\uB9AC\uC2A4\uD2B8"},disabled_orilist:{zh:"\u7981\u7528Origin\u540D\u5355",en:"Disabled Origin List",zh_TW:"\u505C\u7528 Origin \u540D\u55AE",ja:"\u7121\u52B9\u5316Origin\u30EA\u30B9\u30C8",ko:"\uBE44\uD65C\uC131\uD654\uB41C Origin \uBAA9\uB85D"},disabled_csplist:{zh:"\u7981\u7528CSP\u540D\u5355",en:"Disabled CSP List",zh_TW:"\u505C\u7528 CSP \u540D\u55AE",ja:"\u7121\u52B9\u5316CSP\u30EA\u30B9\u30C8",ko:"\uBE44\uD65C\uC131\uD654\uB41C CSP \uBAA9\uB85D"},disabled_csplist_helper:{zh:"3\u3001\u901A\u8FC7\u8C03\u6574CSP\u7B56\u7565\uFF0C\u4F7F\u5F97\u67D0\u4E9B\u9875\u9762\u80FD\u591F\u6CE8\u5165JS/CSS/Media\uFF0C\u8BF7\u8C28\u614E\u4F7F\u7528\uFF0C\u9664\u975E\u60A8\u5DF2\u77E5\u6653\u76F8\u5173\u98CE\u9669\u3002",en:"3. By adjusting the CSP policy, some pages can inject JS/CSS/Media. Please use it with caution unless you are aware of the related risks.",zh_TW:"3. \u900F\u904E\u8ABF\u6574 CSP \u653F\u7B56\uFF0C\u4F7F\u90E8\u5206\u9801\u9762\u53EF\u6CE8\u5165 JS/CSS/Media\u3002\u8ACB\u8B39\u614E\u4F7F\u7528\uFF0C\u9664\u975E\u60A8\u5DF2\u77E5\u6089\u76F8\u95DC\u98A8\u96AA\u3002",ja:"3. CSP\u30DD\u30EA\u30B7\u30FC\u3092\u8ABF\u6574\u3059\u308B\u3053\u3068\u306B\u3088\u308A\u3001\u4E00\u90E8\u306E\u30DA\u30FC\u30B8\u3067JS/CSS/Media\u306E\u6CE8\u5165\u304C\u53EF\u80FD\u306B\u306A\u308A\u307E\u3059\u3002\u95A2\u9023\u3059\u308B\u30EA\u30B9\u30AF\u3092\u627F\u77E5\u3057\u3066\u3044\u306A\u3044\u9650\u308A\u3001\u614E\u91CD\u306B\u4F7F\u7528\u3057\u3066\u304F\u3060\u3055\u3044\u3002",ko:"3. CSP \uC815\uCC45\uC744 \uC870\uC815\uD558\uC5EC \uC77C\uBD80 \uD398\uC774\uC9C0\uC5D0\uC11C JS/CSS/Media\uB97C \uC8FC\uC785\uD560 \uC218 \uC788\uC2B5\uB2C8\uB2E4. \uAD00\uB828\uB41C \uC704\uD5D8\uC744 \uC778\uC9C0\uD558\uACE0 \uC788\uB294 \uACBD\uC6B0\uAC00 \uC544\uB2C8\uB77C\uBA74 \uC8FC\uC758\uD574\uC11C \uC0AC\uC6A9\uD558\uC2ED\uC2DC\uC624."},skip_langs:{zh:"\u4E0D\u7FFB\u8BD1\u7684\u8BED\u8A00",en:"Disable Languages",zh_TW:"\u4E0D\u7FFB\u8B6F\u7684\u8A9E\u8A00",ja:"\u7FFB\u8A33\u3057\u306A\u3044\u8A00\u8A9E",ko:"\uBC88\uC5ED\uD558\uC9C0 \uC54A\uC744 \uC5B8\uC5B4"},skip_langs_helper:{zh:"\u6B64\u529F\u80FD\u4F9D\u8D56\u51C6\u786E\u7684\u8BED\u8A00\u68C0\u6D4B\uFF0C\u5EFA\u8BAE\u542F\u7528\u8FDC\u7A0B\u8BED\u8A00\u68C0\u6D4B\u3002",en:"This feature relies on accurate language detection. It is recommended to enable remote language detection.",zh_TW:"\u6B64\u529F\u80FD\u4EF0\u8CF4\u6E96\u78BA\u7684\u8A9E\u8A00\u5075\u6E2C\uFF0C\u5EFA\u8B70\u555F\u7528\u9060\u7AEF\u8A9E\u8A00\u5075\u6E2C\u3002",ja:"\u3053\u306E\u6A5F\u80FD\u306F\u6B63\u78BA\u306A\u8A00\u8A9E\u691C\u51FA\u306B\u4F9D\u5B58\u3057\u3066\u3044\u308B\u305F\u3081\u3001\u30EA\u30E2\u30FC\u30C8\u8A00\u8A9E\u691C\u51FA\u3092\u6709\u52B9\u306B\u3059\u308B\u3053\u3068\u3092\u304A\u52E7\u3081\u3057\u307E\u3059\u3002",ko:"\uC774 \uAE30\uB2A5\uC740 \uC815\uD655\uD55C \uC5B8\uC5B4 \uAC10\uC9C0\uC5D0 \uC758\uC874\uD558\uBBC0\uB85C \uC6D0\uACA9 \uC5B8\uC5B4 \uAC10\uC9C0\uB97C \uD65C\uC131\uD654\uD558\uB294 \uAC83\uC774 \uC88B\uC2B5\uB2C8\uB2E4."},context_menus:{zh:"\u53F3\u952E\u83DC\u5355",en:"Context Menus",zh_TW:"\u53F3\u9375\u9078\u55AE",ja:"\u30B3\u30F3\u30C6\u30AD\u30B9\u30C8\u30E1\u30CB\u30E5\u30FC",ko:"\uCEE8\uD14D\uC2A4\uD2B8 \uBA54\uB274"},hide_context_menus:{zh:"\u9690\u85CF\u53F3\u952E\u83DC\u5355",en:"Hide Context Menus",zh_TW:"\u96B1\u85CF\u53F3\u9375\u9078\u55AE",ja:"\u30B3\u30F3\u30C6\u30AD\u30B9\u30C8\u30E1\u30CB\u30E5\u30FC\u3092\u96A0\u3059",ko:"\uCEE8\uD14D\uC2A4\uD2B8 \uBA54\uB274 \uC228\uAE30\uAE30"},simple_context_menus:{zh:"\u7B80\u5355\u53F3\u952E\u83DC\u5355",en:"Simple_context_menus Context Menus",zh_TW:"\u7C21\u6613\u53F3\u9375\u9078\u55AE",ja:"\u30B7\u30F3\u30D7\u30EB\u30B3\u30F3\u30C6\u30AD\u30B9\u30C8\u30E1\u30CB\u30E5\u30FC",ko:"\uAC04\uB2E8\uD55C \uCEE8\uD14D\uC2A4\uD2B8 \uBA54\uB274"},secondary_context_menus:{zh:"\u4E8C\u7EA7\u53F3\u952E\u83DC\u5355",en:"Secondary Context Menus",zh_TW:"\u6B21\u7D1A\u53F3\u9375\u9078\u55AE",ja:"\u30B5\u30D6\u30B3\u30F3\u30C6\u30AD\u30B9\u30C8\u30E1\u30CB\u30E5\u30FC",ko:"\uBCF4\uC870 \uCEE8\uD14D\uC2A4\uD2B8 \uBA54\uB274"},mulkeys_help:{zh:"\u652F\u6301\u7528\u6362\u884C\u6216\u82F1\u6587\u9017\u53F7\u201C,\u201D\u5206\u9694\uFF0C\u8F6E\u8BE2\u8C03\u7528\u3002",en:"Supports polling calls separated by newlines or English commas \",\".",zh_TW:"\u652F\u63F4\u4EE5\u63DB\u884C\u6216\u82F1\u6587\u9017\u865F\u300C,\u300D\u5206\u9694\uFF0C\u8F2A\u8A62\u547C\u53EB\u3002",ja:"\u6539\u884C\u307E\u305F\u306F\u82F1\u8A9E\u306E\u30B3\u30F3\u30DE\u300C,\u300D\u3067\u533A\u5207\u3063\u3066\u30DD\u30FC\u30EA\u30F3\u30B0\u30B3\u30FC\u30EB\u3092\u30B5\u30DD\u30FC\u30C8\u3057\u307E\u3059\u3002",ko:"\uC904\uBC14\uAFC8 \uB610\uB294 \uC601\uC5B4 \uC27C\uD45C \",\"\uB85C \uAD6C\uBD84\uB41C \uD3F4\uB9C1 \uD638\uCD9C\uC744 \uC9C0\uC6D0\uD569\uB2C8\uB2E4."},translation_element_tag:{zh:"\u8BD1\u6587\u5143\u7D20\u6807\u7B7E",en:"Translation Element Tag",zh_TW:"\u8B6F\u6587\u5143\u7D20\u6A19\u7C64",ja:"\u7FFB\u8A33\u8981\u7D20\u30BF\u30B0",ko:"\uBC88\uC5ED \uC694\uC18C \uD0DC\uADF8"},show_only_translations:{zh:"\u4EC5\u663E\u793A\u8BD1\u6587",en:"Show Only Translations",zh_TW:"\u50C5\u986F\u793A\u8B6F\u6587",ja:"\u7FFB\u8A33\u306E\u307F\u8868\u793A",ko:"\uBC88\uC5ED\uB9CC \uBCF4\uAE30"},show_only_translations_help:{zh:"\u975E\u5B8C\u7F8E\u5B9E\u73B0\uFF0C\u67D0\u4E9B\u9875\u9762\u53EF\u80FD\u6709\u6837\u5F0F\u7B49\u95EE\u9898\u3002",en:"It is not a perfect implementation and some pages may have style issues.",zh_TW:"\u6B64\u70BA\u975E\u5B8C\u7F8E\u5BE6\u4F5C\uFF0C\u90E8\u5206\u9801\u9762\u53EF\u80FD\u51FA\u73FE\u6A23\u5F0F\u7B49\u554F\u984C\u3002",ja:"\u5B8C\u5168\u306A\u5B9F\u88C5\u3067\u306F\u306A\u304F\u3001\u4E00\u90E8\u306E\u30DA\u30FC\u30B8\u3067\u30B9\u30BF\u30A4\u30EB\u306E\u554F\u984C\u304C\u767A\u751F\u3059\u308B\u53EF\u80FD\u6027\u304C\u3042\u308A\u307E\u3059\u3002",ko:"\uC644\uBCBD\uD55C \uAD6C\uD604\uC774 \uC544\uB2C8\uBA70 \uC77C\uBD80 \uD398\uC774\uC9C0\uC5D0\uC11C \uC2A4\uD0C0\uC77C \uBB38\uC81C\uAC00 \uBC1C\uC0DD\uD560 \uC218 \uC788\uC2B5\uB2C8\uB2E4."},translate_page_title:{zh:"\u662F\u5426\u7FFB\u8BD1\u9875\u9762\u6807\u9898",en:"Translate Page Title",zh_TW:"\u662F\u5426\u7FFB\u8B6F\u9801\u9762\u6A19\u984C",ja:"\u30DA\u30FC\u30B8\u30BF\u30A4\u30C8\u30EB\u3092\u7FFB\u8A33\u3059\u308B",ko:"\uD398\uC774\uC9C0 \uC81C\uBAA9 \uBC88\uC5ED"},more:{zh:"\u66F4\u591A",en:"More",zh_TW:"\u66F4\u591A",ja:"\u3082\u3063\u3068\u898B\u308B",ko:"\uB354\uBCF4\uAE30"},less:{zh:"\u66F4\u5C11",en:"Less",zh_TW:"\u66F4\u5C11",ja:"\u5C11\u306A\u304F",ko:"\uC904\uC774\uAE30"},fixer_selector:{zh:"\u7F51\u9875\u4FEE\u590D\u9009\u62E9\u5668",en:"Fixer Selector",zh_TW:"\u7DB2\u9801\u4FEE\u5FA9\u9078\u64C7\u5668",ja:"Web\u4FEE\u6B63\u30BB\u30EC\u30AF\u30BF",ko:"\uC6F9\uD398\uC774\uC9C0 \uC218\uC815 \uC120\uD0DD\uC790"},reg_niutrans:{zh:"\u83B7\u53D6\u5C0F\u725B\u7FFB\u8BD1\u5BC6\u94A5\u3010\u7B80\u7EA6\u7FFB\u8BD1\u4E13\u5C5E\u65B0\u7528\u6237\u6CE8\u518C\u8D60\u9001300\u4E07\u5B57\u7B26\u3011",en:"Get NiuTrans APIKey [KISS Translator Exclusive New User Registration Free 3 Million Characters]",zh_TW:"\u53D6\u5F97\u5C0F\u725B\u7FFB\u8B6F\u91D1\u9470\u3010\u7C21\u7D04\u7FFB\u8B6F\u5C08\u5C6C\u65B0\u7528\u6236\u8A3B\u518A\u8D08\u9001 300 \u842C\u5B57\u5143\u3011",ja:"NiuTrans API\u30AD\u30FC\u3092\u53D6\u5F97 [KISS\u7FFB\u8A33 \u5C02\u7528 \u65B0\u898F\u30E6\u30FC\u30B6\u30FC\u767B\u9332\u3067300\u4E07\u6587\u5B57\u7121\u6599]",ko:"NiuTrans API \uD0A4 \uBC1B\uAE30 [KISS \uBC88\uC5ED\uAE30 \uC2E0\uADDC \uC0AC\uC6A9\uC790 \uB4F1\uB85D \uC2DC 300\uB9CC \uC790 \uBB34\uB8CC \uC81C\uACF5]"},trigger_mode:{zh:"\u89E6\u53D1\u65B9\u5F0F",en:"Trigger Mode",zh_TW:"\u89F8\u767C\u65B9\u5F0F",ja:"\u30C8\u30EA\u30AC\u30FC\u30E2\u30FC\u30C9",ko:"\uD2B8\uB9AC\uAC70 \uBAA8\uB4DC"},trigger_click:{zh:"\u70B9\u51FB\u89E6\u53D1",en:"Click Trigger",zh_TW:"\u9EDE\u64CA\u89F8\u767C",ja:"\u30AF\u30EA\u30C3\u30AF\u30C8\u30EA\u30AC\u30FC",ko:"\uD074\uB9AD \uD2B8\uB9AC\uAC70"},trigger_hover:{zh:"\u9F20\u6807\u60AC\u505C\u89E6\u53D1",en:"Hover Trigger",zh_TW:"\u6ED1\u9F20\u61F8\u505C\u89F8\u767C",ja:"\u30DB\u30D0\u30FC\u30C8\u30EA\u30AC\u30FC",ko:"\uD638\uBC84 \uD2B8\uB9AC\uAC70"},trigger_select:{zh:"\u9009\u4E2D\u89E6\u53D1",en:"Select Trigger",zh_TW:"\u9078\u53D6\u89F8\u767C",ja:"\u9078\u629E\u30C8\u30EA\u30AC\u30FC",ko:"\uC120\uD0DD \uD2B8\uB9AC\uAC70"},extend_styles:{zh:"\u9644\u52A0\u6837\u5F0F",en:"Extend Styles",zh_TW:"\u9644\u52A0\u6A23\u5F0F",ja:"\u62E1\u5F35\u30B9\u30BF\u30A4\u30EB",ko:"\uD655\uC7A5 \uC2A4\uD0C0\uC77C"},custom_option:{zh:"\u81EA\u5B9A\u4E49\u9009\u9879",en:"Custom Option",zh_TW:"\u81EA\u8A02\u9078\u9805",ja:"\u30AB\u30B9\u30BF\u30E0\u30AA\u30D7\u30B7\u30E7\u30F3",ko:"\uC0AC\uC6A9\uC790 \uC9C0\uC815 \uC635\uC158"},translate_selected_text:{zh:"\u7FFB\u8BD1\u9009\u4E2D\u6587\u5B57",en:"Translate Selected Text",zh_TW:"\u7FFB\u8B6F\u9078\u53D6\u6587\u5B57",ja:"\u9078\u629E\u3057\u305F\u30C6\u30AD\u30B9\u30C8\u3092\u7FFB\u8A33",ko:"\uC120\uD0DD\uD55C \uD14D\uC2A4\uD2B8 \uBC88\uC5ED"},toggle_style:{zh:"\u5207\u6362\u6837\u5F0F",en:"Toggle Style",zh_TW:"\u5207\u63DB\u6A23\u5F0F",ja:"\u30B9\u30BF\u30A4\u30EB\u3092\u5207\u308A\u66FF\u3048",ko:"\uC2A4\uD0C0\uC77C \uC804\uD658"},open_menu:{zh:"\u6253\u5F00\u5F39\u7A97\u83DC\u5355",en:"Open Popup Menu",zh_TW:"\u958B\u555F\u5F48\u7A97\u9078\u55AE",ja:"\u30DD\u30C3\u30D7\u30A2\u30C3\u30D7\u30E1\u30CB\u30E5\u30FC\u3092\u958B\u304F",ko:"\uD31D\uC5C5 \uBA54\uB274 \uC5F4\uAE30"},open_setting:{zh:"\u6253\u5F00\u8BBE\u7F6E",en:"Open Setting",zh_TW:"\u958B\u555F\u8A2D\u5B9A",ja:"\u8A2D\u5B9A\u3092\u958B\u304F",ko:"\uC124\uC815 \uC5F4\uAE30"},follow_selection:{zh:"\u7FFB\u8BD1\u6846\u8DDF\u968F\u9009\u4E2D\u6587\u672C",en:"Transbox Follow Selection",zh_TW:"\u7FFB\u8B6F\u6846\u8DDF\u96A8\u9078\u53D6\u6587\u5B57",ja:"\u7FFB\u8A33\u30DC\u30C3\u30AF\u30B9\u3092\u9078\u629E\u7BC4\u56F2\u306B\u8FFD\u5F93",ko:"\uBC88\uC5ED \uC0C1\uC790\uAC00 \uC120\uD0DD \uD56D\uBAA9 \uB530\uB77C\uAC00\uAE30"},tranbox_auto_height:{zh:"\u7FFB\u8BD1\u6846\u81EA\u9002\u5E94\u9AD8\u5EA6",en:"Translation box adaptive height",zh_TW:"\u7FFB\u8B6F\u6846\u81EA\u9069\u61C9\u9AD8\u5EA6",ja:"\u7FFB\u8A33\u30DC\u30C3\u30AF\u30B9\u306E\u9AD8\u3055\u81EA\u52D5\u8ABF\u6574",ko:"\uBC88\uC5ED \uC0C1\uC790 \uB192\uC774 \uC790\uB3D9 \uC870\uC808"},translate_start_hook:{zh:"\u7FFB\u8BD1\u5F00\u59CB\u94A9\u5B50\u51FD\u6570",en:"Translate Start Hook",zh_TW:"\u7FFB\u8B6F\u958B\u59CB Hook",ja:"\u7FFB\u8A33\u958B\u59CB\u30D5\u30C3\u30AF",ko:"\uBC88\uC5ED \uC2DC\uC791 \uD6C4\uD06C"},translate_start_hook_helper:{zh:"\u7FFB\u8BD1\u524D\u65F6\u8FD0\u884C\uFF0C\u5165\u53C2\u4E3A\uFF1A {text,\n fromLang,\n toLang,\n apiSetting,\n docInfo,\n glossary,}",en:"Run before translation, input parameters are: {text,\n fromLang,\n toLang,\n apiSetting,\n docInfo,\n glossary,}",zh_TW:"\u7FFB\u8B6F\u524D\u6642\u904B\u884C\uFF0C\u5165\u53C3\u70BA\uFF1A {text,\n fromLang,\n toLang,\n apiSetting,\n docInfo,\n glossary,}",ja:"\u7FFB\u8A33\u524D\u306B\u5B9F\u884C\u3001\u5165\u529B\u30D1\u30E9\u30E1\u30FC\u30BF: {text,\n fromLang,\n toLang,\n apiSetting,\n docInfo,\n glossary,}",ko:"\uBC88\uC5ED \uC804 \uC2E4\uD589, \uC785\uB825 \uB9E4\uAC1C\uBCC0\uC218: {text,\n fromLang,\n toLang,\n apiSetting,\n docInfo,\n glossary,}"},translate_end_hook:{zh:"\u7FFB\u8BD1\u5B8C\u6210\u94A9\u5B50\u51FD\u6570",en:"Translate End Hook",zh_TW:"\u7FFB\u8B6F\u5B8C\u6210 Hook",ja:"\u7FFB\u8A33\u5B8C\u4E86\u30D5\u30C3\u30AF",ko:"\uBC88\uC5ED \uC644\uB8CC \uD6C4\uD06C"},translate_end_hook_helper:{zh:"\u7FFB\u8BD1\u5B8C\u6210\u65F6\u8FD0\u884C\uFF0C\u5165\u53C2\u4E3A\uFF1A ({hostNode, parentNode, nodes, wrapperNode, innerNode})",en:"Run when translation is complete, input parameters are: ({hostNode, parentNode, nodes, wrapperNode, innerNode})",zh_TW:"\u7FFB\u8B6F\u5B8C\u6210\u6642\u904B\u884C\uFF0C\u5165\u53C3\u70BA\uFF1A ({hostNode, parentNode, nodes, wrapperNode, innerNode})",ja:"\u7FFB\u8A33\u5B8C\u4E86\u6642\u306B\u5B9F\u884C\u3001\u5165\u529B\u30D1\u30E9\u30E1\u30FC\u30BF: ({hostNode, parentNode, nodes, wrapperNode, innerNode})",ko:"\uBC88\uC5ED \uC644\uB8CC \uC2DC \uC2E4\uD589, \uC785\uB825 \uB9E4\uAC1C\uBCC0\uC218: ({hostNode, parentNode, nodes, wrapperNode, innerNode})"},translate_remove_hook:{zh:"\u7FFB\u8BD1\u79FB\u9664\u94A9\u5B50\u51FD\u6570",en:"Translate Removed Hook",zh_TW:"\u7FFB\u8B6F\u79FB\u9664 Hook",ja:"\u7FFB\u8A33\u524A\u9664\u30D5\u30C3\u30AF",ko:"\uBC88\uC5ED \uC81C\uAC70 \uD6C4\uD06C"},translate_remove_hook_helper:{zh:"\u7FFB\u8BD1\u79FB\u9664\u65F6\u8FD0\u884C\uFF0C\u5165\u53C2\u4E3A\uFF1A \u7FFB\u8BD1\u8282\u70B9\u3002",en:"Run when translation is removed, the input parameters are: translation node.",zh_TW:"\u79FB\u9664\u7FFB\u8B6F\u6642\u57F7\u884C\uFF0C\u5165\u53C3\u70BA\uFF1A\u7FFB\u8B6F\u7BC0\u9EDE\u3002",ja:"\u7FFB\u8A33\u524A\u9664\u6642\u306B\u5B9F\u884C\u3001\u5165\u529B\u30D1\u30E9\u30E1\u30FC\u30BF: \u7FFB\u8A33\u30CE\u30FC\u30C9\u3002",ko:"\uBC88\uC5ED \uC81C\uAC70 \uC2DC \uC2E4\uD589, \uC785\uB825 \uB9E4\uAC1C\uBCC0\uC218: \uBC88\uC5ED \uB178\uB4DC."},english_dict:{zh:"\u82F1\u6587\u8BCD\u5178",en:"English Dictionary",zh_TW:"\u82F1\u6587\u5B57\u5178",ja:"\u82F1\u8A9E\u8F9E\u66F8",ko:"\uC601\uC5B4 \uC0AC\uC804"},english_suggest:{zh:"\u82F1\u6587\u5EFA\u8BAE",en:"English Suggest",zh_TW:"\u82F1\u6587\u5EFA\u8B70",ja:"\u82F1\u8A9E\u30B5\u30B8\u30A7\u30B9\u30C8",ko:"\uC601\uC5B4 \uC81C\uC548"},api_name:{zh:"\u63A5\u53E3\u540D\u79F0",en:"API Name",zh_TW:"\u4ECB\u9762\u540D\u7A31",ja:"API\u540D",ko:"API \uC774\uB984"},is_disabled:{zh:"\u662F\u5426\u7981\u7528",en:"Is Disabled",zh_TW:"\u662F\u5426\u505C\u7528",ja:"\u7121\u52B9\u306B\u3059\u308B",ko:"\uBE44\uD65C\uC131\uD654 \uC5EC\uBD80"},translate_selected:{zh:"\u662F\u5426\u542F\u7528\u5212\u8BCD\u7FFB\u8BD1",en:"If translate selected",zh_TW:"\u662F\u5426\u555F\u7528\u5283\u8A5E\u7FFB\u8B6F",ja:"\u9078\u629E\u7BC4\u56F2\u306E\u7FFB\u8A33\u3092\u6709\u52B9\u306B\u3059\u308B",ko:"\uC120\uD0DD \uBC88\uC5ED \uC0AC\uC6A9 \uC5EC\uBD80"},use_batch_fetch:{zh:"\u662F\u5426\u805A\u5408\u53D1\u9001\u7FFB\u8BD1\u8BF7\u6C42",en:"Whether to aggregate and send translation requests",zh_TW:"\u662F\u5426\u805A\u5408\u767C\u9001\u7FFB\u8B6F\u8ACB\u6C42",ja:"\u7FFB\u8A33\u30EA\u30AF\u30A8\u30B9\u30C8\u3092\u307E\u3068\u3081\u3066\u9001\u4FE1",ko:"\uBC88\uC5ED \uC694\uCCAD \uC77C\uAD04 \uC804\uC1A1 \uC5EC\uBD80"},batch_interval:{zh:"\u805A\u5408\u8BF7\u6C42\u7B49\u5F85\u65F6\u95F4(100-10000)",en:"Aggregation request waiting time (100-10000)",zh_TW:"\u805A\u5408\u8ACB\u6C42\u7B49\u5F85\u6642\u9593(100-10000)",ja:"\u4E00\u62EC\u30EA\u30AF\u30A8\u30B9\u30C8\u306E\u5F85\u6A5F\u6642\u9593(100-10000)",ko:"\uC77C\uAD04 \uC694\uCCAD \uB300\uAE30 \uC2DC\uAC04(100-10000)"},batch_size:{zh:"\u805A\u5408\u8BF7\u6C42\u6700\u5927\u6BB5\u843D\u6570(1-100)",en:"Maximum number of paragraphs in an aggregation request (1-100)",zh_TW:"\u805A\u5408\u8ACB\u6C42\u6700\u5927\u6BB5\u843D\u6578(1-100)",ja:"\u4E00\u62EC\u30EA\u30AF\u30A8\u30B9\u30C8\u306E\u6700\u5927\u6BB5\u843D\u6570(1-100)",ko:"\uC77C\uAD04 \uC694\uCCAD \uCD5C\uB300 \uB2E8\uB77D \uC218(1-100)"},batch_length:{zh:"\u805A\u5408\u8BF7\u6C42\u6700\u5927\u6587\u672C\u957F\u5EA6(1000-100000)",en:"Maximum text length for aggregation requests (1000-100000)",zh_TW:"\u805A\u5408\u8ACB\u6C42\u6700\u5927\u6587\u5B57\u9577\u5EA6(1000-100000)",ja:"\u4E00\u62EC\u30EA\u30AF\u30A8\u30B9\u30C8\u306E\u6700\u5927\u30C6\u30AD\u30B9\u30C8\u9577(1000-100000)",ko:"\uC77C\uAD04 \uC694\uCCAD \uCD5C\uB300 \uD14D\uC2A4\uD2B8 \uAE38\uC774(1000-100000)"},use_context:{zh:"\u662F\u5426\u542F\u7528\u667A\u80FD\u4E0A\u4E0B\u6587",en:"Whether to enable AI context",zh_TW:"\u662F\u5426\u555F\u7528\u667A\u6167\u4E0A\u4E0B\u6587",ja:"AI\u30B3\u30F3\u30C6\u30AD\u30B9\u30C8\u3092\u6709\u52B9\u306B\u3059\u308B",ko:"AI \uCEE8\uD14D\uC2A4\uD2B8 \uD65C\uC131\uD654 \uC5EC\uBD80"},context_size:{zh:"\u4E0A\u4E0B\u6587\u4F1A\u8BDD\u6570\u91CF(1-20)",en:"Number of context sessions(1-20)",zh_TW:"\u4E0A\u4E0B\u6587\u6703\u8A71\u6578\u91CF(1-20)",ja:"\u30B3\u30F3\u30C6\u30AD\u30B9\u30C8\u30BB\u30C3\u30B7\u30E7\u30F3\u6570(1-20)",ko:"\uCEE8\uD14D\uC2A4\uD2B8 \uC138\uC158 \uC218(1-20)"},auto_scan_page:{zh:"\u81EA\u52A8\u626B\u63CF\u9875\u9762",en:"Auto scan page",zh_TW:"\u81EA\u52D5\u6383\u63CF\u9801\u9762",ja:"\u30DA\u30FC\u30B8\u3092\u81EA\u52D5\u30B9\u30AD\u30E3\u30F3",ko:"\uD398\uC774\uC9C0 \uC790\uB3D9 \uC2A4\uCE94"},has_rich_text:{zh:"\u542F\u7528\u5BCC\u6587\u672C\u7FFB\u8BD1",en:"Enable rich text translation",zh_TW:"\u555F\u7528\u5BCC\u6587\u672C\u7FFB\u8B6F",ja:"\u30EA\u30C3\u30C1\u30C6\u30AD\u30B9\u30C8\u7FFB\u8A33\u3092\u6709\u52B9\u306B\u3059\u308B",ko:"\uB9AC\uCE58 \uD14D\uC2A4\uD2B8 \uBC88\uC5ED \uD65C\uC131\uD654"},has_shadowroot:{zh:"\u626B\u63CFShadowroot",en:"Scan Shadowroot",zh_TW:"\u6383\u63CFShadowroot",ja:"Shadowroot\u3092\u30B9\u30AD\u30E3\u30F3",ko:"Shadowroot \uC2A4\uCE94"},mousehover_translate:{zh:"\u9F20\u6807\u60AC\u505C\u7FFB\u8BD1",en:"Mouseover Translation",zh_TW:"\u6ED1\u9F20\u61F8\u505C\u7FFB\u8B6F",ja:"\u30DE\u30A6\u30B9\u30AA\u30FC\u30D0\u30FC\u7FFB\u8A33",ko:"\uB9C8\uC6B0\uC2A4\uC624\uBC84 \uBC88\uC5ED"},use_mousehover_translation:{zh:"\u542F\u7528\u9F20\u6807\u60AC\u505C\u7FFB\u8BD1",en:"Enable mouseover translation",zh_TW:"\u555F\u7528\u6ED1\u9F20\u61F8\u505C\u7FFB\u8B6F",ja:"\u30DE\u30A6\u30B9\u30AA\u30FC\u30D0\u30FC\u7FFB\u8A33\u3092\u6709\u52B9\u306B\u3059\u308B",ko:"\uB9C8\uC6B0\uC2A4\uC624\uBC84 \uBC88\uC5ED \uD65C\uC131\uD654"},selected_translation_alert:{zh:"\u5212\u8BCD\u7FFB\u8BD1\u7684\u5F00\u542F\u548C\u5173\u95ED\u8BF7\u5230\u201C\u89C4\u5219\u8BBE\u7F6E\u201D\u91CC\u9762\u8BBE\u7F6E\u3002",en:"To turn selected translation on or off, please go to \"Rule Settings\".",zh_TW:"\u5283\u8A5E\u7FFB\u8B6F\u7684\u958B\u555F\u548C\u95DC\u9589\u8ACB\u5230\u300C\u898F\u5247\u8A2D\u5B9A\u300D\u88E1\u9762\u8A2D\u5B9A\u3002",ja:"\u9078\u629E\u7FFB\u8A33\u306E\u30AA\u30F3/\u30AA\u30D5\u306F\u300C\u30EB\u30FC\u30EB\u8A2D\u5B9A\u300D\u3067\u884C\u3063\u3066\u304F\u3060\u3055\u3044\u3002",ko:"\uC120\uD0DD \uBC88\uC5ED \uD65C\uC131\uD654/\uBE44\uD65C\uC131\uD654\uB294 \"\uADDC\uCE59 \uC124\uC815\"\uC5D0\uC11C \uD558\uC2ED\uC2DC\uC624."},mousehover_key_help:{zh:"\u5F53\u5FEB\u6377\u952E\u7F6E\u7A7A\u65F6\u8868\u793A\u9F20\u6807\u61F8\u505C\u76F4\u63A5\u7FFB\u8BD1",en:"When the shortcut key is empty, it means that the mouse hovers to translate directly",zh_TW:"\u7576\u5FEB\u6377\u9375\u7F6E\u7A7A\u6642\u8868\u793A\u6ED1\u9F20\u61F8\u505C\u76F4\u63A5\u7FFB\u8B6F",ja:"\u30B7\u30E7\u30FC\u30C8\u30AB\u30C3\u30C8\u30AD\u30FC\u304C\u7A7A\u306E\u5834\u5408\u3001\u30DE\u30A6\u30B9\u30AA\u30FC\u30D0\u30FC\u3067\u76F4\u63A5\u7FFB\u8A33\u3057\u307E\u3059",ko:"\uB2E8\uCD95\uD0A4\uAC00 \uBE44\uC5B4 \uC788\uC73C\uBA74 \uB9C8\uC6B0\uC2A4\uC624\uBC84 \uC2DC \uBC14\uB85C \uBC88\uC5ED\uD569\uB2C8\uB2E4"},autoscan_alt:{zh:"\u81EA\u52A8\u626B\u63CF",en:"Auto Scan",zh_TW:"\u81EA\u52D5\u6383\u63CF",ja:"\u81EA\u52D5\u30B9\u30AD\u30E3\u30F3",ko:"\uC790\uB3D9 \uC2A4\uCE94"},shadowroot_alt:{zh:"ShadowRoot",en:"ShadowRoot",zh_TW:"ShadowRoot",ja:"ShadowRoot",ko:"ShadowRoot"},richtext_alt:{zh:"\u4FDD\u7559\u5BCC\u6587\u672C",en:"Rich Text",zh_TW:"\u4FDD\u7559\u5BCC\u6587\u672C",ja:"\u30EA\u30C3\u30C1\u30C6\u30AD\u30B9\u30C8",ko:"\uB9AC\uCE58 \uD14D\uC2A4\uD2B8"},transonly_alt:{zh:"\u9690\u85CF\u539F\u6587",en:"Hide Original",zh_TW:"\u96B1\u85CF\u539F\u6587",ja:"\u539F\u6587\u3092\u96A0\u3059",ko:"\uC6D0\uBB38 \uC228\uAE30\uAE30"},confirm_title:{zh:"\u786E\u8BA4",en:"Confirm",zh_TW:"\u78BA\u8A8D",ja:"\u78BA\u8A8D",ko:"\uD655\uC778"},confirm_message:{zh:"\u786E\u5B9A\u64CD\u4F5C\u5417\uFF1F",en:"Are you sure you want to proceed?",zh_TW:"\u78BA\u5B9A\u64CD\u4F5C\u55CE\uFF1F",ja:"\u64CD\u4F5C\u3092\u7D9A\u884C\u3057\u307E\u3059\u304B\uFF1F",ko:"\uACC4\uC18D\uD558\uC2DC\uACA0\uC2B5\uB2C8\uAE4C?"},confirm_action:{zh:"\u786E\u5B9A",en:"Confirm",zh_TW:"\u78BA\u5B9A",ja:"\u78BA\u8A8D",ko:"\uD655\uC778"},cancel_action:{zh:"\u53D6\u6D88",en:"Cancel",zh_TW:"\u53D6\u6D88",ja:"\u30AD\u30E3\u30F3\u30BB\u30EB",ko:"\uCDE8\uC18C"},pls_press_shortcut:{zh:"\u8BF7\u6309\u4E0B\u5FEB\u6377\u952E\u7EC4\u5408",en:"Please press the shortcut key combination",zh_TW:"\u8ACB\u6309\u4E0B\u5FEB\u901F\u9375\u7D44\u5408",ja:"\u30B7\u30E7\u30FC\u30C8\u30AB\u30C3\u30C8\u30AD\u30FC\u3092\u62BC\u3057\u3066\u304F\u3060\u3055\u3044",ko:"\uB2E8\uCD95\uD0A4 \uC870\uD569\uC744 \uB204\uB974\uC138\uC694"},load_setting_err:{zh:"\u6570\u636E\u52A0\u8F7D\u51FA\u9519\uFF0C\u8BF7\u5237\u65B0\u9875\u9762\u6216\u5378\u8F7D\u540E\u91CD\u65B0\u5B89\u88C5\u3002",en:"Please press the shortcut key combination",// 注意:这里的英文和繁体是用户上次错误的拷贝 +zh_TW:"\u8ACB\u6309\u4E0B\u5FEB\u901F\u9375\u7D44\u5408",// 注意:这里的英文和繁体是用户上次错误的拷贝 +ja:"\u30C7\u30FC\u30BF\u8AAD\u307F\u8FBC\u307F\u30A8\u30E9\u30FC\u3002\u30DA\u30FC\u30B8\u3092\u66F4\u65B0\u3059\u308B\u304B\u3001\u30A2\u30F3\u30A4\u30F3\u30B9\u30C8\u30FC\u30EB\u5F8C\u306B\u518D\u30A4\u30F3\u30B9\u30C8\u30FC\u30EB\u3057\u3066\u304F\u3060\u3055\u3044\u3002",// 翻译自 "zh" +ko:"\uB370\uC774\uD130 \uB85C\uB529 \uC624\uB958. \uD398\uC774\uC9C0\uB97C \uC0C8\uB85C \uACE0\uCE58\uAC70\uB098 \uC81C\uAC70 \uD6C4 \uB2E4\uC2DC \uC124\uCE58\uD558\uC138\uC694."// 翻译自 "zh" +},translation_style:{zh:"\u7FFB\u8BD1\u98CE\u683C",en:"Translation style",zh_TW:"\u7FFB\u8B6F\u98A8\u683C",ja:"\u7FFB\u8A33\u30B9\u30BF\u30A4\u30EB",ko:"\uBC88\uC5ED \uC2A4\uD0C0\uC77C"},placeholder:{zh:"\u5360\u4F4D\u7B26",en:"Placeholder",zh_TW:"\u4F54\u4F4D\u7B26",ja:"\u30D7\u30EC\u30FC\u30B9\u30DB\u30EB\u30C0\u30FC",ko:"\uD50C\uB808\uC774\uC2A4\uD640\uB354"},tag_name:{zh:"\u5360\u4F4D\u6807\u7B7E\u540D",en:"Placeholder tag name",zh_TW:"\u4F54\u4F4D\u6A19\u540D",ja:"\u30D7\u30EC\u30FC\u30B9\u30DB\u30EB\u30C0\u30FC\u30BF\u30B0\u540D",ko:"\uD50C\uB808\uC774\uC2A4\uD640\uB354 \uD0DC\uADF8 \uC774\uB984"},system_prompt_helper:{zh:"\u5728\u672A\u5B8C\u5168\u7406\u89E3\u9ED8\u8BA4Prompt\u7684\u60C5\u51B5\u4E0B\uFF0C\u8BF7\u52FF\u968F\u610F\u4FEE\u6539\uFF0C\u5426\u5219\u53EF\u80FD\u65E0\u6CD5\u5DE5\u4F5C\u3002",en:"Do not modify the default prompt without fully understanding it, otherwise it may not work.",zh_TW:"\u5728\u672A\u5B8C\u5168\u7406\u89E3\u9810\u8A2DPrompt\u7684\u60C5\u6CC1\u4E0B\uFF0C\u8ACB\u52FF\u96A8\u610F\u4FEE\u6539\uFF0C\u5426\u5247\u53EF\u80FD\u7121\u6CD5\u904B\u4F5C\u3002",ja:"\u30C7\u30D5\u30A9\u30EB\u30C8\u306E\u30D7\u30ED\u30F3\u30D7\u30C8\u3092\u5B8C\u5168\u306B\u7406\u89E3\u305B\u305A\u306B\u5909\u66F4\u3057\u306A\u3044\u3067\u304F\u3060\u3055\u3044\u3002\u52D5\u4F5C\u3057\u306A\u304F\u306A\u308B\u53EF\u80FD\u6027\u304C\u3042\u308A\u307E\u3059\u3002",ko:"\uAE30\uBCF8 \uD504\uB86C\uD504\uD2B8\uB97C \uC644\uC804\uD788 \uC774\uD574\uD558\uC9C0 \uC54A\uACE0 \uC218\uC815\uD558\uC9C0 \uB9C8\uC2ED\uC2DC\uC624. \uC791\uB3D9\uD558\uC9C0 \uC54A\uC744 \uC218 \uC788\uC2B5\uB2C8\uB2E4."},if_pre_init:{zh:"\u662F\u5426\u9884\u521D\u59CB\u5316",en:"Whether to pre-initialize",zh_TW:"\u662F\u5426\u9810\u521D\u59CB\u5316",ja:"\u4E8B\u524D\u521D\u671F\u5316\u3059\u308B\u304B",ko:"\uC0AC\uC804 \uCD08\uAE30\uD654 \uC5EC\uBD80"},export_old:{zh:"\u5BFC\u51FA\u65E7\u7248",en:"Export old version",zh_TW:"\u532F\u51FA\u820A\u7248",ja:"\u65E7\u30D0\u30FC\u30B8\u30E7\u30F3\u3092\u30A8\u30AF\u30B9\u30DD\u30FC\u30C8",ko:"\uC774\uC804 \uBC84\uC804 \uB0B4\uBCF4\uB0B4\uAE30"},favorite_words_helper:{zh:"\u5BFC\u5165\u8BCD\u6C47\u8BF7\u4F7F\u7528txt\u6587\u4EF6\uFF0C\u6BCF\u4E00\u884C\u4E00\u4E2A\u5355\u8BCD\u3002",en:"To import vocabulary, please use a txt file with one word per line.",zh_TW:"\u532F\u5165\u8A5E\u5F59\u8ACB\u4F7F\u7528txt\u6587\u4EF6\uFF0C\u6BCF\u4E00\u884C\u4E00\u500B\u55AE\u5B57\u3002",ja:"\u5358\u8A9E\u3092\u30A4\u30F3\u30DD\u30FC\u30C8\u3059\u308B\u306B\u306F\u30011\u884C\u306B1\u5358\u8A9E\u305A\u3064\u8A18\u8FF0\u3057\u305Ftxt\u30D5\u30A1\u30A4\u30EB\u3092\u4F7F\u7528\u3057\u3066\u304F\u3060\u3055\u3044\u3002",ko:"\uB2E8\uC5B4\uB97C \uAC00\uC838\uC624\uB824\uBA74 \uD55C \uC904\uC5D0 \uD55C \uB2E8\uC5B4\uC529 .txt \uD30C\uC77C\uC744 \uC0AC\uC6A9\uD558\uC138\uC694."},btn_tip_click_away:{zh:"\u5931\u7126\u9690\u85CF/\u663E\u793A",en:"Loss of focus hide/show",zh_TW:"\u5931\u7126\u96B1\u85CF/\u986F\u793A",ja:"\u30D5\u30A9\u30FC\u30AB\u30B9\u3092\u5931\u3063\u305F\u6642\u306B\u975E\u8868\u793A/\u8868\u793A",ko:"\uD3EC\uCEE4\uC2A4 \uC783\uC744 \uC2DC \uC228\uAE30\uAE30/\uD45C\uC2DC"},btn_tip_follow_selection:{zh:"\u8DDF\u968F/\u56FA\u5B9A\u6A21\u5F0F",en:"Follow/Fixed Mode",zh_TW:"\u8DDF\u96A8/\u56FA\u5B9A\u6A21\u5F0F",ja:"\u8FFD\u5F93/\u56FA\u5B9A\u30E2\u30FC\u30C9",ko:"\uB530\uB77C\uAC00\uAE30/\uACE0\uC815 \uBAA8\uB4DC"},btn_tip_simple_style:{zh:"\u8FF7\u4F60/\u5E38\u89C4\u6A21\u5F0F",en:"Mini/Regular Mode",zh_TW:"\u8FF7\u4F60/\u5E38\u898F\u6A21\u5F0F",ja:"\u30DF\u30CB/\u901A\u5E38\u30E2\u30FC\u30C9",ko:"\uBBF8\uB2C8/\uC77C\uBC18 \uBAA8\uB4DC"},api_placeholder:{zh:"\u5360\u4F4D\u7B26",en:"Placeholder",zh_TW:"\u4F54\u4F4D\u7B26",ja:"\u30D7\u30EC\u30FC\u30B9\u30DB\u30EB\u30C0\u30FC",ko:"\uD50C\uB808\uC774\uC2A4\uD640\uB354"},api_placetag:{zh:"\u5360\u4F4D\u6807\u7B7E",en:"Placeholder tags",zh_TW:"\u4F54\u4F4D\u6A19",ja:"\u30D7\u30EC\u30FC\u30B9\u30DB\u30EB\u30C0\u30BF\u30B0",ko:"\uD50C\uB808\uC774\uC2A4\uD640\uB354 \uD0DC\uADF8"},detected_lang:{zh:"\u8BED\u8A00\u68C0\u6D4B",en:"Language detection",zh_TW:"\u8A9E\u8A00\u5075\u6E2C",ja:"\u8A00\u8A9E\u691C\u51FA",ko:"\uC5B8\uC5B4 \uAC10\uC9C0"},detected_result:{zh:"\u68C0\u6D4B\u7ED3\u679C",en:"Detect result",zh_TW:"\u6AA2\u6E2C\u7D50\u679C",ja:"\u691C\u51FA\u7D50\u679C",ko:"\uAC10\uC9C0 \uACB0\uACFC"},subtitle_translate:{zh:"\u5B57\u5E55\u7FFB\u8BD1",en:"Subtitle Translation",zh_TW:"\u5B57\u5E55\u7FFB\u8B6F",ja:"\u5B57\u5E55\u7FFB\u8A33",ko:"\uC790\uB9C9 \uBC88\uC5ED"},toggle_subtitle_translate:{zh:"\u542F\u7528\u5B57\u5E55\u7FFB\u8BD1",en:"Enable subtitle translation",zh_TW:"\u555F\u7528\u5B57\u5E55\u7FFB\u8B6F",ja:"\u5B57\u5E55\u7FFB\u8A33\u3092\u6709\u52B9\u306B\u3059\u308B",ko:"\uC790\uB9C9 \uBC88\uC5ED \uD65C\uC131\uD654"},is_bilingual_view:{zh:"\u53CC\u8BED\u663E\u793A",en:"Enable bilingual display",zh_TW:"\u96D9\u8A9E\u986F\u793A",ja:"\u30D0\u30A4\u30EA\u30F3\u30AC\u30EB\u8868\u793A",ko:"\uC774\uC911 \uC5B8\uC5B4 \uD45C\uC2DC"},is_skip_ad:{zh:"\u5FEB\u8FDB\u5E7F\u544A",en:"Skip AD",zh_TW:"\u5FEB\u8F49\u5EE3\u544A",ja:"\u5E83\u544A\u3092\u30B9\u30AD\u30C3\u30D7",ko:"\uAD11\uACE0 \uAC74\uB108\uB6F0\uAE30"},download_subtitles:{zh:"\u4E0B\u8F7D\u5B57\u5E55",en:"Download subtitles",zh_TW:"\u4E0B\u8F7D\u5B57\u5E55",ja:"\u5B57\u5E55\u3092\u30C0\u30A6\u30F3\u30ED\u30FC\u30C9",ko:"\uC790\uB9C9 \uB2E4\uC6B4\uB85C\uB4DC"},background_styles:{zh:"\u80CC\u666F\u6837\u5F0F",en:"DBackground Style",zh_TW:"\u80CC\u666F\u6A23\u5F0F",ja:"\u80CC\u666F\u30B9\u30BF\u30A4\u30EB",ko:"\uBC30\uACBD \uC2A4\uD0C0\uC77C"},origin_styles:{zh:"\u539F\u6587\u6837\u5F0F",en:"Original style",zh_TW:"\u539F\u6587\u6A23\u5F0F",ja:"\u539F\u6587\u30B9\u30BF\u30A4\u30EB",ko:"\uC6D0\uBB38 \uC2A4\uD0C0\uC77C"},translation_styles:{zh:"\u8BD1\u6587\u6837\u5F0F",en:"Translation style",zh_TW:"\u8B6F\u6587\u6A23\u5F0F",ja:"\u7FFB\u8A33\u30B9\u30BF\u30A4\u30EB",ko:"\uBC88\uC5ED\uBB38 \uC2A4\uD0C0\uC77C"},ai_segmentation:{zh:"AI\u667A\u80FD\u65AD\u53E5",en:"AI intelligent punctuation",zh_TW:"AI\u667A\u6167\u65B7\u53E5",ja:"AI\u306B\u3088\u308B\u30A4\u30F3\u30C6\u30EA\u30B8\u30A7\u30F3\u30C8\u306A\u6587\u5206\u5272",ko:"AI \uC9C0\uB2A5\uD615 \uBB38\uC7A5 \uBD84\uB9AC"},ai_chunk_length:{zh:"AI\u5904\u7406\u5207\u5272\u957F\u5EA6(200-20000)",en:"AI processing chunk length(200-20000)",zh_TW:"AI\u5904\u7406\u5207\u5272\u957F\u5EA6(200-20000)",ja:"AI\u51E6\u7406\u306E\u30C1\u30E3\u30F3\u30AF\u9577(200-20000)",ko:"AI \uCC98\uB9AC \uCCAD\uD06C \uAE38\uC774(200-20000)"},subtitle_helper_1:{zh:"1\u3001\u76EE\u524D\u4EC5\u652F\u6301Youtube\u684C\u9762\u7F51\u7AD9\u3002",en:"1. Currently only supports Youtube desktop website.",zh_TW:"1.\u76EE\u524D\u50C5\u652F\u63F4Youtube\u684C\u9762\u7DB2\u7AD9\uFF0C\u4E14\u50C5\u652F\u63F4\u700F\u89BD\u5668\u64F4\u5145\u529F\u80FD\u3002",ja:"1. \u73FE\u5728\u3001Youtube\u306E\u30C7\u30B9\u30AF\u30C8\u30C3\u30D7\u30B5\u30A4\u30C8\u306E\u307F\u30B5\u30DD\u30FC\u30C8\u3057\u3066\u3044\u307E\u3059\u3002",ko:"1. \uD604\uC7AC Youtube \uB370\uC2A4\uD06C\uD1B1 \uC6F9\uC0AC\uC774\uD2B8\uB9CC \uC9C0\uC6D0\uD569\uB2C8\uB2E4."},subtitle_helper_2:{zh:"2\u3001\u63D2\u4EF6\u5185\u7F6E\u57FA\u7840\u7684\u5B57\u5E55\u5408\u5E76\u3001\u65AD\u53E5\u7B97\u6CD5\uFF0C\u53EF\u6EE1\u8DB3\u5927\u90E8\u5206\u60C5\u51B5\u3002",en:"2. The plug-in has built-in basic subtitle merging and sentence segmentation algorithms, which can meet most situations.",zh_TW:"2.\u63D2\u4EF6\u5167\u5EFA\u57FA\u790E\u7684\u5B57\u5E55\u5408\u4F75\u3001\u65B7\u53E5\u6F14\u7B97\u6CD5\uFF0C\u53EF\u6EFF\u8DB3\u5927\u90E8\u5206\u60C5\u6CC1\u3002",ja:"2. \u30D7\u30E9\u30B0\u30A4\u30F3\u306B\u306F\u57FA\u672C\u7684\u306A\u5B57\u5E55\u7D50\u5408\u3068\u6587\u5206\u5272\u30A2\u30EB\u30B4\u30EA\u30BA\u30E0\u304C\u7D44\u307F\u8FBC\u307E\u308C\u3066\u304A\u308A\u3001\u307B\u3068\u3093\u3069\u306E\u72B6\u6CC1\u306B\u5BFE\u5FDC\u3067\u304D\u307E\u3059\u3002",ko:"2. \uD50C\uB7EC\uADF8\uC778\uC5D0\uB294 \uAE30\uBCF8\uC801\uC778 \uC790\uB9C9 \uBCD1\uD569 \uBC0F \uBB38\uC7A5 \uBD84\uB9AC \uC54C\uACE0\uB9AC\uC998\uC774 \uB0B4\uC7A5\uB418\uC5B4 \uC788\uC5B4 \uB300\uBD80\uBD84\uC758 \uC0C1\uD669\uC5D0 \uB300\uC751\uD560 \uC218 \uC788\uC2B5\uB2C8\uB2E4."},subtitle_helper_3:{zh:"3\u3001\u4EA6\u53EF\u4EE5\u542F\u7528AI\u667A\u80FD\u65AD\u53E5\uFF0C\u4F46\u9700\u8003\u8651\u5207\u5272\u957F\u5EA6\u53CAAI\u63A5\u53E3\u80FD\u529B\uFF0C\u53EF\u80FD\u5904\u7406\u65F6\u95F4\u4F1A\u5F88\u957F\uFF0C\u751A\u81F3\u5904\u7406\u5931\u8D25\uFF0C\u5BFC\u81F4\u65E0\u6CD5\u770B\u5230\u5B57\u5E55\u3002",en:"3. You can also enable AI intelligent segmentation, but you need to consider the segmentation length and AI interface capabilities. The processing time may be very long or even fail, resulting in the inability to see subtitles.",zh_TW:"3.\u4EA6\u53EF\u555F\u7528AI\u667A\u80FD\u65B7\u53E5\uFF0C\u4F46\u9700\u8003\u616E\u5207\u5272\u9577\u5EA6\u53CAAI\u4ECB\u9762\u80FD\u529B\uFF0C\u53EF\u80FD\u8655\u7406\u6642\u9593\u6703\u5F88\u9577\uFF0C\u751A\u81F3\u8655\u7406\u5931\u6557\uFF0C\u5C0E\u81F4\u7121\u6CD5\u770B\u5230\u5B57\u5E55\u3002",ja:"3. AI\u30A4\u30F3\u30C6\u30EA\u30B8\u30A7\u30F3\u30C8\u6587\u5206\u5272\u3092\u6709\u52B9\u306B\u3059\u308B\u3053\u3068\u3082\u3067\u304D\u307E\u3059\u304C\u3001\u5206\u5272\u9577\u3068AI\u30A4\u30F3\u30BF\u30FC\u30D5\u30A7\u30FC\u30B9\u306E\u80FD\u529B\u3092\u8003\u616E\u3059\u308B\u5FC5\u8981\u304C\u3042\u308A\u3001\u51E6\u7406\u6642\u9593\u304C\u9577\u304F\u306A\u3063\u305F\u308A\u3001\u5931\u6557\u3057\u3066\u5B57\u5E55\u304C\u8868\u793A\u3055\u308C\u306A\u304F\u306A\u308B\u53EF\u80FD\u6027\u304C\u3042\u308A\u307E\u3059\u3002",ko:"3. AI \uC9C0\uB2A5\uD615 \uBD84\uB9AC\uB97C \uD65C\uC131\uD654\uD560 \uC218\uB3C4 \uC788\uC9C0\uB9CC, \uBD84\uB9AC \uAE38\uC774\uC640 AI \uC778\uD130\uD398\uC774\uC2A4\uC758 \uB2A5\uB825\uC744 \uACE0\uB824\uD574\uC57C \uD558\uBA70, \uCC98\uB9AC \uC2DC\uAC04\uC774 \uB9E4\uC6B0 \uAE38\uAC70\uB098 \uC2E4\uD328\uD558\uC5EC \uC790\uB9C9\uC744 \uBCFC \uC218 \uC5C6\uAC8C \uB420 \uC218\uB3C4 \uC788\uC2B5\uB2C8\uB2E4."},default_styles_example:{zh:"\u9ED8\u8BA4\u6837\u5F0F\u53C2\u8003\uFF1A",en:"Default styles reference:",zh_TW:"\u8A8D\u6A23\u5F0F\u53C3\u8003\uFF1A",ja:"\u30C7\u30D5\u30A9\u30EB\u30C8\u30B9\u30BF\u30A4\u30EB\u306E\u4F8B\uFF1A",ko:"\uAE30\uBCF8 \uC2A4\uD0C0\uC77C \uC608\uC2DC:"},subtitle_load_succeed:{zh:"\u53CC\u8BED\u5B57\u5E55\u52A0\u8F7D\u6210\u529F\uFF01",en:"Bilingual subtitles loaded successfully!",zh_TW:"\u53CC\u8BED\u5B57\u5E55\u52A0\u8F7D\u6210\u529F\uFF01",ja:"\u30D0\u30A4\u30EA\u30F3\u30AC\u30EB\u5B57\u5E55\u306E\u8AAD\u307F\u8FBC\u307F\u306B\u6210\u529F\u3057\u307E\u3057\u305F\uFF01",ko:"\uC774\uC911 \uC5B8\uC5B4 \uC790\uB9C9 \uB85C\uB529 \uC131\uACF5!"},subtitle_load_failed:{zh:"\u53CC\u8BED\u5B57\u5E55\u52A0\u8F7D\u5931\u8D25\uFF01",en:"Failed to load bilingual subtitles!",zh_TW:"\u53CC\u8BED\u5B57\u5E55\u52A0\u8F7D\u5931\u8D25\uFF01",ja:"\u30D0\u30A4\u30EA\u30F3\u30AC\u30EB\u5B57\u5E55\u306E\u8AAD\u307F\u8FBC\u307F\u306B\u5931\u6557\u3057\u307E\u3057\u305F\uFF01",ko:"\uC774\uC911 \uC5B8\uC5B4 \uC790\uB9C9 \uB85C\uB529 \uC2E4\uD328!"},try_get_subtitle_data:{zh:"\u5C1D\u8BD5\u83B7\u53D6\u5B57\u5E55\u6570\u636E\uFF0C\u8BF7\u7A0D\u5019...",en:"Trying to get subtitle data, please wait...",zh_TW:"\u5C1D\u8BD5\u83B7\u53D6\u5B57\u5E55\u6570\u636E\uFF0C\u8BF7\u7A0D\u5019...",ja:"\u5B57\u5E55\u30C7\u30FC\u30BF\u3092\u53D6\u5F97\u3057\u3066\u3044\u307E\u3059\u3002\u304A\u5F85\u3061\u304F\u3060\u3055\u3044...",ko:"\uC790\uB9C9 \uB370\uC774\uD130\uB97C \uAC00\uC838\uC624\uB294 \uC911\uC785\uB2C8\uB2E4. \uC7A0\uC2DC \uAE30\uB2E4\uB824\uC8FC\uC138\uC694..."},subtitle_data_processing:{zh:"\u5B57\u5E55\u6570\u636E\u5904\u7406\u4E2D...",en:"Subtitle data processing...",zh_TW:"\u5B57\u5E55\u6570\u636E\u5904\u7406\u4E2D...",ja:"\u5B57\u5E55\u30C7\u30FC\u30BF\u3092\u51E6\u7406\u4E2D...",ko:"\uC790\uB9C9 \uB370\uC774\uD130 \uCC98\uB9AC \uC911..."},starting_to_process_subtitle:{zh:"\u5F00\u59CB\u5904\u7406\u5B57\u5E55\u6570\u636E...",en:"Starting to process subtitle data...",zh_TW:"\u5F00\u59CB\u5904\u7406\u5B57\u5E55\u6570\u636E...",ja:"\u5B57\u5E55\u30C7\u30FC\u30BF\u306E\u51E6\u7406\u3092\u958B\u59CB\u3057\u307E\u3059...",ko:"\uC790\uB9C9 \uB370\uC774\uD130 \uCC98\uB9AC\uB97C \uC2DC\uC791\uD569\uB2C8\uB2E4..."},subtitle_data_is_ready:{zh:"\u5B57\u5E55\u6570\u636E\u5DF2\u51C6\u5907\u5C31\u7EEA\uFF0C\u8BF7\u70B9\u51FBKT\u6309\u94AE\u52A0\u8F7D",en:"The subtitle data is ready, please click the KT button to load it",zh_TW:"\u5B57\u5E55\u8CC7\u6599\u5DF2\u6E96\u5099\u5C31\u7DD2\uFF0C\u8ACB\u9EDE\u64CAKT\u6309\u9215\u52A0\u8F09",ja:"\u5B57\u5E55\u30C7\u30FC\u30BF\u306E\u6E96\u5099\u304C\u3067\u304D\u307E\u3057\u305F\u3002KT\u30DC\u30BF\u30F3\u3092\u30AF\u30EA\u30C3\u30AF\u3057\u3066\u8AAD\u307F\u8FBC\u3093\u3067\u304F\u3060\u3055\u3044",ko:"\uC790\uB9C9 \uB370\uC774\uD130\uAC00 \uC900\uBE44\uB418\uC5C8\uC2B5\uB2C8\uB2E4. KT \uBC84\uD2BC\uC744 \uD074\uB9AD\uD558\uC5EC \uB85C\uB4DC\uD558\uC138\uC694"},starting_reprocess_events:{zh:"\u91CD\u65B0\u5904\u7406\u5B57\u5E55\u6570\u636E...",en:"Reprocess the subtitle data...",zh_TW:"\u91CD\u65B0\u5904\u7406\u5B57\u5E55\u6570\u636E...",ja:"\u5B57\u5E55\u30C7\u30FC\u30BF\u3092\u518D\u51E6\u7406\u3057\u3066\u3044\u307E\u3059...",ko:"\uC790\uB9C9 \uB370\uC774\uD130\uB97C \uB2E4\uC2DC \uCC98\uB9AC \uC911..."},waitting_for_subtitle:{zh:"\u8BF7\u7B49\u5F85\u5B57\u5E55\u6570\u636E",en:"Please wait for the subtitle data.",zh_TW:"\u8BF7\u7B49\u5F85\u5B57\u5E55\u6570\u636E",ja:"\u5B57\u5E55\u30C7\u30FC\u30BF\u3092\u5F85\u6A5F\u4E2D",ko:"\uC790\uB9C9 \uB370\uC774\uD130\uB97C \uAE30\uB2E4\uB824\uC8FC\uC138\uC694"},ai_processing_pls_wait:{zh:"AI\u5904\u7406\u4E2D\uFF0C\u8BF7\u7A0D\u7B49...",en:"AI processing in progress, please wait...",zh_TW:"AI\u5904\u7406\u4E2D\uFF0C\u8BF7\u7A0D\u7B49...",ja:"AI\u51E6\u7406\u4E2D\u3067\u3059\u3002\u304A\u5F85\u3061\u304F\u3060\u3055\u3044...",ko:"AI \uCC98\uB9AC \uC911\uC785\uB2C8\uB2E4. \uC7A0\uC2DC \uAE30\uB2E4\uB824\uC8FC\uC138\uC694..."},processing_subtitles:{zh:"\u5B57\u5E55\u5904\u7406\u4E2D...",en:"Subtitle processing...",zh_TW:"\u5B57\u5E55\u5904\u7406\u4E2D...",ja:"\u5B57\u5E55\u51E6\u7406\u4E2D...",ko:"\uC790\uB9C9 \uCC98\uB9AC \uC911..."},waiting_subtitles:{zh:"\u7B49\u5F85\u5B57\u5E55\u4E2D",en:"Waiting for subtitles",zh_TW:"\u7B49\u5F85\u5B57\u5E55\u4E2D",ja:"\u5B57\u5E55\u5F85\u6A5F\u4E2D",ko:"\uC790\uB9C9 \uB300\uAE30 \uC911"},subtitle_is_not_yet_ready:{zh:"\u5B57\u5E55\u6570\u636E\u5C1A\u672A\u51C6\u5907\u597D",en:"Subtitle is not yet ready.",zh_TW:"\u5B57\u5E55\u6570\u636E\u5C1A\u672A\u51C6\u5907\u597D",ja:"\u5B57\u5E55\u30C7\u30FC\u30BF\u306E\u6E96\u5099\u304C\u307E\u3060\u3067\u304D\u3066\u3044\u307E\u305B\u3093\u3002",ko:"\uC790\uB9C9 \uB370\uC774\uD130\uAC00 \uC544\uC9C1 \uC900\uBE44\uB418\uC9C0 \uC54A\uC558\uC2B5\uB2C8\uB2E4."},log_level:{zh:"\u65E5\u5FD7\u7EA7\u522B",en:"Log Level",zh_TW:"\u65E5\u8A8C\u7B49\u7D1A",ja:"\u30ED\u30B0\u30EC\u30D9\u30EB",ko:"\uB85C\uADF8 \uB808\uBCA8"},goto_custom_api_example:{zh:"\u70B9\u51FB\u67E5\u770B\u3010\u81EA\u5B9A\u4E49\u63A5\u53E3\u793A\u4F8B\u3011",en:"Click to view [Custom Interface Example]",zh_TW:"\u9EDE\u9078\u67E5\u770B\u3010\u81EA\u8A02\u4ECB\u9762\u7BC4\u4F8B\u3011",ja:"\u3010\u30AB\u30B9\u30BF\u30E0\u30A4\u30F3\u30BF\u30FC\u30D5\u30A7\u30FC\u30B9\u306E\u4F8B\u3011\u3092\u898B\u308B",ko:"[\uC0AC\uC6A9\uC790 \uC9C0\uC815 \uC778\uD130\uD398\uC774\uC2A4 \uC608\uC2DC] \uBCF4\uAE30"},split_paragraph:{zh:"\u5207\u5206\u957F\u6BB5\u843D",en:"Split long paragraph",zh_TW:"\u5207\u5206\u9577\u6BB5\u843D",ja:"\u9577\u3044\u6BB5\u843D\u3092\u5206\u5272",ko:"\uAE34 \uB2E8\uB77D \uB098\uB204\uAE30"},split_length:{zh:"\u5207\u5206\u957F\u5EA6 (0-10000)",en:"Segmentation length(0-10000)",zh_TW:"\u5207\u5206\u9577\u5EA6(0-10000)",ja:"\u5206\u5272\u9577(0-10000)",ko:"\uBD84\uD560 \uAE38\uC774(0-10000)"},highlight_words:{zh:"\u9AD8\u4EAE\u6536\u85CF\u8BCD\u6C47",en:"Highlight favorite words",zh_TW:"\u9AD8\u4EAE\u6536\u85CF\u8A5E\u5F59",ja:"\u304A\u6C17\u306B\u5165\u308A\u5358\u8A9E\u3092\u30CF\u30A4\u30E9\u30A4\u30C8",ko:"\uC990\uACA8\uCC3E\uB294 \uB2E8\uC5B4 \uD558\uC774\uB77C\uC774\uD2B8"},split_disable:{zh:"\u7981\u7528",en:"Disable",zh_TW:"\u505C\u7528",ja:"\u7121\u52B9",ko:"\uBE44\uD65C\uC131\uD654"},split_textlength:{zh:"\u6309\u7167\u957F\u5EA6\u5207\u5206",en:"Split by length",zh_TW:"\u4F9D\u9577\u5EA6\u5207\u5206",ja:"\u9577\u3055\u3067\u5206\u5272",ko:"\uAE38\uC774\uB85C \uB098\uB204\uAE30"},split_punctuation:{zh:"\u6309\u7167\u53E5\u5B50\u5207\u5206",en:"Split by sentence",zh_TW:"\u6309\u7167\u53E5\u5B50\u5207\u5206",ja:"\u6587\u3067\u5206\u5272",ko:"\uBB38\uC7A5\uC73C\uB85C \uB098\uB204\uAE30"},highlight_disable:{zh:"\u7981\u7528",en:"Disable",zh_TW:"\u505C\u7528",ja:"\u7121\u52B9",ko:"\uBE44\uD65C\uC131\uD654"},highlight_beforetrans:{zh:"\u7FFB\u8BD1\u524D\u9AD8\u4EAE",en:"Highlight before translation",zh_TW:"\u7FFB\u8B6F\u524D\u9AD8\u4EAE",ja:"\u7FFB\u8A33\u524D\u306B\u30CF\u30A4\u30E9\u30A4\u30C8",ko:"\uBC88\uC5ED \uC804 \uD558\uC774\uB77C\uC774\uD2B8"},highlight_aftertrans:{zh:"\u7FFB\u8BD1\u540E\u9AD8\u4EAE",en:"Highlight after translation",zh_TW:"\u7FFB\u8B6F\u5F8C\u9AD8\u4EAE",ja:"\u7FFB\u8A33\u5F8C\u306B\u30CF\u30A4\u30E9\u30A4\u30C8",ko:"\uBC88\uC5ED \uD6C4 \uD558\uC774\uB77C\uC774\uD2B8"},pagescroll_root_margin:{zh:"\u6EDA\u52A8\u52A0\u8F7D\u63D0\u524D\u89E6\u53D1 (0-10000px)",en:"Early triggering of scroll loading (0-10000px)",zh_TW:"\u6EFE\u52D5\u8F09\u5165\u63D0\u524D\u89F8\u767C (0-10000px)",ja:"\u30B9\u30AF\u30ED\u30FC\u30EB\u8AAD\u307F\u8FBC\u307F\u306E\u4E8B\u524D\u30C8\u30EA\u30AC\u30FC (0-10000px)",ko:"\uC2A4\uD06C\uB864 \uB85C\uB529 \uBBF8\uB9AC \uD2B8\uB9AC\uAC70 (0-10000px)"},styles_setting:{zh:"\u6837\u5F0F\u8BBE\u7F6E",en:"Style Setting",zh_TW:"\u6A23\u5F0F\u8A2D\u5B9A",ja:"\u30B9\u30BF\u30A4\u30EB\u8A2D\u5B9A",ko:"\uC2A4\uD0C0\uC77C \uC124\uC815"},style_name:{zh:"\u6837\u5F0F\u540D\u79F0",en:"Style Name",zh_TW:"\u6A23\u5F0F\u540D\u7A31",ja:"\u30B9\u30BF\u30A4\u30EB\u540D",ko:"\uC2A4\uD0C0\uC77C \uC774\uB984"},style_code:{zh:"\u6837\u5F0F\u4EE3\u7801",en:"Style Code",zh_TW:"\u6A23\u5F0F\u7A0B\u5F0F\u78BC",ja:"\u30B9\u30BF\u30A4\u30EB\u30B3\u30FC\u30C9",ko:"\uC2A4\uD0C0\uC77C \uCF54\uB4DC"},pre_trans_seconds:{zh:"\u63D0\u524D\u7FFB\u8BD1\u65F6\u957F (10-36000s)",en:"Pre translation seconds (10-36000s)",zh_TW:"\u63D0\u524D\u7FFB\u8BD1\u65F6\u957F (10-36000s)",ja:"\u4E8B\u524D\u7FFB\u8A33\u6642\u9593 (10-36000s)",ko:"\uBBF8\uB9AC \uBC88\uC5ED \uC2DC\uAC04 (10-36000s)"},throttle_trans_interval:{zh:"\u8282\u6D41\u7FFB\u8BD1\u95F4\u9694 (1-3600s)",en:"Throttling translation interval (1-3600s)",zh_TW:"\u8282\u6D41\u7FFB\u8BD1\u95F4\u9694 (1-3600s)",ja:"\u7FFB\u8A33\u9593\u9694\u306E\u30B9\u30ED\u30C3\u30C8\u30EA\u30F3\u30B0 (1-3600s)",ko:"\uBC88\uC5ED \uAC04\uACA9 \uC870\uC808 (1-3600s)"},show_origin_subtitle:{zh:"\u663E\u793A\u539F\u5B57\u5E55",en:"Show original subtitles",zh_TW:"\u663E\u793A\u539F\u5B57\u5E55",ja:"\u539F\u5B57\u5E55\u3092\u8868\u793A",ko:"\uC6D0\uBCF8 \uC790\uB9C9 \uD45C\uC2DC"}};const newI18n=lang=>key=>{var _I18N$key;return((_I18N$key=I18N[key])===null||_I18N$key===void 0?void 0:_I18N$key[lang])||"";}; ;// CONCATENATED MODULE: ./src/config/storage.js const KV_RULES_KEY="kiss-rules_v".concat(APP_VERSION[0],".json");const storage_KV_WORDS_KEY="kiss-words.json";const storage_KV_RULES_SHARE_KEY="kiss-rules-share_v".concat(APP_VERSION[0],".json");const storage_KV_SETTING_KEY="kiss-setting_v".concat(APP_VERSION[0],".json");const KV_SALT_SYNC="KISS-Translator-SYNC";const storage_KV_SALT_SHARE="KISS-Translator-SHARE";const STOKEY_MSAUTH="".concat(APP_NAME,"_msauth");const storage_STOKEY_BDAUTH="".concat(APP_NAME,"_bdauth");const storage_STOKEY_SETTING_OLD="".concat(APP_NAME,"_setting");const storage_STOKEY_RULES_OLD="".concat(APP_NAME,"_rules");const storage_STOKEY_SETTING="".concat(APP_NAME,"_setting_v").concat(APP_VERSION[0]);const storage_STOKEY_RULES="".concat(APP_NAME,"_rules_v").concat(APP_VERSION[0]);const storage_STOKEY_WORDS="".concat(APP_NAME,"_words");const storage_STOKEY_SYNC="".concat(APP_NAME,"_sync");const storage_STOKEY_FAB="".concat(APP_NAME,"_fab");const STOKEY_TRANBOX="".concat(APP_NAME,"_tranbox");const storage_STOKEY_RULESCACHE_PREFIX="".concat(APP_NAME,"_rulescache_");const CACHE_NAME="".concat(APP_NAME,"_cache");const DEFAULT_CACHE_TIMEOUT=3600*24*7;// 缓存超时时间(7天) ;// CONCATENATED MODULE: ./src/config/url.js @@ -29945,7 +29951,7 @@ return mimeMap[extension]||defaultType;}/** * @param {*} filename */function downloadBlobFile(str){let filename=arguments.length>1&&arguments[1]!==undefined?arguments[1]:"kiss-file.txt";const mimeType=getMimeTypeFromFilename(filename);const blob=new Blob([str],{type:mimeType});const url=URL.createObjectURL(blob);const a=document.createElement("a");a.style.display="none";a.href=url;a.download=filename||"kiss-file.txt";document.body.appendChild(a);a.click();document.body.removeChild(a);URL.revokeObjectURL(url);} ;// CONCATENATED MODULE: ./src/libs/storage.js -async function set(key,val){if(isExt){await browser.storage.local.set({[key]:val});}else if(isGm){await(window.KISS_GM||GM).setValue(key,val);}else{window.localStorage.setItem(key,val);}}async function get(key){if(isExt){const val=await browser.storage.local.get([key]);return val[key];}else if(isGm){const val=await(window.KISS_GM||GM).getValue(key);return val;}return window.localStorage.getItem(key);}async function del(key){if(isExt){await browser.storage.local.remove([key]);}else if(isGm){await(window.KISS_GM||GM).deleteValue(key);}else{window.localStorage.removeItem(key);}}async function setObj(key,obj){await set(key,JSON.stringify(obj));}async function trySetObj(key,obj){if(!(await get(key))){await setObj(key,obj);}}async function getObj(key){const val=await get(key);if(val===null||val===undefined)return null;try{return JSON.parse(val);}catch(err){log_kissLog("parse json in storage err: ",key);}return null;}async function putObj(key,obj){var _await$getObj;const cur=(_await$getObj=await getObj(key))!==null&&_await$getObj!==void 0?_await$getObj:{};await setObj(key,_objectSpread2(_objectSpread2({},cur),obj));}/** +async function set(key,val){if(isExt){await browser.storage.local.set({[key]:val});}else if(isGm){await(window.KISS_GM||GM).setValue(key,val);}else{var _window;(_window=window)===null||_window===void 0?void 0:_window.localStorage.setItem(key,val);}}async function get(key){var _window2;if(isExt){const val=await browser.storage.local.get([key]);return val[key];}else if(isGm){const val=await(window.KISS_GM||GM).getValue(key);return val;}return(_window2=window)===null||_window2===void 0?void 0:_window2.localStorage.getItem(key);}async function del(key){if(isExt){await browser.storage.local.remove([key]);}else if(isGm){await(window.KISS_GM||GM).deleteValue(key);}else{var _window3;(_window3=window)===null||_window3===void 0?void 0:_window3.localStorage.removeItem(key);}}async function setObj(key,obj){await set(key,JSON.stringify(obj));}async function trySetObj(key,obj){if(!(await get(key))){await setObj(key,obj);}}async function getObj(key){const val=await get(key);if(val===null||val===undefined)return null;try{return JSON.parse(val);}catch(err){log_kissLog("parse json in storage err: ",key);}return null;}async function putObj(key,obj){var _await$getObj;const cur=(_await$getObj=await getObj(key))!==null&&_await$getObj!==void 0?_await$getObj:{};await setObj(key,_objectSpread2(_objectSpread2({},cur),obj));}/** * 对storage的封装 */const storage={get,set,del,setObj,trySetObj,getObj,putObj// onChanged, };/** @@ -30136,7 +30142,7 @@ return fnPolyfill({fn:fetchHandle,input,init,opts});}; const MSG_GM_xmlHttpRequest="xmlHttpRequest";const MSG_GM_setValue="setValue";const MSG_GM_getValue="getValue";const MSG_GM_deleteValue="deleteValue";const MSG_GM_info="info";/** * 注入页面的脚本,请求并接受GM接口信息 * @param {*} param0 - */const injectScript=ping=>{window.APP_INFO={name:"KISS Translator",version:"2.0.8",eventName:ping};};/** + */const injectScript=ping=>{window.APP_INFO={name:"KISS Translator",version:"2.0.9",eventName:ping};};/** * 适配GM脚本 */const adaptScript=ping=>{const promiseGM=function(action,args){let timeout=arguments.length>2&&arguments[2]!==undefined?arguments[2]:5000;return new Promise((resolve,reject)=>{const pong=genEventName();const handleEvent=e=>{window.removeEventListener(pong,handleEvent);const{data,error}=e.detail;if(error){reject(new Error(error));}else{resolve(data);}};window.addEventListener(pong,handleEvent);window.dispatchEvent(new CustomEvent(ping,{detail:{action,args,pong}}));setTimeout(()=>{window.removeEventListener(pong,handleEvent);reject(new Error("timeout"));},timeout);});};window.KISS_GM={fetch:(input,init)=>promiseGM(MSG_GM_xmlHttpRequest,{input,init}),setValue:(key,val)=>promiseGM(MSG_GM_setValue,{key,val}),getValue:key=>promiseGM(MSG_GM_getValue,{key}),deleteValue:key=>promiseGM(MSG_GM_deleteValue,{key}),getInfo:async()=>{if(!window.GM_info){window.GM_info=await promiseGM(MSG_GM_info);}return window.GM_info;}};};/** * 监听并回应页面对GM接口的请求 @@ -30728,7 +30734,7 @@ contents:[{role:"model",parts:[{text:systemPrompt}]},...hisMsgs,userMsg],generat // }, safetySettings:[{category:"HARM_CATEGORY_HARASSMENT",threshold:"BLOCK_NONE"},{category:"HARM_CATEGORY_HATE_SPEECH",threshold:"BLOCK_NONE"},{category:"HARM_CATEGORY_SEXUALLY_EXPLICIT",threshold:"BLOCK_NONE"},{category:"HARM_CATEGORY_DANGEROUS_CONTENT",threshold:"BLOCK_NONE"}]};const headers={"Content-type":"application/json"};return{url,body,headers,userMsg};};const genGemini2=_ref14=>{let{url,key,systemPrompt,userPrompt,model,temperature,maxTokens,hisMsgs=[]}=_ref14;const userMsg={role:"user",content:userPrompt};const body={model,messages:[{role:"system",content:systemPrompt},...hisMsgs,userMsg],temperature,max_tokens:maxTokens};const headers={"Content-type":"application/json",Authorization:"Bearer ".concat(key)};return{url,body,headers,userMsg};};const genClaude=_ref15=>{let{url,key,systemPrompt,userPrompt,model,temperature,maxTokens,hisMsgs=[]}=_ref15;const userMsg={role:"user",content:userPrompt};const body={model,system:systemPrompt,messages:[...hisMsgs,userMsg],temperature,max_tokens:maxTokens};const headers={"Content-type":"application/json","anthropic-version":"2023-06-01","anthropic-dangerous-direct-browser-access":"true","x-api-key":key};return{url,body,headers,userMsg};};const genOpenRouter=_ref16=>{let{url,key,systemPrompt,userPrompt,model,temperature,maxTokens,hisMsgs=[]}=_ref16;const userMsg={role:"user",content:userPrompt};const body={model,messages:[{role:"system",content:systemPrompt},...hisMsgs,userMsg],temperature,max_tokens:maxTokens};const headers={"Content-type":"application/json",Authorization:"Bearer ".concat(key)};return{url,body,headers,userMsg};};const genOllama=_ref17=>{let{// think, url,key,systemPrompt,userPrompt,model,temperature,maxTokens,hisMsgs=[]}=_ref17;const userMsg={role:"user",content:userPrompt};const body={model,messages:[{role:"system",content:systemPrompt},...hisMsgs,userMsg],temperature,max_tokens:maxTokens,// think, -stream:false};const headers={"Content-type":"application/json"};if(key){headers.Authorization="Bearer ".concat(key);}return{url,body,headers,userMsg};};const genCloudflareAI=_ref18=>{let{texts,from,to,url,key}=_ref18;const body={text:texts.join(" "),source_lang:from,target_lang:to};const headers={"Content-type":"application/json",Authorization:"Bearer ".concat(key)};return{url,body,headers};};const genCustom=_ref19=>{let{texts,fromLang,toLang,url,key}=_ref19;const body={texts,from:fromLang,to:toLang};const headers={"Content-type":"application/json",Authorization:"Bearer ".concat(key)};return{url,body,headers};};const genReqFuncs={[OPT_TRANS_GOOGLE]:genGoogle,[OPT_TRANS_GOOGLE_2]:genGoogle2,[OPT_TRANS_MICROSOFT]:genMicrosoft,[OPT_TRANS_AZUREAI]:genAzureAI,[OPT_TRANS_DEEPL]:genDeepl,[OPT_TRANS_DEEPLFREE]:genDeeplFree,[OPT_TRANS_DEEPLX]:genDeeplX,[OPT_TRANS_NIUTRANS]:genNiuTrans,[OPT_TRANS_BAIDU]:genBaidu,[OPT_TRANS_TENCENT]:genTencent,[OPT_TRANS_VOLCENGINE]:genVolcengine,[OPT_TRANS_OPENAI]:genOpenAI,[OPT_TRANS_GEMINI]:genGemini,[OPT_TRANS_GEMINI_2]:genGemini2,[OPT_TRANS_CLAUDE]:genClaude,[OPT_TRANS_CLOUDFLAREAI]:genCloudflareAI,[OPT_TRANS_OLLAMA]:genOllama,[OPT_TRANS_OPENROUTER]:genOpenRouter,[OPT_TRANS_CUSTOMIZE]:genCustom};const genInit=_ref20=>{let{url="",body=null,headers={},userMsg=null,method="POST"}=_ref20;if(!url){throw new Error("genInit: url is empty");}const init={method,headers};if(method!=="GET"&&method!=="HEAD"&&body){var _body$params;let payload=JSON.stringify(body);const id=body===null||body===void 0?void 0:(_body$params=body.params)===null||_body$params===void 0?void 0:_body$params.id;if(id){payload=payload.replace('method":"',(id+3)%13===0||(id+5)%29===0?'method" : "':'method": "');}Object.assign(init,{body:payload});}return[url,init,userMsg];};/** +stream:false};const headers={"Content-type":"application/json"};if(key){headers.Authorization="Bearer ".concat(key);}return{url,body,headers,userMsg};};const genCloudflareAI=_ref18=>{let{texts,from,to,url,key}=_ref18;const body={text:texts.join(" "),source_lang:from,target_lang:to};const headers={"Content-type":"application/json",Authorization:"Bearer ".concat(key)};return{url,body,headers};};const genCustom=_ref19=>{let{texts,fromLang,toLang,url,key,useBatchFetch}=_ref19;const body=useBatchFetch?{texts,from:fromLang,to:toLang}:{text:texts[0],from:fromLang,to:toLang};const headers={"Content-type":"application/json",Authorization:"Bearer ".concat(key)};return{url,body,headers};};const genReqFuncs={[OPT_TRANS_GOOGLE]:genGoogle,[OPT_TRANS_GOOGLE_2]:genGoogle2,[OPT_TRANS_MICROSOFT]:genMicrosoft,[OPT_TRANS_AZUREAI]:genAzureAI,[OPT_TRANS_DEEPL]:genDeepl,[OPT_TRANS_DEEPLFREE]:genDeeplFree,[OPT_TRANS_DEEPLX]:genDeeplX,[OPT_TRANS_NIUTRANS]:genNiuTrans,[OPT_TRANS_BAIDU]:genBaidu,[OPT_TRANS_TENCENT]:genTencent,[OPT_TRANS_VOLCENGINE]:genVolcengine,[OPT_TRANS_OPENAI]:genOpenAI,[OPT_TRANS_GEMINI]:genGemini,[OPT_TRANS_GEMINI_2]:genGemini2,[OPT_TRANS_CLAUDE]:genClaude,[OPT_TRANS_CLOUDFLAREAI]:genCloudflareAI,[OPT_TRANS_OLLAMA]:genOllama,[OPT_TRANS_OPENROUTER]:genOpenRouter,[OPT_TRANS_CUSTOMIZE]:genCustom};const genInit=_ref20=>{let{url="",body=null,headers={},userMsg=null,method="POST"}=_ref20;if(!url){throw new Error("genInit: url is empty");}const init={method,headers};if(method!=="GET"&&method!=="HEAD"&&body){var _body$params;let payload=JSON.stringify(body);const id=body===null||body===void 0?void 0:(_body$params=body.params)===null||_body$params===void 0?void 0:_body$params.id;if(id){payload=payload.replace('method":"',(id+3)%13===0||(id+5)%29===0?'method" : "':'method": "');}Object.assign(init,{body:payload});}return[url,init,userMsg];};/** * 构造翻译接口请求参数 * @param {*} * @returns @@ -30740,16 +30746,16 @@ if(reqHook!==null&&reqHook!==void 0&&reqHook.trim()&&!events){try{interpreter.ru * @param {*} res * @param {*} param3 * @returns - */const parseTransRes=async(res,_ref22)=>{var _res$sentences,_res$,_res$translations,_res$result,_res$result$texts,_res$result2,_res$auto_translation,_res$choices,_res$choices$,_modelMsg,_res$candidates,_res$candidates$,_modelMsg$parts$0$tex,_modelMsg2,_modelMsg2$parts,_modelMsg2$parts$,_res$content,_res$content$0$text,_res$content2,_res$content2$,_res$result3,_res$choices2,_res$choices2$,_modelMsg3,_ref23,_res$translations2;let{texts,from,to,fromLang,toLang,langMap,resHook,// thinkIgnore, + */const parseTransRes=async(res,_ref22)=>{var _res$sentences,_res$,_res$translations,_res$result,_res$result$texts,_res$result2,_res$auto_translation,_res$choices,_res$choices$,_modelMsg,_res$candidates,_res$candidates$,_modelMsg$parts$0$tex,_modelMsg2,_modelMsg2$parts,_modelMsg2$parts$,_res$content,_res$content$0$text,_res$content2,_res$content2$,_res$result3,_res$choices2,_res$choices2$,_modelMsg3;let{texts,from,to,fromLang,toLang,langMap,resHook,// thinkIgnore, history,userMsg,apiType,useBatchFetch}=_ref22;// 执行 response hook -if(resHook!==null&&resHook!==void 0&&resHook.trim()){try{interpreter.run("exports.resHook = ".concat(resHook));const hookResult=await interpreter.exports.resHook({apiType,userMsg,res,texts,from,to,fromLang,toLang,langMap,extractJson: extractJson,parseAIRes});if(hookResult&&Array.isArray(hookResult.translations)){if(history&&userMsg&&hookResult.modelMsg){history.add(userMsg,hookResult.modelMsg);}return hookResult.translations;}}catch(err){log_kissLog("run res hook",err);}}let modelMsg="";// todo: 根据结果抛出实际异常信息 +if(resHook!==null&&resHook!==void 0&&resHook.trim()){try{interpreter.run("exports.resHook = ".concat(resHook));const hookResult=await interpreter.exports.resHook({apiType,userMsg,res,texts,from,to,fromLang,toLang,langMap,extractJson: extractJson,parseAIRes});if(hookResult&&Array.isArray(hookResult.translations)){if(history&&userMsg&&hookResult.modelMsg){history.add(userMsg,hookResult.modelMsg);}return hookResult.translations;}else if(Array.isArray(hookResult)){return hookResult;}}catch(err){log_kissLog("run res hook",err);}}let modelMsg="";// todo: 根据结果抛出实际异常信息 switch(apiType){case OPT_TRANS_GOOGLE:return[[res===null||res===void 0?void 0:(_res$sentences=res.sentences)===null||_res$sentences===void 0?void 0:_res$sentences.map(item=>item.trans).join(" "),res===null||res===void 0?void 0:res.src]];case OPT_TRANS_GOOGLE_2:return res===null||res===void 0?void 0:(_res$=res[0])===null||_res$===void 0?void 0:_res$.map((_,i)=>{var _res$2,_res$3;return[res===null||res===void 0?void 0:(_res$2=res[0])===null||_res$2===void 0?void 0:_res$2[i],res===null||res===void 0?void 0:(_res$3=res[1])===null||_res$3===void 0?void 0:_res$3[i]];});case OPT_TRANS_MICROSOFT:case OPT_TRANS_AZUREAI:return res===null||res===void 0?void 0:res.map(item=>{var _item$detectedLanguag;return[item.translations.map(item=>item.text).join(" "),(_item$detectedLanguag=item.detectedLanguage)===null||_item$detectedLanguag===void 0?void 0:_item$detectedLanguag.language];});case OPT_TRANS_DEEPL:return res===null||res===void 0?void 0:(_res$translations=res.translations)===null||_res$translations===void 0?void 0:_res$translations.map(item=>[item.text,item.detected_source_language]);case OPT_TRANS_DEEPLFREE:return[[res===null||res===void 0?void 0:(_res$result=res.result)===null||_res$result===void 0?void 0:(_res$result$texts=_res$result.texts)===null||_res$result$texts===void 0?void 0:_res$result$texts.map(item=>item.text).join(" "),res===null||res===void 0?void 0:(_res$result2=res.result)===null||_res$result2===void 0?void 0:_res$result2.lang]];case OPT_TRANS_DEEPLX:return[[res===null||res===void 0?void 0:res.data,res===null||res===void 0?void 0:res.source_lang]];case OPT_TRANS_NIUTRANS:const json=JSON.parse(res);if(json.error_msg){throw new Error(json.error_msg);}return[[json.tgt_text,json.from]];case OPT_TRANS_BAIDU:if(res.type===1){return[[Object.keys(JSON.parse(res.result).content[0].mean[0].cont)[0],res.from]];}else if(res.type===2){return[[res.data.map(item=>item.dst).join(" "),res.from]];}break;case OPT_TRANS_TENCENT:return res===null||res===void 0?void 0:(_res$auto_translation=res.auto_translation)===null||_res$auto_translation===void 0?void 0:_res$auto_translation.map(text=>[text,res===null||res===void 0?void 0:res.src_lang]);case OPT_TRANS_VOLCENGINE:return[[res===null||res===void 0?void 0:res.translation,res===null||res===void 0?void 0:res.detected_language]];case OPT_TRANS_OPENAI:case OPT_TRANS_GEMINI_2:case OPT_TRANS_OPENROUTER:modelMsg=res===null||res===void 0?void 0:(_res$choices=res.choices)===null||_res$choices===void 0?void 0:(_res$choices$=_res$choices[0])===null||_res$choices$===void 0?void 0:_res$choices$.message;if(history&&userMsg&&modelMsg){history.add(userMsg,{role:modelMsg.role,content:modelMsg.content});}return parseAIRes((_modelMsg=modelMsg)===null||_modelMsg===void 0?void 0:_modelMsg.content,useBatchFetch);case OPT_TRANS_GEMINI:modelMsg=res===null||res===void 0?void 0:(_res$candidates=res.candidates)===null||_res$candidates===void 0?void 0:(_res$candidates$=_res$candidates[0])===null||_res$candidates$===void 0?void 0:_res$candidates$.content;if(history&&userMsg&&modelMsg){history.add(userMsg,modelMsg);}return parseAIRes((_modelMsg$parts$0$tex=(_modelMsg2=modelMsg)===null||_modelMsg2===void 0?void 0:(_modelMsg2$parts=_modelMsg2.parts)===null||_modelMsg2$parts===void 0?void 0:(_modelMsg2$parts$=_modelMsg2$parts[0])===null||_modelMsg2$parts$===void 0?void 0:_modelMsg2$parts$.text)!==null&&_modelMsg$parts$0$tex!==void 0?_modelMsg$parts$0$tex:"",useBatchFetch);case OPT_TRANS_CLAUDE:modelMsg={role:res===null||res===void 0?void 0:res.role,content:res===null||res===void 0?void 0:(_res$content=res.content)===null||_res$content===void 0?void 0:_res$content.text};if(history&&userMsg&&modelMsg){history.add(userMsg,{role:modelMsg.role,content:modelMsg.content});}return parseAIRes((_res$content$0$text=res===null||res===void 0?void 0:(_res$content2=res.content)===null||_res$content2===void 0?void 0:(_res$content2$=_res$content2[0])===null||_res$content2$===void 0?void 0:_res$content2$.text)!==null&&_res$content$0$text!==void 0?_res$content$0$text:"",useBatchFetch);case OPT_TRANS_CLOUDFLAREAI:return[[res===null||res===void 0?void 0:(_res$result3=res.result)===null||_res$result3===void 0?void 0:_res$result3.translated_text]];case OPT_TRANS_OLLAMA:modelMsg=res===null||res===void 0?void 0:(_res$choices2=res.choices)===null||_res$choices2===void 0?void 0:(_res$choices2$=_res$choices2[0])===null||_res$choices2$===void 0?void 0:_res$choices2$.message;// const deepModels = thinkIgnore // .split(",") // .filter((model) => model?.trim()); // if (deepModels.some((model) => res?.model?.startsWith(model))) { // modelMsg?.content.replace(/[\s\S]*<\/think>/i, ""); // } -if(history&&userMsg&&modelMsg){history.add(userMsg,{role:modelMsg.role,content:modelMsg.content});}return parseAIRes((_modelMsg3=modelMsg)===null||_modelMsg3===void 0?void 0:_modelMsg3.content,useBatchFetch);case OPT_TRANS_CUSTOMIZE:return(_ref23=(_res$translations2=res===null||res===void 0?void 0:res.translations)!==null&&_res$translations2!==void 0?_res$translations2:res)===null||_ref23===void 0?void 0:_ref23.map(item=>[item.text,item.src]);default:}throw new Error("parse translate result: apiType not matched",apiType);};/** +if(history&&userMsg&&modelMsg){history.add(userMsg,{role:modelMsg.role,content:modelMsg.content});}return parseAIRes((_modelMsg3=modelMsg)===null||_modelMsg3===void 0?void 0:_modelMsg3.content,useBatchFetch);case OPT_TRANS_CUSTOMIZE:if(useBatchFetch){var _ref23,_res$translations2;return(_ref23=(_res$translations2=res===null||res===void 0?void 0:res.translations)!==null&&_res$translations2!==void 0?_res$translations2:res)===null||_ref23===void 0?void 0:_ref23.map(item=>[item.text,item.src]);}return[[res.text,res.src||res.from]];default:}throw new Error("parse translate result: apiType not matched",apiType);};/** * 发送翻译请求并解析 * @param {*} param0 * @returns @@ -30844,7 +30850,7 @@ keyfrom:"webdict"});const init={headers:{accept:"application/json, text/plain, * * @param {*} param0 * @returns */const apiTranslate=async _ref2=>{let{text,fromLang="auto",toLang,apiSetting=DEFAULT_API_SETTING,docInfo={},glossary,useCache=true,usePool=true}=_ref2;if(!text){throw new Error("The text cannot be empty.");}const{apiType,apiSlug,useBatchFetch}=apiSetting;const langMap=OPT_LANGS_TO_SPEC[apiType]||OPT_LANGS_SPEC_DEFAULT;const from=langMap.get(fromLang);const to=langMap.get(toLang);if(!to){throw new Error("The target lang: ".concat(toLang," not support"));}// todo: 优化缓存失效因素 -const[v1,v2]="2.0.8".split(".");const cacheOpts={apiSlug,text,fromLang,toLang,version:[v1,v2].join(".")};const cacheInput="".concat(URL_CACHE_TRAN,"?").concat(query_string.stringify(cacheOpts));// 查询缓存数据 +const[v1,v2]="2.0.9".split(".");const cacheOpts={apiSlug,text,fromLang,toLang,version:[v1,v2].join(".")};const cacheInput="".concat(URL_CACHE_TRAN,"?").concat(query_string.stringify(cacheOpts));// 查询缓存数据 if(useCache){const cache=await getHttpCachePolyfill(cacheInput);if(cache!==null&&cache!==void 0&&cache.trText){return cache;}}// 请求接口数据 let tranlation=[];if(apiType===OPT_TRANS_BUILTINAI){tranlation=await apiBuiltinAITranslate({text,from,to,apiSetting});}else if(useBatchFetch&&API_SPE_TYPES.batch.has(apiType)){const{apiSlug,batchInterval,batchSize,batchLength}=apiSetting;const key="".concat(apiSlug,"_").concat(fromLang,"_").concat(toLang);const queue=getBatchQueue(key,handleTranslate,{batchInterval,batchSize,batchLength});tranlation=await queue.addTask(text,{from,to,fromLang,toLang,langMap,docInfo,glossary,apiSetting,usePool});}else{[tranlation]=await handleTranslate([text],{from,to,fromLang,toLang,langMap,docInfo,glossary,apiSetting,usePool});}let trText="";let srLang="";let srCode="";if(Array.isArray(tranlation)){[trText,srLang=""]=tranlation;if(srLang){srCode=OPT_LANGS_TO_CODE[apiType].get(srLang)||"";}}else if(typeof tranlation==="string"){trText=tranlation;}if(!trText){throw new Error("tanslate api got empty trtext");}const isSame=fromLang==="auto"&&srLang===to;// 插入缓存 if(useCache){putHttpCachePolyfill(cacheInput,null,{trText,isSame,srLang,srCode});}return{trText,srLang,srCode,isSame};};// 字幕处理/翻译 @@ -33684,7 +33690,7 @@ var n = {}; return t.length === e && "." !== t && ".." !== t; }; }, - te = "object" === ("undefined" == typeof process ? "undefined" : Nt(process)) && process ? "object" === Nt(({"NODE_ENV":"production","PUBLIC_URL":"","WDS_SOCKET_HOST":undefined,"WDS_SOCKET_PATH":undefined,"WDS_SOCKET_PORT":undefined,"FAST_REFRESH":true,"REACT_APP_CLIENT":"userscript","REACT_APP_NAME":"KISS Translator","REACT_APP_NAME_CN":"简约翻译","REACT_APP_VERSION":"2.0.8","REACT_APP_HOMEPAGE":"https://github.com/fishjar/kiss-translator","REACT_APP_OPTIONSPAGE":"https://fishjar.github.io/kiss-translator/options.html","REACT_APP_OPTIONSPAGE_DEV":"http://localhost:3000/options.html","REACT_APP_LOGOURL":"https://fishjar.github.io/kiss-translator/images/logo192.png","REACT_APP_RULESURL":"https://fishjar.github.io/kiss-rules/kiss-rules_v2.json","REACT_APP_RULESURL_ON":"https://fishjar.github.io/kiss-rules/kiss-rules-on_v2.json","REACT_APP_RULESURL_OFF":"https://fishjar.github.io/kiss-rules/kiss-rules-off_v2.json","REACT_APP_USERSCRIPT_DOWNLOADURL":"https://fishjar.github.io/kiss-translator/kiss-translator.user.js","REACT_APP_USERSCRIPT_IOS_DOWNLOADURL":"https://fishjar.github.io/kiss-translator/kiss-translator-ios-safari.user.js"})) && ({"NODE_ENV":"production","PUBLIC_URL":"","WDS_SOCKET_HOST":undefined,"WDS_SOCKET_PATH":undefined,"WDS_SOCKET_PORT":undefined,"FAST_REFRESH":true,"REACT_APP_CLIENT":"userscript","REACT_APP_NAME":"KISS Translator","REACT_APP_NAME_CN":"简约翻译","REACT_APP_VERSION":"2.0.8","REACT_APP_HOMEPAGE":"https://github.com/fishjar/kiss-translator","REACT_APP_OPTIONSPAGE":"https://fishjar.github.io/kiss-translator/options.html","REACT_APP_OPTIONSPAGE_DEV":"http://localhost:3000/options.html","REACT_APP_LOGOURL":"https://fishjar.github.io/kiss-translator/images/logo192.png","REACT_APP_RULESURL":"https://fishjar.github.io/kiss-rules/kiss-rules_v2.json","REACT_APP_RULESURL_ON":"https://fishjar.github.io/kiss-rules/kiss-rules-on_v2.json","REACT_APP_RULESURL_OFF":"https://fishjar.github.io/kiss-rules/kiss-rules-off_v2.json","REACT_APP_USERSCRIPT_DOWNLOADURL":"https://fishjar.github.io/kiss-translator/kiss-translator.user.js","REACT_APP_USERSCRIPT_IOS_DOWNLOADURL":"https://fishjar.github.io/kiss-translator/kiss-translator-ios-safari.user.js"}) && ({"NODE_ENV":"production","PUBLIC_URL":"","WDS_SOCKET_HOST":undefined,"WDS_SOCKET_PATH":undefined,"WDS_SOCKET_PORT":undefined,"FAST_REFRESH":true,"REACT_APP_CLIENT":"userscript","REACT_APP_NAME":"KISS Translator","REACT_APP_NAME_CN":"简约翻译","REACT_APP_VERSION":"2.0.8","REACT_APP_HOMEPAGE":"https://github.com/fishjar/kiss-translator","REACT_APP_OPTIONSPAGE":"https://fishjar.github.io/kiss-translator/options.html","REACT_APP_OPTIONSPAGE_DEV":"http://localhost:3000/options.html","REACT_APP_LOGOURL":"https://fishjar.github.io/kiss-translator/images/logo192.png","REACT_APP_RULESURL":"https://fishjar.github.io/kiss-rules/kiss-rules_v2.json","REACT_APP_RULESURL_ON":"https://fishjar.github.io/kiss-rules/kiss-rules-on_v2.json","REACT_APP_RULESURL_OFF":"https://fishjar.github.io/kiss-rules/kiss-rules-off_v2.json","REACT_APP_USERSCRIPT_DOWNLOADURL":"https://fishjar.github.io/kiss-translator/kiss-translator.user.js","REACT_APP_USERSCRIPT_IOS_DOWNLOADURL":"https://fishjar.github.io/kiss-translator/kiss-translator-ios-safari.user.js"}).__MINIMATCH_TESTING_PLATFORM__ || process.platform : "posix"; + te = "object" === ("undefined" == typeof process ? "undefined" : Nt(process)) && process ? "object" === Nt(({"NODE_ENV":"production","PUBLIC_URL":"","WDS_SOCKET_HOST":undefined,"WDS_SOCKET_PATH":undefined,"WDS_SOCKET_PORT":undefined,"FAST_REFRESH":true,"REACT_APP_CLIENT":"userscript","REACT_APP_NAME":"KISS Translator","REACT_APP_NAME_CN":"简约翻译","REACT_APP_VERSION":"2.0.9","REACT_APP_HOMEPAGE":"https://github.com/fishjar/kiss-translator","REACT_APP_OPTIONSPAGE":"https://fishjar.github.io/kiss-translator/options.html","REACT_APP_OPTIONSPAGE_DEV":"http://localhost:3000/options.html","REACT_APP_LOGOURL":"https://fishjar.github.io/kiss-translator/images/logo192.png","REACT_APP_RULESURL":"https://fishjar.github.io/kiss-rules/kiss-rules_v2.json","REACT_APP_RULESURL_ON":"https://fishjar.github.io/kiss-rules/kiss-rules-on_v2.json","REACT_APP_RULESURL_OFF":"https://fishjar.github.io/kiss-rules/kiss-rules-off_v2.json","REACT_APP_USERSCRIPT_DOWNLOADURL":"https://fishjar.github.io/kiss-translator/kiss-translator.user.js","REACT_APP_USERSCRIPT_IOS_DOWNLOADURL":"https://fishjar.github.io/kiss-translator/kiss-translator-ios-safari.user.js"})) && ({"NODE_ENV":"production","PUBLIC_URL":"","WDS_SOCKET_HOST":undefined,"WDS_SOCKET_PATH":undefined,"WDS_SOCKET_PORT":undefined,"FAST_REFRESH":true,"REACT_APP_CLIENT":"userscript","REACT_APP_NAME":"KISS Translator","REACT_APP_NAME_CN":"简约翻译","REACT_APP_VERSION":"2.0.9","REACT_APP_HOMEPAGE":"https://github.com/fishjar/kiss-translator","REACT_APP_OPTIONSPAGE":"https://fishjar.github.io/kiss-translator/options.html","REACT_APP_OPTIONSPAGE_DEV":"http://localhost:3000/options.html","REACT_APP_LOGOURL":"https://fishjar.github.io/kiss-translator/images/logo192.png","REACT_APP_RULESURL":"https://fishjar.github.io/kiss-rules/kiss-rules_v2.json","REACT_APP_RULESURL_ON":"https://fishjar.github.io/kiss-rules/kiss-rules-on_v2.json","REACT_APP_RULESURL_OFF":"https://fishjar.github.io/kiss-rules/kiss-rules-off_v2.json","REACT_APP_USERSCRIPT_DOWNLOADURL":"https://fishjar.github.io/kiss-translator/kiss-translator.user.js","REACT_APP_USERSCRIPT_IOS_DOWNLOADURL":"https://fishjar.github.io/kiss-translator/kiss-translator-ios-safari.user.js"}) && ({"NODE_ENV":"production","PUBLIC_URL":"","WDS_SOCKET_HOST":undefined,"WDS_SOCKET_PATH":undefined,"WDS_SOCKET_PORT":undefined,"FAST_REFRESH":true,"REACT_APP_CLIENT":"userscript","REACT_APP_NAME":"KISS Translator","REACT_APP_NAME_CN":"简约翻译","REACT_APP_VERSION":"2.0.9","REACT_APP_HOMEPAGE":"https://github.com/fishjar/kiss-translator","REACT_APP_OPTIONSPAGE":"https://fishjar.github.io/kiss-translator/options.html","REACT_APP_OPTIONSPAGE_DEV":"http://localhost:3000/options.html","REACT_APP_LOGOURL":"https://fishjar.github.io/kiss-translator/images/logo192.png","REACT_APP_RULESURL":"https://fishjar.github.io/kiss-rules/kiss-rules_v2.json","REACT_APP_RULESURL_ON":"https://fishjar.github.io/kiss-rules/kiss-rules-on_v2.json","REACT_APP_RULESURL_OFF":"https://fishjar.github.io/kiss-rules/kiss-rules-off_v2.json","REACT_APP_USERSCRIPT_DOWNLOADURL":"https://fishjar.github.io/kiss-translator/kiss-translator.user.js","REACT_APP_USERSCRIPT_IOS_DOWNLOADURL":"https://fishjar.github.io/kiss-translator/kiss-translator-ios-safari.user.js"}).__MINIMATCH_TESTING_PLATFORM__ || process.platform : "posix"; It.sep = "win32" === te ? "\\" : "/"; var ee = Symbol("globstar **"); It.GLOBSTAR = ee; @@ -35499,7 +35505,7 @@ textStyle:type(textStyle)==="string"&&textStyle.trim()!==""?textStyle.trim():GLO splitParagraph:matchValue([GLOBAL_KEY,...OPT_SPLIT_PARAGRAPH_ALL],splitParagraph),splitLength:Number.isInteger(splitLength)?splitLength:0,highlightWords:matchValue([GLOBAL_KEY,...OPT_HIGHLIGHT_WORDS_ALL],highlightWords)};});return rules;};/** * 保存或更新rule * @param {*} curRule - */const saveRule=async curRule=>{const rules=await getRulesWithDefault();const index=rules.findIndex(item=>item.pattern!==GLOBAL_KEY&&isMatch(curRule.pattern,item.pattern));if(index!==-1){const rule=rules.splice(index,1)[0];curRule=_objectSpread2(_objectSpread2(_objectSpread2({},rule),curRule),{},{pattern:rule.pattern});}const newRule={};Object.entries(GLOBLA_RULE).forEach(_ref4=>{let[key,val]=_ref4;newRule[key]=!curRule[key]||curRule[key]===val?DEFAULT_RULE[key]:curRule[key];});rules.unshift(newRule);await setRules(rules);trySyncRules();}; + */const saveRule=async curRule=>{const rules=await getRulesWithDefault();const index=rules.findIndex(item=>item.pattern!==GLOBAL_KEY&&isMatch(curRule.pattern,item.pattern));if(index!==-1){const rule=rules.splice(index,1)[0];curRule=_objectSpread2(_objectSpread2(_objectSpread2({},rule),curRule),{},{pattern:rule.pattern});}const newRule={};const globalRule=_objectSpread2(_objectSpread2({},GLOBLA_RULE),rules.find(r=>r.pattern===GLOBAL_KEY)||{});Object.keys(GLOBLA_RULE).forEach(key=>{newRule[key]=!curRule[key]||curRule[key]===globalRule[key]?DEFAULT_RULE[key]:curRule[key];});rules.unshift(newRule);await setRules(rules);trySyncRules();}; ;// CONCATENATED MODULE: ./src/libs/blacklist.js /** * 检查是否在黑名单中 @@ -35575,19 +35581,23 @@ var jsx_runtime = __webpack_require__(7394); ;// CONCATENATED MODULE: ./src/libs/shadowDomManager.js var _hostElement=/*#__PURE__*/_classPrivateFieldKey("hostElement");var _reactRoot=/*#__PURE__*/_classPrivateFieldKey("reactRoot");var _isVisible=/*#__PURE__*/_classPrivateFieldKey("isVisible");var _isProcessing=/*#__PURE__*/_classPrivateFieldKey("isProcessing");var _mount=/*#__PURE__*/_classPrivateFieldKey("mount");class ShadowDomManager{constructor(_ref){let{id,className="",reactComponent,props:_props={},rootElement=document.body}=_ref;Object.defineProperty(this,_mount,{value:_mount2});Object.defineProperty(this,_hostElement,{writable:true,value:null});Object.defineProperty(this,_reactRoot,{writable:true,value:null});Object.defineProperty(this,_isVisible,{writable:true,value:false});Object.defineProperty(this,_isProcessing,{writable:true,value:false});if(!id||!reactComponent){throw new Error("ID and a React Component must be provided.");}this._id=id;this._className=className;this._ReactComponent=reactComponent;this._props=_props;this._rootElement=rootElement;}get isVisible(){return _classPrivateFieldBase(this,_isVisible)[_isVisible];}show(props){if(_classPrivateFieldBase(this,_isVisible)[_isVisible]||_classPrivateFieldBase(this,_isProcessing)[_isProcessing]){return;}if(!_classPrivateFieldBase(this,_hostElement)[_hostElement]){_classPrivateFieldBase(this,_isProcessing)[_isProcessing]=true;try{_classPrivateFieldBase(this,_mount)[_mount](props||this._props);}catch(error){logger.warn("Failed to mount component with id \"".concat(this._id,"\":"),error);_classPrivateFieldBase(this,_isProcessing)[_isProcessing]=false;return;}finally{_classPrivateFieldBase(this,_isProcessing)[_isProcessing]=false;}}_classPrivateFieldBase(this,_hostElement)[_hostElement].style.display="";_classPrivateFieldBase(this,_isVisible)[_isVisible]=true;}hide(){if(!_classPrivateFieldBase(this,_isVisible)[_isVisible]||!_classPrivateFieldBase(this,_hostElement)[_hostElement]){return;}_classPrivateFieldBase(this,_hostElement)[_hostElement].style.display="none";_classPrivateFieldBase(this,_isVisible)[_isVisible]=false;}destroy(){if(!_classPrivateFieldBase(this,_hostElement)[_hostElement]){return;}_classPrivateFieldBase(this,_isProcessing)[_isProcessing]=true;if(_classPrivateFieldBase(this,_reactRoot)[_reactRoot]){_classPrivateFieldBase(this,_reactRoot)[_reactRoot].unmount();}_classPrivateFieldBase(this,_hostElement)[_hostElement].remove();_classPrivateFieldBase(this,_hostElement)[_hostElement]=null;_classPrivateFieldBase(this,_reactRoot)[_reactRoot]=null;_classPrivateFieldBase(this,_isVisible)[_isVisible]=false;_classPrivateFieldBase(this,_isProcessing)[_isProcessing]=false;logger.info("Component with id \"".concat(this._id,"\" has been destroyed."));}toggle(props){if(_classPrivateFieldBase(this,_isVisible)[_isVisible]){this.hide();}else{this.show(props||this._props);}}}function _mount2(props){const host=document.createElement("div");host.id=this._id;if(this._className){host.className=this._className;}this._rootElement.appendChild(host);_classPrivateFieldBase(this,_hostElement)[_hostElement]=host;const shadowContainer=host.attachShadow({mode:"open"});const appRoot=document.createElement("div");appRoot.className="".concat(this._id,"_wrapper");shadowContainer.appendChild(appRoot);const cache=(0,emotion_cache_browser_esm/* default */.Z)({key:this._id,prepend:true,container:shadowContainer});const enhancedProps=_objectSpread2(_objectSpread2({},props),{},{onClose:this.hide.bind(this)});const ComponentToRender=this._ReactComponent;_classPrivateFieldBase(this,_reactRoot)[_reactRoot]=react_dom_client.createRoot(appRoot);_classPrivateFieldBase(this,_reactRoot)[_reactRoot].render(/*#__PURE__*/(0,jsx_runtime.jsx)(react.StrictMode,{children:/*#__PURE__*/(0,jsx_runtime.jsx)(emotion_element_c39617d8_browser_esm.C,{value:cache,children:/*#__PURE__*/(0,jsx_runtime.jsx)(ComponentToRender,_objectSpread2({},enhancedProps))})}));} ;// CONCATENATED MODULE: ./src/subtitle/Menus.js -function Label(_ref){let{children}=_ref;return/*#__PURE__*/(0,jsx_runtime.jsx)("div",{style:{overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:children});}function MenuItem(_ref2){let{children,onClick,disabled=false}=_ref2;const[hover,setHover]=(0,react.useState)(false);return/*#__PURE__*/(0,jsx_runtime.jsx)("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"center",padding:"0px 8px",opacity:hover?1:0.8,background:"rgba(255, 255, 255, ".concat(hover?0.1:0,")"),cursor:disabled?"default":"pointer",transition:"background 0.2s, opacity 0.2s",borderRadius:5},onMouseEnter:()=>setHover(true),onMouseLeave:()=>setHover(false),onClick:onClick,children:children});}function Switch(_ref3){let{label,name,value,onChange,disabled}=_ref3;const handleClick=(0,react.useCallback)(()=>{if(disabled)return;onChange({name,value:!value});},[disabled,onChange,name,value]);return/*#__PURE__*/(0,jsx_runtime.jsxs)(MenuItem,{onClick:handleClick,disabled:disabled,children:[/*#__PURE__*/(0,jsx_runtime.jsx)(Label,{children:label}),/*#__PURE__*/(0,jsx_runtime.jsx)("div",{style:{width:40,height:24,borderRadius:12,background:value?"rgba(32,156,238,.8)":"rgba(255,255,255,.3)",position:"relative"},children:/*#__PURE__*/(0,jsx_runtime.jsx)("div",{style:{width:20,height:20,borderRadius:10,position:"absolute",left:2,top:2,background:"rgba(255,255,255,.9)",transform:"translateX(".concat(value?16:0,"px)")}})})]});}function Button(_ref4){let{label,onClick,disabled}=_ref4;const handleClick=(0,react.useCallback)(()=>{if(disabled)return;onClick();},[disabled,onClick]);return/*#__PURE__*/(0,jsx_runtime.jsx)(MenuItem,{onClick:handleClick,disabled:disabled,children:/*#__PURE__*/(0,jsx_runtime.jsx)(Label,{children:label})});}function Menus(_ref5){let{i18n,initData,updateSetting,downloadSubtitle,hasSegApi,eventName}=_ref5;const[formData,setFormData]=(0,react.useState)(initData);const[progressed,setProgressed]=(0,react.useState)(0);const handleChange=(0,react.useCallback)(_ref6=>{let{name,value}=_ref6;setFormData(pre=>_objectSpread2(_objectSpread2({},pre),{},{[name]:value}));updateSetting({name,value});},[updateSetting]);(0,react.useEffect)(()=>{const handler=e=>{const{action,data}=e.detail||{};if(action===MSG_MENUS_PROGRESSED){setProgressed(data);}else if(action===MSG_MENUS_UPDATEFORM){setFormData(pre=>_objectSpread2(_objectSpread2({},pre),data));}};window.addEventListener(eventName,handler);return()=>window.removeEventListener(eventName,handler);},[eventName]);const status=(0,react.useMemo)(()=>{if(progressed===0)return i18n("waiting_subtitles");if(progressed===100)return i18n("download_subtitles");return i18n("processing_subtitles");},[progressed,i18n]);const{isAISegment,skipAd,isBilingual}=formData;return/*#__PURE__*/(0,jsx_runtime.jsxs)("div",{style:{position:"absolute",left:0,bottom:100,background:"rgba(0,0,0,.6)",width:200,lineHeight:"40px",fontSize:16,padding:8,borderRadius:5},children:[/*#__PURE__*/(0,jsx_runtime.jsx)(Switch,{onChange:handleChange,name:"isAISegment",value:isAISegment,label:i18n("ai_segmentation"),disabled:!hasSegApi}),/*#__PURE__*/(0,jsx_runtime.jsx)(Switch,{onChange:handleChange,name:"isBilingual",value:isBilingual,label:i18n("is_bilingual_view")}),/*#__PURE__*/(0,jsx_runtime.jsx)(Switch,{onChange:handleChange,name:"skipAd",value:skipAd,label:i18n("is_skip_ad")}),/*#__PURE__*/(0,jsx_runtime.jsx)(Button,{label:"".concat(status," [").concat(progressed,"%] "),onClick:downloadSubtitle,disabled:progressed!==100})]});} +function Label(_ref){let{children}=_ref;return/*#__PURE__*/(0,jsx_runtime.jsx)("div",{style:{overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:children});}function MenuItem(_ref2){let{children,onClick,disabled=false}=_ref2;const[hover,setHover]=(0,react.useState)(false);return/*#__PURE__*/(0,jsx_runtime.jsx)("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"center",padding:"0px 8px",opacity:hover?1:0.8,background:"rgba(255, 255, 255, ".concat(hover?0.1:0,")"),cursor:disabled?"default":"pointer",transition:"background 0.2s, opacity 0.2s",borderRadius:5},onMouseEnter:()=>setHover(true),onMouseLeave:()=>setHover(false),onClick:onClick,children:children});}function Switch(_ref3){let{label,name,value,onChange,disabled}=_ref3;const handleClick=(0,react.useCallback)(()=>{if(disabled)return;onChange({name,value:!value});},[disabled,onChange,name,value]);return/*#__PURE__*/(0,jsx_runtime.jsxs)(MenuItem,{onClick:handleClick,disabled:disabled,children:[/*#__PURE__*/(0,jsx_runtime.jsx)(Label,{children:label}),/*#__PURE__*/(0,jsx_runtime.jsx)("div",{style:{width:40,height:24,borderRadius:12,background:value?"rgba(32,156,238,.8)":"rgba(255,255,255,.3)",position:"relative"},children:/*#__PURE__*/(0,jsx_runtime.jsx)("div",{style:{width:20,height:20,borderRadius:10,position:"absolute",left:2,top:2,background:"rgba(255,255,255,.9)",transform:"translateX(".concat(value?16:0,"px)")}})})]});}function Button(_ref4){let{label,onClick,disabled}=_ref4;const handleClick=(0,react.useCallback)(()=>{if(disabled)return;onClick();},[disabled,onClick]);return/*#__PURE__*/(0,jsx_runtime.jsx)(MenuItem,{onClick:handleClick,disabled:disabled,children:/*#__PURE__*/(0,jsx_runtime.jsx)(Label,{children:label})});}function Menus(_ref5){let{i18n,initData,updateSetting,downloadSubtitle,hasSegApi,eventName}=_ref5;const[formData,setFormData]=(0,react.useState)(initData);const[progressed,setProgressed]=(0,react.useState)(0);const handleChange=(0,react.useCallback)(_ref6=>{let{name,value}=_ref6;setFormData(pre=>_objectSpread2(_objectSpread2({},pre),{},{[name]:value}));updateSetting({name,value});},[updateSetting]);(0,react.useEffect)(()=>{const handler=e=>{const{action,data}=e.detail||{};if(action===MSG_MENUS_PROGRESSED){setProgressed(data);}else if(action===MSG_MENUS_UPDATEFORM){setFormData(pre=>_objectSpread2(_objectSpread2({},pre),data));}};window.addEventListener(eventName,handler);return()=>window.removeEventListener(eventName,handler);},[eventName]);const status=(0,react.useMemo)(()=>{if(progressed===0)return i18n("waiting_subtitles");if(progressed===100)return i18n("download_subtitles");return i18n("processing_subtitles");},[progressed,i18n]);const{isAISegment,skipAd,isBilingual,showOrigin}=formData;return/*#__PURE__*/(0,jsx_runtime.jsxs)("div",{style:{position:"absolute",left:0,bottom:100,background:"rgba(0,0,0,.6)",width:200,lineHeight:"40px",fontSize:16,padding:8,borderRadius:5},children:[/*#__PURE__*/(0,jsx_runtime.jsx)(Switch,{onChange:handleChange,name:"isAISegment",value:isAISegment,label:i18n("ai_segmentation"),disabled:!hasSegApi}),/*#__PURE__*/(0,jsx_runtime.jsx)(Switch,{onChange:handleChange,name:"isBilingual",value:isBilingual,label:i18n("is_bilingual_view")}),/*#__PURE__*/(0,jsx_runtime.jsx)(Switch,{onChange:handleChange,name:"showOrigin",value:showOrigin,label:i18n("show_origin_subtitle")}),/*#__PURE__*/(0,jsx_runtime.jsx)(Switch,{onChange:handleChange,name:"skipAd",value:skipAd,label:i18n("is_skip_ad")}),/*#__PURE__*/(0,jsx_runtime.jsx)(Button,{label:"".concat(status," [").concat(progressed,"%] "),onClick:downloadSubtitle,disabled:progressed!==100})]});} ;// CONCATENATED MODULE: ./src/subtitle/YouTubeCaptionProvider.js -const VIDEO_SELECT="#container video";const CONTORLS_SELECT=".ytp-right-controls";const YT_CAPTION_SELECT="#ytp-caption-window-container";const YT_AD_SELECT=".video-ads";const YT_SUBTITLE_BTN_SELECT="button.ytp-subtitles-button";var YouTubeCaptionProvider_setting=/*#__PURE__*/_classPrivateFieldKey("setting");var _subtitles=/*#__PURE__*/_classPrivateFieldKey("subtitles");var _flatEvents=/*#__PURE__*/_classPrivateFieldKey("flatEvents");var _progressedNum=/*#__PURE__*/_classPrivateFieldKey("progressedNum");var _fromLang=/*#__PURE__*/_classPrivateFieldKey("fromLang");var _processingId=/*#__PURE__*/_classPrivateFieldKey("processingId");var _managerInstance=/*#__PURE__*/_classPrivateFieldKey("managerInstance");var _toggleButton=/*#__PURE__*/_classPrivateFieldKey("toggleButton");var _isMenuShow=/*#__PURE__*/_classPrivateFieldKey("isMenuShow");var _notificationEl=/*#__PURE__*/_classPrivateFieldKey("notificationEl");var _notificationTimeout=/*#__PURE__*/_classPrivateFieldKey("notificationTimeout");var _i18n=/*#__PURE__*/_classPrivateFieldKey("i18n");var _menuEventName=/*#__PURE__*/_classPrivateFieldKey("menuEventName");var _videoId=/*#__PURE__*/_classPrivateFieldKey("videoId");var YouTubeCaptionProvider_videoEl=/*#__PURE__*/_classPrivateFieldKey("videoEl");var _progressed=/*#__PURE__*/_classPrivateFieldKey("progressed");var _moAds=/*#__PURE__*/_classPrivateFieldKey("moAds");var _waitForElement=/*#__PURE__*/_classPrivateFieldKey("waitForElement");var _sendMenusMsg=/*#__PURE__*/_classPrivateFieldKey("sendMenusMsg");var _injectToggleButton=/*#__PURE__*/_classPrivateFieldKey("injectToggleButton");var _isSameLang=/*#__PURE__*/_classPrivateFieldKey("isSameLang");var _findCaptionTrack=/*#__PURE__*/_classPrivateFieldKey("findCaptionTrack");var _getCaptionTracks=/*#__PURE__*/_classPrivateFieldKey("getCaptionTracks");var _getSubtitleEvents=/*#__PURE__*/_classPrivateFieldKey("getSubtitleEvents");var _aiSegment=/*#__PURE__*/_classPrivateFieldKey("aiSegment");var _handleInterceptedRequest=/*#__PURE__*/_classPrivateFieldKey("handleInterceptedRequest");var _processEvents=/*#__PURE__*/_classPrivateFieldKey("processEvents");var _reProcessEvents=/*#__PURE__*/_classPrivateFieldKey("reProcessEvents");var _eventsToSubtitles=/*#__PURE__*/_classPrivateFieldKey("eventsToSubtitles");var _startManager=/*#__PURE__*/_classPrivateFieldKey("startManager");var _destroyManager=/*#__PURE__*/_classPrivateFieldKey("destroyManager");var _formatSubtitles=/*#__PURE__*/_classPrivateFieldKey("formatSubtitles");var _isQualityPoor=/*#__PURE__*/_classPrivateFieldKey("isQualityPoor");var _processSubtitles=/*#__PURE__*/_classPrivateFieldKey("processSubtitles");var _genFlatEvents=/*#__PURE__*/_classPrivateFieldKey("genFlatEvents");var _splitEventsIntoChunks=/*#__PURE__*/_classPrivateFieldKey("splitEventsIntoChunks");var _processRemainingChunksAsync=/*#__PURE__*/_classPrivateFieldKey("processRemainingChunksAsync");var _createNotificationElement=/*#__PURE__*/_classPrivateFieldKey("createNotificationElement");var _showNotification=/*#__PURE__*/_classPrivateFieldKey("showNotification");class YouTubeCaptionProvider{constructor(){let setting=arguments.length>0&&arguments[0]!==undefined?arguments[0]:{};Object.defineProperty(this,_showNotification,{value:_showNotification2});Object.defineProperty(this,_createNotificationElement,{value:_createNotificationElement2});Object.defineProperty(this,_processRemainingChunksAsync,{value:_processRemainingChunksAsync2});Object.defineProperty(this,_splitEventsIntoChunks,{value:_splitEventsIntoChunks2});Object.defineProperty(this,_genFlatEvents,{value:_genFlatEvents2});Object.defineProperty(this,_processSubtitles,{value:_processSubtitles2});Object.defineProperty(this,_isQualityPoor,{value:_isQualityPoor2});Object.defineProperty(this,_formatSubtitles,{value:_formatSubtitles2});Object.defineProperty(this,_destroyManager,{value:_destroyManager2});Object.defineProperty(this,_startManager,{value:_startManager2});Object.defineProperty(this,_eventsToSubtitles,{value:_eventsToSubtitles2});Object.defineProperty(this,_reProcessEvents,{value:_reProcessEvents2});Object.defineProperty(this,_processEvents,{value:_processEvents2});Object.defineProperty(this,_handleInterceptedRequest,{value:_handleInterceptedRequest2});Object.defineProperty(this,_aiSegment,{value:_aiSegment2});Object.defineProperty(this,_getSubtitleEvents,{value:_getSubtitleEvents2});Object.defineProperty(this,_getCaptionTracks,{value:_getCaptionTracks2});// todo: 优化逻辑 -Object.defineProperty(this,_findCaptionTrack,{value:_findCaptionTrack2});Object.defineProperty(this,_isSameLang,{value:_isSameLang2});Object.defineProperty(this,_injectToggleButton,{value:_injectToggleButton2});Object.defineProperty(this,_sendMenusMsg,{value:_sendMenusMsg2});Object.defineProperty(this,_waitForElement,{value:_waitForElement2});Object.defineProperty(this,_moAds,{value:_moAds2});Object.defineProperty(this,_progressed,{get:_get_progressed,set:_set_progressed});Object.defineProperty(this,YouTubeCaptionProvider_videoEl,{get:_get_videoEl,set:void 0});Object.defineProperty(this,_videoId,{get:_get_videoId,set:void 0});Object.defineProperty(this,YouTubeCaptionProvider_setting,{writable:true,value:{}});Object.defineProperty(this,_subtitles,{writable:true,value:[]});Object.defineProperty(this,_flatEvents,{writable:true,value:[]});Object.defineProperty(this,_progressedNum,{writable:true,value:0});Object.defineProperty(this,_fromLang,{writable:true,value:"auto"});Object.defineProperty(this,_processingId,{writable:true,value:null});Object.defineProperty(this,_managerInstance,{writable:true,value:null});Object.defineProperty(this,_toggleButton,{writable:true,value:null});Object.defineProperty(this,_isMenuShow,{writable:true,value:false});Object.defineProperty(this,_notificationEl,{writable:true,value:null});Object.defineProperty(this,_notificationTimeout,{writable:true,value:null});Object.defineProperty(this,_i18n,{writable:true,value:()=>""});Object.defineProperty(this,_menuEventName,{writable:true,value:"kiss-event"});_classPrivateFieldBase(this,YouTubeCaptionProvider_setting)[YouTubeCaptionProvider_setting]=_objectSpread2(_objectSpread2({},setting),{},{isAISegment:false});_classPrivateFieldBase(this,_i18n)[_i18n]=newI18n(setting.uiLang||"zh");_classPrivateFieldBase(this,_menuEventName)[_menuEventName]=utils_genEventName();}initialize(){window.addEventListener("message",event=>{var _event$data;if(((_event$data=event.data)===null||_event$data===void 0?void 0:_event$data.type)===MSG_XHR_DATA_YOUTUBE){const{url,response}=event.data;if(url&&response){_classPrivateFieldBase(this,_handleInterceptedRequest)[_handleInterceptedRequest](url,response);}}});window.addEventListener("yt-navigate-finish",()=>{logger.debug("Youtube Provider: yt-navigate-finish",_classPrivateFieldBase(this,_videoId)[_videoId]);_classPrivateFieldBase(this,_destroyManager)[_destroyManager]();_classPrivateFieldBase(this,_subtitles)[_subtitles]=[];_classPrivateFieldBase(this,_flatEvents)[_flatEvents]=[];_classPrivateFieldBase(this,_progressed)[_progressed]=0;_classPrivateFieldBase(this,_fromLang)[_fromLang]="auto";_classPrivateFieldBase(this,YouTubeCaptionProvider_setting)[YouTubeCaptionProvider_setting].isAISegment=false;_classPrivateFieldBase(this,_sendMenusMsg)[_sendMenusMsg]({action:MSG_MENUS_UPDATEFORM,data:{isAISegment:false}});});_classPrivateFieldBase(this,_waitForElement)[_waitForElement](CONTORLS_SELECT,ytControls=>{const ytSubtitleBtn=ytControls.querySelector(YT_SUBTITLE_BTN_SELECT);if(ytSubtitleBtn){ytSubtitleBtn.addEventListener("click",()=>{if(ytSubtitleBtn.getAttribute("aria-pressed")==="true"){_classPrivateFieldBase(this,_startManager)[_startManager]();}else{_classPrivateFieldBase(this,_destroyManager)[_destroyManager]();}});}_classPrivateFieldBase(this,_injectToggleButton)[_injectToggleButton](ytControls);});_classPrivateFieldBase(this,_waitForElement)[_waitForElement](YT_AD_SELECT,adContainer=>{_classPrivateFieldBase(this,_moAds)[_moAds](adContainer);});}updateSetting(_ref){let{name,value}=_ref;if(_classPrivateFieldBase(this,YouTubeCaptionProvider_setting)[YouTubeCaptionProvider_setting][name]===value)return;logger.debug("Youtube Provider: update setting",name,value);_classPrivateFieldBase(this,YouTubeCaptionProvider_setting)[YouTubeCaptionProvider_setting][name]=value;if(name==="isBilingual"){var _classPrivateFieldLoo;(_classPrivateFieldLoo=_classPrivateFieldBase(this,_managerInstance)[_managerInstance])===null||_classPrivateFieldLoo===void 0?void 0:_classPrivateFieldLoo.updateSetting({[name]:value});}else if(name==="isAISegment"){_classPrivateFieldBase(this,_reProcessEvents)[_reProcessEvents]();}}downloadSubtitle(){if(!_classPrivateFieldBase(this,_subtitles)[_subtitles].length||_classPrivateFieldBase(this,_progressed)[_progressed]!==100){logger.debug("Youtube Provider: The subtitle is not yet ready.");return;}try{const vtt=buildBilingualVtt(_classPrivateFieldBase(this,_subtitles)[_subtitles]);downloadBlobFile(vtt,"kiss-subtitles-".concat(_classPrivateFieldBase(this,_videoId)[_videoId],"_").concat(Date.now(),".vtt"));}catch(error){logger.info("Youtube Provider: download subtitles:",error);}}}function _get_videoId(){const docUrl=new URL(document.location.href);return docUrl.searchParams.get("v");}function _get_videoEl(){return document.querySelector(VIDEO_SELECT);}function _set_progressed(num){_classPrivateFieldBase(this,_progressedNum)[_progressedNum]=num;_classPrivateFieldBase(this,_sendMenusMsg)[_sendMenusMsg]({action:MSG_MENUS_PROGRESSED,data:num});}function _get_progressed(){return _classPrivateFieldBase(this,_progressedNum)[_progressedNum];}function _moAds2(adContainer){const adLayoutSelector=".ytp-ad-player-overlay-layout";const skipBtnSelector=".ytp-skip-ad-button, .ytp-ad-skip-button, .ytp-ad-skip-button-modern";const observer=new MutationObserver(mutations=>{const{skipAd=false}=_classPrivateFieldBase(this,YouTubeCaptionProvider_setting)[YouTubeCaptionProvider_setting];for(const mutation of mutations){if(mutation.type==="childList"){const videoEl=_classPrivateFieldBase(this,YouTubeCaptionProvider_videoEl)[YouTubeCaptionProvider_videoEl];mutation.addedNodes.forEach(node=>{if(node.nodeType!==Node.ELEMENT_NODE)return;if(node.matches(adLayoutSelector)){logger.debug("Youtube Provider: AD start playing!",node);// todo: 顺带把广告快速跳过 -if(videoEl&&skipAd){videoEl.playbackRate=16;videoEl.currentTime=videoEl.duration;}if(_classPrivateFieldBase(this,_managerInstance)[_managerInstance]){_classPrivateFieldBase(this,_managerInstance)[_managerInstance].setIsAdPlaying(true);}}else if(node.matches(skipBtnSelector)&&skipAd){logger.debug("Youtube Provider: AD skip button!",node);node.click();}if(skipAd){const skipBtn=node===null||node===void 0?void 0:node.querySelector(skipBtnSelector);if(skipBtn){logger.debug("Youtube Provider: AD skip button!!",skipBtn);skipBtn.click();}}});mutation.removedNodes.forEach(node=>{if(node.nodeType!==Node.ELEMENT_NODE)return;if(node.matches(adLayoutSelector)){logger.debug("Youtube Provider: Ad ends!");if(videoEl&&skipAd){videoEl.playbackRate=1;}if(_classPrivateFieldBase(this,_managerInstance)[_managerInstance]){_classPrivateFieldBase(this,_managerInstance)[_managerInstance].setIsAdPlaying(false);}}});}}});observer.observe(adContainer,{childList:true,subtree:true});}function _waitForElement2(selector,callback){const element=document.querySelector(selector);if(element){callback(element);return;}const observer=new MutationObserver((mutations,obs)=>{const targetNode=document.querySelector(selector);if(targetNode){obs.disconnect();callback(targetNode);}});observer.observe(document.body,{childList:true,subtree:true});}function _sendMenusMsg2(_ref2){let{action,data}=_ref2;window.dispatchEvent(new CustomEvent(_classPrivateFieldBase(this,_menuEventName)[_menuEventName],{detail:{action,data}}));}function _injectToggleButton2(ytControls){const kissControls=document.createElement("div");kissControls.className="notranslate kiss-subtitle-controls";Object.assign(kissControls.style,{height:"100%",position:"relative"});const toggleButton=document.createElement("button");toggleButton.className="ytp-button kiss-subtitle-button";toggleButton.title=APP_NAME;toggleButton.appendChild(createLogoSVG());kissControls.appendChild(toggleButton);const{segApiSetting,isAISegment,skipAd,isBilingual}=_classPrivateFieldBase(this,YouTubeCaptionProvider_setting)[YouTubeCaptionProvider_setting];const menu=new ShadowDomManager({id:"kiss-subtitle-menus",className:"notranslate",reactComponent:Menus,rootElement:kissControls,props:{i18n:_classPrivateFieldBase(this,_i18n)[_i18n],updateSetting:this.updateSetting.bind(this),downloadSubtitle:this.downloadSubtitle.bind(this),hasSegApi:!!segApiSetting,eventName:_classPrivateFieldBase(this,_menuEventName)[_menuEventName],initData:{isAISegment,skipAd,isBilingual}}});toggleButton.onclick=()=>{if(!_classPrivateFieldBase(this,_isMenuShow)[_isMenuShow]){var _classPrivateFieldLoo2;_classPrivateFieldBase(this,_isMenuShow)[_isMenuShow]=true;(_classPrivateFieldLoo2=_classPrivateFieldBase(this,_toggleButton)[_toggleButton])===null||_classPrivateFieldLoo2===void 0?void 0:_classPrivateFieldLoo2.replaceChildren(createLogoSVG({isSelected:true}));menu.show();}else{var _classPrivateFieldLoo3;_classPrivateFieldBase(this,_isMenuShow)[_isMenuShow]=false;(_classPrivateFieldLoo3=_classPrivateFieldBase(this,_toggleButton)[_toggleButton])===null||_classPrivateFieldLoo3===void 0?void 0:_classPrivateFieldLoo3.replaceChildren(createLogoSVG());menu.hide();}};_classPrivateFieldBase(this,_toggleButton)[_toggleButton]=toggleButton;ytControls===null||ytControls===void 0?void 0:ytControls.prepend(kissControls);}function _isSameLang2(lang1,lang2){return lang1.slice(0,2)===lang2.slice(0,2);}function _findCaptionTrack2(captionTracks){if(!(captionTracks!==null&&captionTracks!==void 0&&captionTracks.length)){return null;}let captionTrack=null;const asrTrack=captionTracks.find(item=>item.kind==="asr");if(asrTrack){captionTrack=captionTracks.find(item=>item.kind!=="asr"&&_classPrivateFieldBase(this,_isSameLang)[_isSameLang](item.languageCode,asrTrack.languageCode));if(!captionTrack){captionTrack=asrTrack;}}if(!captionTrack){captionTrack=captionTracks.pop();}return captionTrack;}async function _getCaptionTracks2(videoId){try{var _data$captions,_data$captions$player;const url="https://www.youtube.com/watch?v=".concat(videoId);const html=await fetch(url).then(r=>r.text());const match=html.match(/ytInitialPlayerResponse\s*=\s*(\{[\s\S]*?\});/);if(!match)return[];const data=JSON.parse(match[1]);return(_data$captions=data.captions)===null||_data$captions===void 0?void 0:(_data$captions$player=_data$captions.playerCaptionsTracklistRenderer)===null||_data$captions$player===void 0?void 0:_data$captions$player.captionTracks;}catch(err){logger.info("Youtube Provider: get captionTracks",err);}}async function _getSubtitleEvents2(capUrl,potUrl,responseText){if(!potUrl.searchParams.get("tlang")&&potUrl.searchParams.get("kind")===capUrl.searchParams.get("kind")&&_classPrivateFieldBase(this,_isSameLang)[_isSameLang](potUrl.searchParams.get("lang"),capUrl.searchParams.get("lang"))){try{const json=JSON.parse(responseText);return json===null||json===void 0?void 0:json.events;}catch(err){logger.info("Youtube Provider: parse responseText",err);return null;}}try{potUrl.searchParams.delete("tlang");potUrl.searchParams.set("lang",capUrl.searchParams.get("lang"));potUrl.searchParams.set("fmt","json3");if(capUrl.searchParams.get("kind")){potUrl.searchParams.set("kind",capUrl.searchParams.get("kind"));}else{potUrl.searchParams.delete("kind");}const res=await fetch(potUrl.href);if(res!==null&&res!==void 0&&res.ok){const json=await res.json();return json===null||json===void 0?void 0:json.events;}logger.info("Youtube Provider: Failed to fetch subtitles: ".concat(res.status));return null;}catch(error){logger.info("Youtube Provider: fetching subtitles error",error);return null;}}async function _aiSegment2(_ref3){let{videoId,fromLang,toLang,chunkEvents,segApiSetting}=_ref3;try{const events=chunkEvents.filter(item=>item.text);const chunkSign="".concat(events[0].start," --> ").concat(events[events.length-1].end);logger.debug("Youtube Provider: aiSegment events",{videoId,chunkSign,fromLang,toLang,events});const subtitles=await apiSubtitle({videoId,chunkSign,fromLang,toLang,events,apiSetting:segApiSetting});logger.debug("Youtube Provider: aiSegment subtitles",subtitles);if(Array.isArray(subtitles)){return subtitles;}}catch(err){logger.info("Youtube Provider: ai segmentation",err);}return[];}async function _handleInterceptedRequest2(url,responseText){const videoId=_classPrivateFieldBase(this,_videoId)[_videoId];if(!videoId){logger.debug("Youtube Provider: videoId not found.");return;}const potUrl=new URL(url);if(videoId!==potUrl.searchParams.get("v")){logger.debug("Youtube Provider: skip other timedtext:",videoId);return;}if(_classPrivateFieldBase(this,_flatEvents)[_flatEvents].length){logger.debug("Youtube Provider: video was processed:",videoId);return;}if(videoId===_classPrivateFieldBase(this,_processingId)[_processingId]){logger.debug("Youtube Provider: video is processing:",videoId);return;}_classPrivateFieldBase(this,_processingId)[_processingId]=videoId;try{_classPrivateFieldBase(this,_showNotification)[_showNotification](_classPrivateFieldBase(this,_i18n)[_i18n]("starting_to_process_subtitle"));const{toLang}=_classPrivateFieldBase(this,YouTubeCaptionProvider_setting)[YouTubeCaptionProvider_setting];const captionTracks=await _classPrivateFieldBase(this,_getCaptionTracks)[_getCaptionTracks](videoId);const captionTrack=_classPrivateFieldBase(this,_findCaptionTrack)[_findCaptionTrack](captionTracks);if(!captionTrack){logger.debug("Youtube Provider: CaptionTrack not found:",videoId);return;}const capUrl=new URL(captionTrack.baseUrl);const events=await _classPrivateFieldBase(this,_getSubtitleEvents)[_getSubtitleEvents](capUrl,potUrl,responseText);if(!(events!==null&&events!==void 0&&events.length)){logger.debug("Youtube Provider: events not got:",videoId);return;}const lang=potUrl.searchParams.get("lang");const fromLang=OPT_LANGS_TO_CODE[OPT_TRANS_MICROSOFT].get(lang)||OPT_LANGS_TO_CODE[OPT_TRANS_MICROSOFT].get(lang.slice(0,2))||"auto";logger.debug("Youtube Provider: fromLang: ".concat(fromLang,", toLang: ").concat(toLang));if(_classPrivateFieldBase(this,_isSameLang)[_isSameLang](fromLang,toLang)){logger.debug("Youtube Provider: skip same lang",fromLang,toLang);return;}const flatEvents=_classPrivateFieldBase(this,_genFlatEvents)[_genFlatEvents](events);if(!(flatEvents!==null&&flatEvents!==void 0&&flatEvents.length)){logger.debug("Youtube Provider: flatEvents not got:",videoId);return;}_classPrivateFieldBase(this,_flatEvents)[_flatEvents]=flatEvents;_classPrivateFieldBase(this,_fromLang)[_fromLang]=fromLang;_classPrivateFieldBase(this,_processEvents)[_processEvents]({videoId,flatEvents,fromLang});}catch(error){logger.warn("Youtube Provider: handle subtitle",error);_classPrivateFieldBase(this,_showNotification)[_showNotification](_classPrivateFieldBase(this,_i18n)[_i18n]("subtitle_load_failed"));}finally{_classPrivateFieldBase(this,_processingId)[_processingId]=null;}}async function _processEvents2(_ref4){let{videoId,flatEvents,fromLang}=_ref4;try{const[subtitles,progressed]=await _classPrivateFieldBase(this,_eventsToSubtitles)[_eventsToSubtitles]({videoId,flatEvents,fromLang});if(!(subtitles!==null&&subtitles!==void 0&&subtitles.length)){logger.debug("Youtube Provider: events to subtitles got empty",videoId);return;}if(videoId!==_classPrivateFieldBase(this,_videoId)[_videoId]){logger.debug("Youtube Provider: videoId changed!",videoId,_classPrivateFieldBase(this,_videoId)[_videoId]);return;}_classPrivateFieldBase(this,_subtitles)[_subtitles]=subtitles;_classPrivateFieldBase(this,_progressed)[_progressed]=progressed;_classPrivateFieldBase(this,_startManager)[_startManager]();}catch(error){logger.info("Youtube Provider: process events",error);_classPrivateFieldBase(this,_showNotification)[_showNotification](_classPrivateFieldBase(this,_i18n)[_i18n]("subtitle_load_failed"));}}function _reProcessEvents2(){const videoId=_classPrivateFieldBase(this,_videoId)[_videoId];const flatEvents=_classPrivateFieldBase(this,_flatEvents)[_flatEvents];const fromLang=_classPrivateFieldBase(this,_fromLang)[_fromLang];if(!videoId||!flatEvents.length){return;}_classPrivateFieldBase(this,_showNotification)[_showNotification](_classPrivateFieldBase(this,_i18n)[_i18n]("starting_reprocess_events"));_classPrivateFieldBase(this,_destroyManager)[_destroyManager]();_classPrivateFieldBase(this,_processEvents)[_processEvents]({videoId,flatEvents,fromLang});}async function _eventsToSubtitles2(_ref5){let{videoId,flatEvents,fromLang}=_ref5;const{isAISegment,segApiSetting,chunkLength,toLang}=_classPrivateFieldBase(this,YouTubeCaptionProvider_setting)[YouTubeCaptionProvider_setting];const subtitlesFallback=()=>[_classPrivateFieldBase(this,_formatSubtitles)[_formatSubtitles](flatEvents,fromLang),100];// potUrl.searchParams.get("kind") === "asr" -if(isAISegment&&segApiSetting){logger.info("Youtube Provider: Starting AI ...");_classPrivateFieldBase(this,_showNotification)[_showNotification](_classPrivateFieldBase(this,_i18n)[_i18n]("ai_processing_pls_wait"));const eventChunks=_classPrivateFieldBase(this,_splitEventsIntoChunks)[_splitEventsIntoChunks](flatEvents,chunkLength);if(eventChunks.length===0){return subtitlesFallback();}const firstChunkEvents=eventChunks[0];const firstBatchSubtitles=await _classPrivateFieldBase(this,_aiSegment)[_aiSegment]({videoId,chunkEvents:firstChunkEvents,fromLang,toLang,segApiSetting});if(!(firstBatchSubtitles!==null&&firstBatchSubtitles!==void 0&&firstBatchSubtitles.length)){return subtitlesFallback();}const chunkCount=eventChunks.length;if(chunkCount>1){const remainingChunks=eventChunks.slice(1);_classPrivateFieldBase(this,_processRemainingChunksAsync)[_processRemainingChunksAsync]({chunks:remainingChunks,chunkCount,videoId,fromLang,toLang,segApiSetting});return[firstBatchSubtitles,100/eventChunks.length];}else{return[firstBatchSubtitles,100];}}return subtitlesFallback();}function _startManager2(){if(_classPrivateFieldBase(this,_managerInstance)[_managerInstance]){return;}if(!_classPrivateFieldBase(this,_subtitles)[_subtitles].length){_classPrivateFieldBase(this,_showNotification)[_showNotification](_classPrivateFieldBase(this,_i18n)[_i18n]("waitting_for_subtitle"));return;}const videoEl=_classPrivateFieldBase(this,YouTubeCaptionProvider_videoEl)[YouTubeCaptionProvider_videoEl];if(!videoEl){logger.warn("Youtube Provider: No video element found");return;}logger.info("Youtube Provider: Starting manager...");_classPrivateFieldBase(this,_managerInstance)[_managerInstance]=new BilingualSubtitleManager({videoEl,formattedSubtitles:_classPrivateFieldBase(this,_subtitles)[_subtitles],setting:_objectSpread2(_objectSpread2({},_classPrivateFieldBase(this,YouTubeCaptionProvider_setting)[YouTubeCaptionProvider_setting]),{},{fromLang:_classPrivateFieldBase(this,_fromLang)[_fromLang]})});_classPrivateFieldBase(this,_managerInstance)[_managerInstance].start();_classPrivateFieldBase(this,_showNotification)[_showNotification](_classPrivateFieldBase(this,_i18n)[_i18n]("subtitle_load_succeed"));const ytCaption=document.querySelector(YT_CAPTION_SELECT);ytCaption&&(ytCaption.style.display="none");}function _destroyManager2(){if(!_classPrivateFieldBase(this,_managerInstance)[_managerInstance]){return;}logger.info("Youtube Provider: Destroying manager...");_classPrivateFieldBase(this,_managerInstance)[_managerInstance].destroy();_classPrivateFieldBase(this,_managerInstance)[_managerInstance]=null;const ytCaption=document.querySelector(YT_CAPTION_SELECT);ytCaption&&(ytCaption.style.display="block");}function _formatSubtitles2(flatEvents,lang){if(!(flatEvents!==null&&flatEvents!==void 0&&flatEvents.length))return[];const noSpaceLanguages=["zh",// 中文 +const VIDEO_SELECT="#container video";const CONTORLS_SELECT=".ytp-right-controls";const YT_CAPTION_SELECT="#ytp-caption-window-container";const YT_AD_SELECT=".video-ads";const YT_SUBTITLE_BTN_SELECT="button.ytp-subtitles-button";var YouTubeCaptionProvider_setting=/*#__PURE__*/_classPrivateFieldKey("setting");var _subtitles=/*#__PURE__*/_classPrivateFieldKey("subtitles");var _flatEvents=/*#__PURE__*/_classPrivateFieldKey("flatEvents");var _progressedNum=/*#__PURE__*/_classPrivateFieldKey("progressedNum");var _fromLang=/*#__PURE__*/_classPrivateFieldKey("fromLang");var _processingId=/*#__PURE__*/_classPrivateFieldKey("processingId");var _managerInstance=/*#__PURE__*/_classPrivateFieldKey("managerInstance");var _toggleButton=/*#__PURE__*/_classPrivateFieldKey("toggleButton");var _isMenuShow=/*#__PURE__*/_classPrivateFieldKey("isMenuShow");var _notificationEl=/*#__PURE__*/_classPrivateFieldKey("notificationEl");var _notificationTimeout=/*#__PURE__*/_classPrivateFieldKey("notificationTimeout");var _i18n=/*#__PURE__*/_classPrivateFieldKey("i18n");var _menuEventName=/*#__PURE__*/_classPrivateFieldKey("menuEventName");var _videoId=/*#__PURE__*/_classPrivateFieldKey("videoId");var YouTubeCaptionProvider_videoEl=/*#__PURE__*/_classPrivateFieldKey("videoEl");var _progressed=/*#__PURE__*/_classPrivateFieldKey("progressed");var _moAds=/*#__PURE__*/_classPrivateFieldKey("moAds");var _waitForElement=/*#__PURE__*/_classPrivateFieldKey("waitForElement");var _toggleShowOrigin=/*#__PURE__*/_classPrivateFieldKey("toggleShowOrigin");var _sendMenusMsg=/*#__PURE__*/_classPrivateFieldKey("sendMenusMsg");var _injectToggleButton=/*#__PURE__*/_classPrivateFieldKey("injectToggleButton");var _isSameLang=/*#__PURE__*/_classPrivateFieldKey("isSameLang");var _findCaptionTrack=/*#__PURE__*/_classPrivateFieldKey("findCaptionTrack");var _getCaptionTracks=/*#__PURE__*/_classPrivateFieldKey("getCaptionTracks");var _getSubtitleEvents=/*#__PURE__*/_classPrivateFieldKey("getSubtitleEvents");var _aiSegment=/*#__PURE__*/_classPrivateFieldKey("aiSegment");var _handleInterceptedRequest=/*#__PURE__*/_classPrivateFieldKey("handleInterceptedRequest");var _processEvents=/*#__PURE__*/_classPrivateFieldKey("processEvents");var _reProcessEvents=/*#__PURE__*/_classPrivateFieldKey("reProcessEvents");var _eventsToSubtitles=/*#__PURE__*/_classPrivateFieldKey("eventsToSubtitles");var _startManager=/*#__PURE__*/_classPrivateFieldKey("startManager");var _destroyManager=/*#__PURE__*/_classPrivateFieldKey("destroyManager");var _hideYtCaption=/*#__PURE__*/_classPrivateFieldKey("hideYtCaption");var _showYtCaption=/*#__PURE__*/_classPrivateFieldKey("showYtCaption");var _formatSubtitles=/*#__PURE__*/_classPrivateFieldKey("formatSubtitles");var _isQualityPoor=/*#__PURE__*/_classPrivateFieldKey("isQualityPoor");var _processSubtitles=/*#__PURE__*/_classPrivateFieldKey("processSubtitles");var _genFlatEvents=/*#__PURE__*/_classPrivateFieldKey("genFlatEvents");var _splitEventsIntoChunks=/*#__PURE__*/_classPrivateFieldKey("splitEventsIntoChunks");var _processRemainingChunksAsync=/*#__PURE__*/_classPrivateFieldKey("processRemainingChunksAsync");var _createNotificationElement=/*#__PURE__*/_classPrivateFieldKey("createNotificationElement");var _showNotification=/*#__PURE__*/_classPrivateFieldKey("showNotification");class YouTubeCaptionProvider{constructor(){let setting=arguments.length>0&&arguments[0]!==undefined?arguments[0]:{};Object.defineProperty(this,_showNotification,{value:_showNotification2});Object.defineProperty(this,_createNotificationElement,{value:_createNotificationElement2});Object.defineProperty(this,_processRemainingChunksAsync,{value:_processRemainingChunksAsync2});Object.defineProperty(this,_splitEventsIntoChunks,{value:_splitEventsIntoChunks2});Object.defineProperty(this,_genFlatEvents,{value:_genFlatEvents2});Object.defineProperty(this,_processSubtitles,{value:_processSubtitles2});Object.defineProperty(this,_isQualityPoor,{value:_isQualityPoor2});Object.defineProperty(this,_formatSubtitles,{value:_formatSubtitles2});Object.defineProperty(this,_showYtCaption,{value:_showYtCaption2});Object.defineProperty(this,_hideYtCaption,{value:_hideYtCaption2});Object.defineProperty(this,_destroyManager,{value:_destroyManager2});Object.defineProperty(this,_startManager,{value:_startManager2});Object.defineProperty(this,_eventsToSubtitles,{value:_eventsToSubtitles2});Object.defineProperty(this,_reProcessEvents,{value:_reProcessEvents2});Object.defineProperty(this,_processEvents,{value:_processEvents2});Object.defineProperty(this,_handleInterceptedRequest,{value:_handleInterceptedRequest2});Object.defineProperty(this,_aiSegment,{value:_aiSegment2});Object.defineProperty(this,_getSubtitleEvents,{value:_getSubtitleEvents2});Object.defineProperty(this,_getCaptionTracks,{value:_getCaptionTracks2});// todo: 优化逻辑 +Object.defineProperty(this,_findCaptionTrack,{value:_findCaptionTrack2});Object.defineProperty(this,_isSameLang,{value:_isSameLang2});Object.defineProperty(this,_injectToggleButton,{value:_injectToggleButton2});Object.defineProperty(this,_sendMenusMsg,{value:_sendMenusMsg2});Object.defineProperty(this,_toggleShowOrigin,{value:_toggleShowOrigin2});Object.defineProperty(this,_waitForElement,{value:_waitForElement2});Object.defineProperty(this,_moAds,{value:_moAds2});Object.defineProperty(this,_progressed,{get:_get_progressed,set:_set_progressed});Object.defineProperty(this,YouTubeCaptionProvider_videoEl,{get:_get_videoEl,set:void 0});Object.defineProperty(this,_videoId,{get:_get_videoId,set:void 0});Object.defineProperty(this,YouTubeCaptionProvider_setting,{writable:true,value:{}});Object.defineProperty(this,_subtitles,{writable:true,value:[]});Object.defineProperty(this,_flatEvents,{writable:true,value:[]});Object.defineProperty(this,_progressedNum,{writable:true,value:0});Object.defineProperty(this,_fromLang,{writable:true,value:"auto"});Object.defineProperty(this,_processingId,{writable:true,value:null});Object.defineProperty(this,_managerInstance,{writable:true,value:null});Object.defineProperty(this,_toggleButton,{writable:true,value:null});Object.defineProperty(this,_isMenuShow,{writable:true,value:false});Object.defineProperty(this,_notificationEl,{writable:true,value:null});Object.defineProperty(this,_notificationTimeout,{writable:true,value:null});Object.defineProperty(this,_i18n,{writable:true,value:()=>""});Object.defineProperty(this,_menuEventName,{writable:true,value:"kiss-event"});_classPrivateFieldBase(this,YouTubeCaptionProvider_setting)[YouTubeCaptionProvider_setting]=_objectSpread2(_objectSpread2({},setting),{},{isAISegment:false,showOrigin:false});_classPrivateFieldBase(this,_i18n)[_i18n]=newI18n(setting.uiLang||"zh");_classPrivateFieldBase(this,_menuEventName)[_menuEventName]=utils_genEventName();}initialize(){window.addEventListener("message",event=>{var _event$data;if(((_event$data=event.data)===null||_event$data===void 0?void 0:_event$data.type)===MSG_XHR_DATA_YOUTUBE){const{url,response}=event.data;if(url&&response){_classPrivateFieldBase(this,_handleInterceptedRequest)[_handleInterceptedRequest](url,response);}}});window.addEventListener("yt-navigate-finish",()=>{logger.debug("Youtube Provider: yt-navigate-finish",_classPrivateFieldBase(this,_videoId)[_videoId]);_classPrivateFieldBase(this,_destroyManager)[_destroyManager]();_classPrivateFieldBase(this,_subtitles)[_subtitles]=[];_classPrivateFieldBase(this,_flatEvents)[_flatEvents]=[];_classPrivateFieldBase(this,_progressed)[_progressed]=0;_classPrivateFieldBase(this,_fromLang)[_fromLang]="auto";_classPrivateFieldBase(this,YouTubeCaptionProvider_setting)[YouTubeCaptionProvider_setting].isAISegment=false;_classPrivateFieldBase(this,_sendMenusMsg)[_sendMenusMsg]({action:MSG_MENUS_UPDATEFORM,data:{isAISegment:false}});});_classPrivateFieldBase(this,_waitForElement)[_waitForElement](CONTORLS_SELECT,ytControls=>{const ytSubtitleBtn=ytControls.querySelector(YT_SUBTITLE_BTN_SELECT);if(ytSubtitleBtn){ytSubtitleBtn.addEventListener("click",()=>{if(ytSubtitleBtn.getAttribute("aria-pressed")==="true"){_classPrivateFieldBase(this,_startManager)[_startManager]();}else{_classPrivateFieldBase(this,_destroyManager)[_destroyManager]();}});}_classPrivateFieldBase(this,_injectToggleButton)[_injectToggleButton](ytControls);});_classPrivateFieldBase(this,_waitForElement)[_waitForElement](YT_AD_SELECT,adContainer=>{_classPrivateFieldBase(this,_moAds)[_moAds](adContainer);});}updateSetting(_ref){let{name,value}=_ref;if(_classPrivateFieldBase(this,YouTubeCaptionProvider_setting)[YouTubeCaptionProvider_setting][name]===value)return;logger.debug("Youtube Provider: update setting",name,value);_classPrivateFieldBase(this,YouTubeCaptionProvider_setting)[YouTubeCaptionProvider_setting][name]=value;if(name==="isBilingual"){var _classPrivateFieldLoo;(_classPrivateFieldLoo=_classPrivateFieldBase(this,_managerInstance)[_managerInstance])===null||_classPrivateFieldLoo===void 0?void 0:_classPrivateFieldLoo.updateSetting({[name]:value});}else if(name==="isAISegment"){_classPrivateFieldBase(this,_reProcessEvents)[_reProcessEvents]();}else if(name==="showOrigin"){_classPrivateFieldBase(this,_toggleShowOrigin)[_toggleShowOrigin]();}}downloadSubtitle(){if(!_classPrivateFieldBase(this,_subtitles)[_subtitles].length||_classPrivateFieldBase(this,_progressed)[_progressed]!==100){logger.debug("Youtube Provider: The subtitle is not yet ready.");return;}try{const vtt=buildBilingualVtt(_classPrivateFieldBase(this,_subtitles)[_subtitles]);downloadBlobFile(vtt,"kiss-subtitles-".concat(_classPrivateFieldBase(this,_videoId)[_videoId],"_").concat(Date.now(),".vtt"));}catch(error){logger.info("Youtube Provider: download subtitles:",error);}}}function _get_videoId(){const docUrl=new URL(document.location.href);return docUrl.searchParams.get("v");}function _get_videoEl(){return document.querySelector(VIDEO_SELECT);}function _set_progressed(num){_classPrivateFieldBase(this,_progressedNum)[_progressedNum]=num;_classPrivateFieldBase(this,_sendMenusMsg)[_sendMenusMsg]({action:MSG_MENUS_PROGRESSED,data:num});}function _get_progressed(){return _classPrivateFieldBase(this,_progressedNum)[_progressedNum];}function _moAds2(adContainer){const adLayoutSelector=".ytp-ad-player-overlay-layout";const skipBtnSelector=".ytp-skip-ad-button, .ytp-ad-skip-button, .ytp-ad-skip-button-modern";const observer=new MutationObserver(mutations=>{const{skipAd=false}=_classPrivateFieldBase(this,YouTubeCaptionProvider_setting)[YouTubeCaptionProvider_setting];for(const mutation of mutations){if(mutation.type==="childList"){const videoEl=_classPrivateFieldBase(this,YouTubeCaptionProvider_videoEl)[YouTubeCaptionProvider_videoEl];mutation.addedNodes.forEach(node=>{if(node.nodeType!==Node.ELEMENT_NODE)return;if(node.matches(adLayoutSelector)){logger.debug("Youtube Provider: AD start playing!",node);// todo: 顺带把广告快速跳过 +if(videoEl&&skipAd){videoEl.playbackRate=16;videoEl.currentTime=videoEl.duration;}if(_classPrivateFieldBase(this,_managerInstance)[_managerInstance]){_classPrivateFieldBase(this,_managerInstance)[_managerInstance].setIsAdPlaying(true);}}else if(node.matches(skipBtnSelector)&&skipAd){logger.debug("Youtube Provider: AD skip button!",node);node.click();}if(skipAd){const skipBtn=node===null||node===void 0?void 0:node.querySelector(skipBtnSelector);if(skipBtn){logger.debug("Youtube Provider: AD skip button!!",skipBtn);skipBtn.click();}}});mutation.removedNodes.forEach(node=>{if(node.nodeType!==Node.ELEMENT_NODE)return;if(node.matches(adLayoutSelector)){logger.debug("Youtube Provider: Ad ends!");if(!_classPrivateFieldBase(this,YouTubeCaptionProvider_setting)[YouTubeCaptionProvider_setting].showOrigin){_classPrivateFieldBase(this,_hideYtCaption)[_hideYtCaption]();}if(videoEl&&skipAd){videoEl.playbackRate=1;}if(_classPrivateFieldBase(this,_managerInstance)[_managerInstance]){_classPrivateFieldBase(this,_managerInstance)[_managerInstance].setIsAdPlaying(false);}}});}}});observer.observe(adContainer,{childList:true,subtree:true});}function _waitForElement2(selector,callback){const element=document.querySelector(selector);if(element){callback(element);return;}const observer=new MutationObserver((mutations,obs)=>{const targetNode=document.querySelector(selector);if(targetNode){obs.disconnect();callback(targetNode);}});observer.observe(document.body,{childList:true,subtree:true});}function _toggleShowOrigin2(){if(_classPrivateFieldBase(this,YouTubeCaptionProvider_setting)[YouTubeCaptionProvider_setting].showOrigin){_classPrivateFieldBase(this,_destroyManager)[_destroyManager]();}else{_classPrivateFieldBase(this,_startManager)[_startManager]();}}function _sendMenusMsg2(_ref2){let{action,data}=_ref2;window.dispatchEvent(new CustomEvent(_classPrivateFieldBase(this,_menuEventName)[_menuEventName],{detail:{action,data}}));}function _injectToggleButton2(ytControls){const kissControls=document.createElement("div");kissControls.className="notranslate kiss-subtitle-controls";Object.assign(kissControls.style,{height:"100%",position:"relative"});const toggleButton=document.createElement("button");toggleButton.className="ytp-button kiss-subtitle-button";toggleButton.title=APP_NAME;toggleButton.appendChild(createLogoSVG());kissControls.appendChild(toggleButton);const{segApiSetting,isAISegment,skipAd,isBilingual,showOrigin}=_classPrivateFieldBase(this,YouTubeCaptionProvider_setting)[YouTubeCaptionProvider_setting];const menu=new ShadowDomManager({id:"kiss-subtitle-menus",className:"notranslate",reactComponent:Menus,rootElement:kissControls,props:{i18n:_classPrivateFieldBase(this,_i18n)[_i18n],updateSetting:this.updateSetting.bind(this),downloadSubtitle:this.downloadSubtitle.bind(this),hasSegApi:!!segApiSetting,eventName:_classPrivateFieldBase(this,_menuEventName)[_menuEventName],initData:{isAISegment,// AI智能断句 +skipAd,// 快进广告 +isBilingual,// 双语显示 +showOrigin// 显示原字幕 +}}});toggleButton.onclick=()=>{if(!_classPrivateFieldBase(this,_isMenuShow)[_isMenuShow]){var _classPrivateFieldLoo2;_classPrivateFieldBase(this,_isMenuShow)[_isMenuShow]=true;(_classPrivateFieldLoo2=_classPrivateFieldBase(this,_toggleButton)[_toggleButton])===null||_classPrivateFieldLoo2===void 0?void 0:_classPrivateFieldLoo2.replaceChildren(createLogoSVG({isSelected:true}));menu.show();_classPrivateFieldBase(this,_sendMenusMsg)[_sendMenusMsg]({action:MSG_MENUS_PROGRESSED,data:_classPrivateFieldBase(this,_progressed)[_progressed]});}else{var _classPrivateFieldLoo3;_classPrivateFieldBase(this,_isMenuShow)[_isMenuShow]=false;(_classPrivateFieldLoo3=_classPrivateFieldBase(this,_toggleButton)[_toggleButton])===null||_classPrivateFieldLoo3===void 0?void 0:_classPrivateFieldLoo3.replaceChildren(createLogoSVG());menu.hide();}};_classPrivateFieldBase(this,_toggleButton)[_toggleButton]=toggleButton;ytControls===null||ytControls===void 0?void 0:ytControls.prepend(kissControls);}function _isSameLang2(lang1,lang2){return lang1.slice(0,2)===lang2.slice(0,2);}function _findCaptionTrack2(captionTracks){if(!(captionTracks!==null&&captionTracks!==void 0&&captionTracks.length)){return null;}let captionTrack=null;const asrTrack=captionTracks.find(item=>item.kind==="asr");if(asrTrack){captionTrack=captionTracks.find(item=>item.kind!=="asr"&&_classPrivateFieldBase(this,_isSameLang)[_isSameLang](item.languageCode,asrTrack.languageCode));if(!captionTrack){captionTrack=asrTrack;}}if(!captionTrack){captionTrack=captionTracks.pop();}return captionTrack;}async function _getCaptionTracks2(videoId){try{var _data$captions,_data$captions$player;const url="https://www.youtube.com/watch?v=".concat(videoId);const html=await fetch(url).then(r=>r.text());const match=html.match(/ytInitialPlayerResponse\s*=\s*(\{[\s\S]*?\});/);if(!match)return[];const data=JSON.parse(match[1]);return(_data$captions=data.captions)===null||_data$captions===void 0?void 0:(_data$captions$player=_data$captions.playerCaptionsTracklistRenderer)===null||_data$captions$player===void 0?void 0:_data$captions$player.captionTracks;}catch(err){logger.info("Youtube Provider: get captionTracks",err);}}async function _getSubtitleEvents2(capUrl,potUrl,responseText){if(!potUrl.searchParams.get("tlang")&&potUrl.searchParams.get("kind")===capUrl.searchParams.get("kind")&&_classPrivateFieldBase(this,_isSameLang)[_isSameLang](potUrl.searchParams.get("lang"),capUrl.searchParams.get("lang"))){try{const json=JSON.parse(responseText);return json===null||json===void 0?void 0:json.events;}catch(err){logger.info("Youtube Provider: parse responseText",err);return null;}}try{potUrl.searchParams.delete("tlang");potUrl.searchParams.set("lang",capUrl.searchParams.get("lang"));potUrl.searchParams.set("fmt","json3");if(capUrl.searchParams.get("kind")){potUrl.searchParams.set("kind",capUrl.searchParams.get("kind"));}else{potUrl.searchParams.delete("kind");}const res=await fetch(potUrl.href);if(res!==null&&res!==void 0&&res.ok){const json=await res.json();return json===null||json===void 0?void 0:json.events;}logger.info("Youtube Provider: Failed to fetch subtitles: ".concat(res.status));return null;}catch(error){logger.info("Youtube Provider: fetching subtitles error",error);return null;}}async function _aiSegment2(_ref3){let{videoId,fromLang,toLang,chunkEvents,segApiSetting}=_ref3;try{const events=chunkEvents.filter(item=>item.text);const chunkSign="".concat(events[0].start," --> ").concat(events[events.length-1].end);logger.debug("Youtube Provider: aiSegment events",{videoId,chunkSign,fromLang,toLang,events});const subtitles=await apiSubtitle({videoId,chunkSign,fromLang,toLang,events,apiSetting:segApiSetting});logger.debug("Youtube Provider: aiSegment subtitles",subtitles);if(Array.isArray(subtitles)){return subtitles;}}catch(err){logger.info("Youtube Provider: ai segmentation",err);}return[];}async function _handleInterceptedRequest2(url,responseText){const videoId=_classPrivateFieldBase(this,_videoId)[_videoId];if(!videoId){logger.debug("Youtube Provider: videoId not found.");return;}const potUrl=new URL(url);if(videoId!==potUrl.searchParams.get("v")){logger.debug("Youtube Provider: skip other timedtext:",videoId);return;}if(_classPrivateFieldBase(this,_flatEvents)[_flatEvents].length){logger.debug("Youtube Provider: video was processed:",videoId);return;}if(videoId===_classPrivateFieldBase(this,_processingId)[_processingId]){logger.debug("Youtube Provider: video is processing:",videoId);return;}_classPrivateFieldBase(this,_processingId)[_processingId]=videoId;try{_classPrivateFieldBase(this,_showNotification)[_showNotification](_classPrivateFieldBase(this,_i18n)[_i18n]("starting_to_process_subtitle"));const{toLang}=_classPrivateFieldBase(this,YouTubeCaptionProvider_setting)[YouTubeCaptionProvider_setting];const captionTracks=await _classPrivateFieldBase(this,_getCaptionTracks)[_getCaptionTracks](videoId);const captionTrack=_classPrivateFieldBase(this,_findCaptionTrack)[_findCaptionTrack](captionTracks);if(!captionTrack){logger.debug("Youtube Provider: CaptionTrack not found:",videoId);return;}const capUrl=new URL(captionTrack.baseUrl);const events=await _classPrivateFieldBase(this,_getSubtitleEvents)[_getSubtitleEvents](capUrl,potUrl,responseText);if(!(events!==null&&events!==void 0&&events.length)){logger.debug("Youtube Provider: events not got:",videoId);return;}const lang=potUrl.searchParams.get("lang");const fromLang=OPT_LANGS_TO_CODE[OPT_TRANS_MICROSOFT].get(lang)||OPT_LANGS_TO_CODE[OPT_TRANS_MICROSOFT].get(lang.slice(0,2))||"auto";logger.debug("Youtube Provider: fromLang: ".concat(fromLang,", toLang: ").concat(toLang));if(_classPrivateFieldBase(this,_isSameLang)[_isSameLang](fromLang,toLang)){logger.debug("Youtube Provider: skip same lang",fromLang,toLang);return;}const flatEvents=_classPrivateFieldBase(this,_genFlatEvents)[_genFlatEvents](events);if(!(flatEvents!==null&&flatEvents!==void 0&&flatEvents.length)){logger.debug("Youtube Provider: flatEvents not got:",videoId);return;}_classPrivateFieldBase(this,_flatEvents)[_flatEvents]=flatEvents;_classPrivateFieldBase(this,_fromLang)[_fromLang]=fromLang;_classPrivateFieldBase(this,_processEvents)[_processEvents]({videoId,flatEvents,fromLang});}catch(error){logger.warn("Youtube Provider: handle subtitle",error);_classPrivateFieldBase(this,_showNotification)[_showNotification](_classPrivateFieldBase(this,_i18n)[_i18n]("subtitle_load_failed"));}finally{_classPrivateFieldBase(this,_processingId)[_processingId]=null;}}async function _processEvents2(_ref4){let{videoId,flatEvents,fromLang}=_ref4;try{const[subtitles,progressed]=await _classPrivateFieldBase(this,_eventsToSubtitles)[_eventsToSubtitles]({videoId,flatEvents,fromLang});if(!(subtitles!==null&&subtitles!==void 0&&subtitles.length)){logger.debug("Youtube Provider: events to subtitles got empty",videoId);return;}if(videoId!==_classPrivateFieldBase(this,_videoId)[_videoId]){logger.debug("Youtube Provider: videoId changed!",videoId,_classPrivateFieldBase(this,_videoId)[_videoId]);return;}_classPrivateFieldBase(this,_subtitles)[_subtitles]=subtitles;_classPrivateFieldBase(this,_progressed)[_progressed]=progressed;_classPrivateFieldBase(this,_startManager)[_startManager]();}catch(error){logger.info("Youtube Provider: process events",error);_classPrivateFieldBase(this,_showNotification)[_showNotification](_classPrivateFieldBase(this,_i18n)[_i18n]("subtitle_load_failed"));}}function _reProcessEvents2(){_classPrivateFieldBase(this,_progressed)[_progressed]=0;_classPrivateFieldBase(this,_subtitles)[_subtitles]=[];const videoId=_classPrivateFieldBase(this,_videoId)[_videoId];const flatEvents=_classPrivateFieldBase(this,_flatEvents)[_flatEvents];const fromLang=_classPrivateFieldBase(this,_fromLang)[_fromLang];if(!videoId||!flatEvents.length){return;}_classPrivateFieldBase(this,_showNotification)[_showNotification](_classPrivateFieldBase(this,_i18n)[_i18n]("starting_reprocess_events"));_classPrivateFieldBase(this,_destroyManager)[_destroyManager]();_classPrivateFieldBase(this,_processEvents)[_processEvents]({videoId,flatEvents,fromLang});}async function _eventsToSubtitles2(_ref5){let{videoId,flatEvents,fromLang}=_ref5;const{isAISegment,segApiSetting,chunkLength,toLang}=_classPrivateFieldBase(this,YouTubeCaptionProvider_setting)[YouTubeCaptionProvider_setting];const subtitlesFallback=()=>[_classPrivateFieldBase(this,_formatSubtitles)[_formatSubtitles](flatEvents,fromLang),100];// potUrl.searchParams.get("kind") === "asr" +if(isAISegment&&segApiSetting){logger.info("Youtube Provider: Starting AI ...");_classPrivateFieldBase(this,_showNotification)[_showNotification](_classPrivateFieldBase(this,_i18n)[_i18n]("ai_processing_pls_wait"));const eventChunks=_classPrivateFieldBase(this,_splitEventsIntoChunks)[_splitEventsIntoChunks](flatEvents,chunkLength);if(eventChunks.length===0){return subtitlesFallback();}const firstChunkEvents=eventChunks[0];const firstBatchSubtitles=await _classPrivateFieldBase(this,_aiSegment)[_aiSegment]({videoId,chunkEvents:firstChunkEvents,fromLang,toLang,segApiSetting});if(!(firstBatchSubtitles!==null&&firstBatchSubtitles!==void 0&&firstBatchSubtitles.length)){return subtitlesFallback();}if(eventChunks.length>1){const remainingChunks=eventChunks.slice(1);_classPrivateFieldBase(this,_processRemainingChunksAsync)[_processRemainingChunksAsync]({chunks:remainingChunks,videoId,fromLang,toLang,segApiSetting});const processed=Math.floor(100/eventChunks.length);return[firstBatchSubtitles,processed];}else{return[firstBatchSubtitles,100];}}return subtitlesFallback();}function _startManager2(){if(_classPrivateFieldBase(this,_managerInstance)[_managerInstance]){return;}if(_classPrivateFieldBase(this,YouTubeCaptionProvider_setting)[YouTubeCaptionProvider_setting].showOrigin){return;}if(!_classPrivateFieldBase(this,_subtitles)[_subtitles].length){_classPrivateFieldBase(this,_showNotification)[_showNotification](_classPrivateFieldBase(this,_i18n)[_i18n]("waitting_for_subtitle"));return;}const videoEl=_classPrivateFieldBase(this,YouTubeCaptionProvider_videoEl)[YouTubeCaptionProvider_videoEl];if(!videoEl){logger.warn("Youtube Provider: No video element found");return;}logger.info("Youtube Provider: Starting manager...");_classPrivateFieldBase(this,_managerInstance)[_managerInstance]=new BilingualSubtitleManager({videoEl,formattedSubtitles:_classPrivateFieldBase(this,_subtitles)[_subtitles],setting:_objectSpread2(_objectSpread2({},_classPrivateFieldBase(this,YouTubeCaptionProvider_setting)[YouTubeCaptionProvider_setting]),{},{fromLang:_classPrivateFieldBase(this,_fromLang)[_fromLang]})});_classPrivateFieldBase(this,_managerInstance)[_managerInstance].start();_classPrivateFieldBase(this,_showNotification)[_showNotification](_classPrivateFieldBase(this,_i18n)[_i18n]("subtitle_load_succeed"));_classPrivateFieldBase(this,_hideYtCaption)[_hideYtCaption]();}function _destroyManager2(){if(!_classPrivateFieldBase(this,_managerInstance)[_managerInstance]){return;}logger.info("Youtube Provider: Destroying manager...");_classPrivateFieldBase(this,_managerInstance)[_managerInstance].destroy();_classPrivateFieldBase(this,_managerInstance)[_managerInstance]=null;_classPrivateFieldBase(this,_showYtCaption)[_showYtCaption]();}function _hideYtCaption2(){const ytCaption=document.querySelector(YT_CAPTION_SELECT);ytCaption&&(ytCaption.style.display="none");}function _showYtCaption2(){const ytCaption=document.querySelector(YT_CAPTION_SELECT);ytCaption&&(ytCaption.style.display="block");}function _formatSubtitles2(flatEvents,lang){if(!(flatEvents!==null&&flatEvents!==void 0&&flatEvents.length))return[];const noSpaceLanguages=["zh",// 中文 "ja",// 日文 "ko",// 韩文(现代用空格,但结构上仍可连写) "th",// 泰文 "lo",// 老挝文 "km",// 高棉文 "my"// 缅文 -];if(noSpaceLanguages.some(l=>lang===null||lang===void 0?void 0:lang.startsWith(l))){const subtitles=[];let currentLine=null;const MAX_LENGTH=100;for(const segment of flatEvents){if(segment.text){if(!currentLine){currentLine={text:segment.text,start:segment.start,end:segment.end};}else{currentLine.text+=segment.text;currentLine.end=segment.end;}if(currentLine.text.length>=MAX_LENGTH){subtitles.push(currentLine);currentLine=null;}}else{if(currentLine){subtitles.push(currentLine);currentLine=null;}}}if(currentLine){subtitles.push(currentLine);}return subtitles;}let subtitles=_classPrivateFieldBase(this,_processSubtitles)[_processSubtitles]({flatEvents});const isPoor=_classPrivateFieldBase(this,_isQualityPoor)[_isQualityPoor](subtitles);logger.debug("Youtube Provider: isQualityPoor",{isPoor,subtitles});if(isPoor){subtitles=_classPrivateFieldBase(this,_processSubtitles)[_processSubtitles]({flatEvents,usePause:true});}return subtitles;}function _isQualityPoor2(lines){let lengthThreshold=arguments.length>1&&arguments[1]!==undefined?arguments[1]:250;let percentageThreshold=arguments.length>2&&arguments[2]!==undefined?arguments[2]:0.2;if(lines.length===0)return false;const longLinesCount=lines.filter(line=>line.text.length>lengthThreshold).length;return longLinesCount/lines.length>percentageThreshold;}function _processSubtitles2(){let{flatEvents,usePause=false,timeout=1000,maxWords=15}=arguments.length>0&&arguments[0]!==undefined?arguments[0]:{};const groupedPauseWords={1:new Set(["actually","also","although","and","anyway","as","basically","because","but","eventually","frankly","honestly","hopefully","however","if","instead","it's","just","let's","like","literally","maybe","meanwhile","nevertheless","nonetheless","now","okay","or","otherwise","perhaps","personally","probably","right","since","so","suddenly","that's","then","there's","therefore","though","thus","unless","until","well","while"]),2:new Set(["after all","at first","at least","even if","even though","for example","for instance","i believe","i guess","i mean","i suppose","i think","in fact","in the end","of course","then again","to be fair","you know","you see"]),3:new Set(["as a result","by the way","in other words","in that case","in this case","to be clear","to be honest"])};const sentences=[];let currentBuffer=[];let bufferWordCount=0;const flushBuffer=()=>{if(currentBuffer.length>0){sentences.push({text:currentBuffer.map(s=>s.text).join(" ").trim(),start:currentBuffer[0].start,end:currentBuffer[currentBuffer.length-1].end});}currentBuffer=[];bufferWordCount=0;};flatEvents.forEach(segment=>{if(!segment.text)return;const lastSegment=currentBuffer[currentBuffer.length-1];if(lastSegment){const isEndOfSentence=/[.?!…\])]$/.test(lastSegment.text);const isPauseOfSentence=/[,]$/.test(lastSegment.text);const isTimeout=segment.start-lastSegment.end>timeout;const isWordLimitExceeded=(usePause||isPauseOfSentence)&&bufferWordCount>=maxWords;const startsWithSign=/^[[(♪]/.test(segment.text);const startsWithPauseWord=usePause&&groupedPauseWords["1"].has(segment.text.toLowerCase().split(" ")[0])&¤tBuffer.length>1;if(isEndOfSentence||isTimeout||isWordLimitExceeded||startsWithSign||startsWithPauseWord){flushBuffer();}}currentBuffer.push(segment);bufferWordCount+=segment.text.split(/\s+/).length;});flushBuffer();return sentences;}function _genFlatEvents2(){let events=arguments.length>0&&arguments[0]!==undefined?arguments[0]:[];const segments=[];let buffer=null;events.forEach(_ref6=>{let{segs=[],tStartMs=0,dDurationMs=0}=_ref6;segs.forEach((_ref7,j)=>{let{utf8="",tOffsetMs=0}=_ref7;const text=utf8.trim().replace(/\s+/g," ");const start=tStartMs+tOffsetMs;if(buffer){if(!buffer.end||buffer.end>start){buffer.end=start;}segments.push(buffer);buffer=null;}buffer={text,start};if(j===segs.length-1){buffer.end=tStartMs+dDurationMs;}});});segments.push(buffer);return segments;}function _splitEventsIntoChunks2(flatEvents){let chunkLength=arguments.length>1&&arguments[1]!==undefined?arguments[1]:1000;if(!flatEvents||flatEvents.length===0){return[];}const eventChunks=[];let currentChunk=[];let currentChunkTextLength=0;const MAX_CHUNK_LENGTH=chunkLength+500;const PAUSE_THRESHOLD_MS=1000;for(let i=0;i=MAX_CHUNK_LENGTH){shouldSplit=true;}else if(currentChunkTextLength>=chunkLength){const isEndOfSentence=/[.?!…\])]$/.test(event.text);const nextEvent=flatEvents[i+1];const pauseDuration=nextEvent.start-event.end;if(isEndOfSentence||pauseDuration>PAUSE_THRESHOLD_MS){shouldSplit=true;}}if(shouldSplit){eventChunks.push(currentChunk);currentChunk=[];currentChunkTextLength=0;}}if(currentChunk.length>0){eventChunks.push(currentChunk);}return eventChunks;}async function _processRemainingChunksAsync2(_ref8){let{chunks,chunkCount,videoId,fromLang,toLang,segApiSetting}=_ref8;logger.info("Youtube Provider: Starting for ".concat(chunks.length," chunks."));for(let i=0;i ").concat((_chunkEvents=chunkEvents[chunkEvents.length-1])===null||_chunkEvents===void 0?void 0:_chunkEvents.start));let subtitlesForThisChunk=[];try{const aiSubtitles=await _classPrivateFieldBase(this,_aiSegment)[_aiSegment]({videoId,chunkEvents,fromLang,toLang,segApiSetting});if((aiSubtitles===null||aiSubtitles===void 0?void 0:aiSubtitles.length)>0){subtitlesForThisChunk=aiSubtitles;}else{logger.debug("Youtube Provider: AI segmentation for chunk ".concat(chunkNum," returned no data."));subtitlesForThisChunk=_classPrivateFieldBase(this,_formatSubtitles)[_formatSubtitles](chunkEvents,fromLang);}}catch(chunkError){subtitlesForThisChunk=_classPrivateFieldBase(this,_formatSubtitles)[_formatSubtitles](chunkEvents,fromLang);}if(videoId!==_classPrivateFieldBase(this,_videoId)[_videoId]){logger.info("Youtube Provider: videoId changed!!",videoId,_classPrivateFieldBase(this,_videoId)[_videoId]);break;}if(subtitlesForThisChunk.length>0){const progressed=chunkNum*100/chunkCount;_classPrivateFieldBase(this,_subtitles)[_subtitles].push(...subtitlesForThisChunk);_classPrivateFieldBase(this,_progressed)[_progressed]=progressed;logger.debug("Youtube Provider: Appending ".concat(subtitlesForThisChunk.length," subtitles from chunk ").concat(chunkNum," (").concat(_classPrivateFieldBase(this,_progressed)[_progressed],"%)."));if(_classPrivateFieldBase(this,_managerInstance)[_managerInstance]){_classPrivateFieldBase(this,_managerInstance)[_managerInstance].appendSubtitles(subtitlesForThisChunk);}}else{logger.debug("Youtube Provider: Chunk ".concat(chunkNum," no subtitles."));}await sleep(randomBetween(500,1000));}logger.info("Youtube Provider: All subtitle chunks processed.");}function _createNotificationElement2(){var _videoEl$parentElemen;const notificationEl=document.createElement("div");notificationEl.className="kiss-notification";Object.assign(notificationEl.style,{position:"absolute",top:"40%",left:"50%",transform:"translateX(-50%)",background:"rgba(0,0,0,0.7)",color:"red",padding:"0.5em 1em",borderRadius:"4px",zIndex:"2147483647",opacity:"0",transition:"opacity 0.3s ease-in-out",pointerEvents:"none",fontSize:"2em",width:"50%",textAlign:"center"});const videoEl=_classPrivateFieldBase(this,YouTubeCaptionProvider_videoEl)[YouTubeCaptionProvider_videoEl];const videoContainer=videoEl===null||videoEl===void 0?void 0:(_videoEl$parentElemen=videoEl.parentElement)===null||_videoEl$parentElemen===void 0?void 0:_videoEl$parentElemen.parentElement;if(videoContainer){videoContainer.appendChild(notificationEl);_classPrivateFieldBase(this,_notificationEl)[_notificationEl]=notificationEl;}}function _showNotification2(message){let duration=arguments.length>1&&arguments[1]!==undefined?arguments[1]:2000;if(!_classPrivateFieldBase(this,_notificationEl)[_notificationEl])_classPrivateFieldBase(this,_createNotificationElement)[_createNotificationElement]();_classPrivateFieldBase(this,_notificationEl)[_notificationEl].textContent=message;_classPrivateFieldBase(this,_notificationEl)[_notificationEl].style.opacity="1";clearTimeout(_classPrivateFieldBase(this,_notificationTimeout)[_notificationTimeout]);_classPrivateFieldBase(this,_notificationTimeout)[_notificationTimeout]=setTimeout(()=>{_classPrivateFieldBase(this,_notificationEl)[_notificationEl].style.opacity="0";},duration);}const YouTubeInitializer=(()=>{let initialized=false;return async setting=>{if(initialized){return;}initialized=true;logger.info("Bilingual Subtitle Extension: Initializing...");const provider=new YouTubeCaptionProvider(setting);provider.initialize();};})(); +];if(noSpaceLanguages.some(l=>lang===null||lang===void 0?void 0:lang.startsWith(l))){const subtitles=[];let currentLine=null;const MAX_LENGTH=100;for(const segment of flatEvents){if(segment.text){if(!currentLine){currentLine={text:segment.text,start:segment.start,end:segment.end};}else{currentLine.text+=segment.text;currentLine.end=segment.end;}if(currentLine.text.length>=MAX_LENGTH){subtitles.push(currentLine);currentLine=null;}}else{if(currentLine){subtitles.push(currentLine);currentLine=null;}}}if(currentLine){subtitles.push(currentLine);}return subtitles;}let subtitles=_classPrivateFieldBase(this,_processSubtitles)[_processSubtitles]({flatEvents});const isPoor=_classPrivateFieldBase(this,_isQualityPoor)[_isQualityPoor](subtitles);logger.debug("Youtube Provider: isQualityPoor",{isPoor,subtitles});if(isPoor){subtitles=_classPrivateFieldBase(this,_processSubtitles)[_processSubtitles]({flatEvents,usePause:true});}return subtitles;}function _isQualityPoor2(lines){let lengthThreshold=arguments.length>1&&arguments[1]!==undefined?arguments[1]:250;let percentageThreshold=arguments.length>2&&arguments[2]!==undefined?arguments[2]:0.2;if(lines.length===0)return false;const longLinesCount=lines.filter(line=>line.text.length>lengthThreshold).length;return longLinesCount/lines.length>percentageThreshold;}function _processSubtitles2(){let{flatEvents,usePause=false,timeout=1000,maxWords=15}=arguments.length>0&&arguments[0]!==undefined?arguments[0]:{};const groupedPauseWords={1:new Set(["actually","also","although","and","anyway","as","basically","because","but","eventually","frankly","honestly","hopefully","however","if","instead","it's","just","let's","like","literally","maybe","meanwhile","nevertheless","nonetheless","now","okay","or","otherwise","perhaps","personally","probably","right","since","so","suddenly","that's","then","there's","therefore","though","thus","unless","until","well","while"]),2:new Set(["after all","at first","at least","even if","even though","for example","for instance","i believe","i guess","i mean","i suppose","i think","in fact","in the end","of course","then again","to be fair","you know","you see"]),3:new Set(["as a result","by the way","in other words","in that case","in this case","to be clear","to be honest"])};const sentences=[];let currentBuffer=[];let bufferWordCount=0;const flushBuffer=()=>{if(currentBuffer.length>0){sentences.push({text:currentBuffer.map(s=>s.text).join(" ").trim(),start:currentBuffer[0].start,end:currentBuffer[currentBuffer.length-1].end});}currentBuffer=[];bufferWordCount=0;};flatEvents.forEach(segment=>{if(!segment.text)return;const lastSegment=currentBuffer[currentBuffer.length-1];if(lastSegment){const isEndOfSentence=/[.?!…\])]$/.test(lastSegment.text);const isPauseOfSentence=/[,]$/.test(lastSegment.text);const isTimeout=segment.start-lastSegment.end>timeout;const isWordLimitExceeded=(usePause||isPauseOfSentence)&&bufferWordCount>=maxWords;const startsWithSign=/^[[(♪]/.test(segment.text);const startsWithPauseWord=usePause&&groupedPauseWords["1"].has(segment.text.toLowerCase().split(" ")[0])&¤tBuffer.length>1;if(isEndOfSentence||isTimeout||isWordLimitExceeded||startsWithSign||startsWithPauseWord){flushBuffer();}}currentBuffer.push(segment);bufferWordCount+=segment.text.split(/\s+/).length;});flushBuffer();return sentences;}function _genFlatEvents2(){let events=arguments.length>0&&arguments[0]!==undefined?arguments[0]:[];const segments=[];let buffer=null;events.forEach(_ref6=>{let{segs=[],tStartMs=0,dDurationMs=0}=_ref6;segs.forEach((_ref7,j)=>{let{utf8="",tOffsetMs=0}=_ref7;const text=utf8.trim().replace(/\s+/g," ");const start=tStartMs+tOffsetMs;if(buffer){if(!buffer.end||buffer.end>start){buffer.end=start;}segments.push(buffer);buffer=null;}buffer={text,start};if(j===segs.length-1){buffer.end=tStartMs+dDurationMs;}});});segments.push(buffer);return segments;}function _splitEventsIntoChunks2(flatEvents){let chunkLength=arguments.length>1&&arguments[1]!==undefined?arguments[1]:1000;if(!flatEvents||flatEvents.length===0){return[];}const eventChunks=[];let currentChunk=[];let currentChunkTextLength=0;const MAX_CHUNK_LENGTH=chunkLength+500;const PAUSE_THRESHOLD_MS=1000;for(let i=0;i=MAX_CHUNK_LENGTH){shouldSplit=true;}else if(currentChunkTextLength>=chunkLength){const isEndOfSentence=/[.?!…\])]$/.test(event.text);const nextEvent=flatEvents[i+1];const pauseDuration=nextEvent.start-event.end;if(isEndOfSentence||pauseDuration>PAUSE_THRESHOLD_MS){shouldSplit=true;}}if(shouldSplit){eventChunks.push(currentChunk);currentChunk=[];currentChunkTextLength=0;}}if(currentChunk.length>0){eventChunks.push(currentChunk);}return eventChunks;}async function _processRemainingChunksAsync2(_ref8){let{chunks,videoId,fromLang,toLang,segApiSetting}=_ref8;logger.info("Youtube Provider: Starting for ".concat(chunks.length," chunks."));for(let i=0;i ").concat((_chunkEvents=chunkEvents[chunkEvents.length-1])===null||_chunkEvents===void 0?void 0:_chunkEvents.start));let subtitlesForThisChunk=[];try{const aiSubtitles=await _classPrivateFieldBase(this,_aiSegment)[_aiSegment]({videoId,chunkEvents,fromLang,toLang,segApiSetting});if((aiSubtitles===null||aiSubtitles===void 0?void 0:aiSubtitles.length)>0){subtitlesForThisChunk=aiSubtitles;}else{logger.debug("Youtube Provider: AI segmentation for chunk ".concat(chunkNum," returned no data."));subtitlesForThisChunk=_classPrivateFieldBase(this,_formatSubtitles)[_formatSubtitles](chunkEvents,fromLang);}}catch(chunkError){subtitlesForThisChunk=_classPrivateFieldBase(this,_formatSubtitles)[_formatSubtitles](chunkEvents,fromLang);}if(videoId!==_classPrivateFieldBase(this,_videoId)[_videoId]){logger.info("Youtube Provider: videoId changed!!",videoId,_classPrivateFieldBase(this,_videoId)[_videoId]);break;}if(subtitlesForThisChunk.length>0){const progressed=Math.floor(chunkNum*100/(chunks.length+1));_classPrivateFieldBase(this,_subtitles)[_subtitles].push(...subtitlesForThisChunk);_classPrivateFieldBase(this,_progressed)[_progressed]=progressed;logger.debug("Youtube Provider: Appending ".concat(subtitlesForThisChunk.length," subtitles from chunk ").concat(chunkNum," (").concat(_classPrivateFieldBase(this,_progressed)[_progressed],"%)."));if(_classPrivateFieldBase(this,_managerInstance)[_managerInstance]){_classPrivateFieldBase(this,_managerInstance)[_managerInstance].appendSubtitles(subtitlesForThisChunk);}}else{logger.debug("Youtube Provider: Chunk ".concat(chunkNum," no subtitles."));}await sleep(randomBetween(500,1000));}logger.info("Youtube Provider: All subtitle chunks processed.");}function _createNotificationElement2(){var _videoEl$parentElemen;const notificationEl=document.createElement("div");notificationEl.className="kiss-notification";Object.assign(notificationEl.style,{position:"absolute",top:"40%",left:"50%",transform:"translateX(-50%)",background:"rgba(0,0,0,0.7)",color:"red",padding:"0.5em 1em",borderRadius:"4px",zIndex:"2147483647",opacity:"0",transition:"opacity 0.3s ease-in-out",pointerEvents:"none",fontSize:"2em",width:"50%",textAlign:"center"});const videoEl=_classPrivateFieldBase(this,YouTubeCaptionProvider_videoEl)[YouTubeCaptionProvider_videoEl];const videoContainer=videoEl===null||videoEl===void 0?void 0:(_videoEl$parentElemen=videoEl.parentElement)===null||_videoEl$parentElemen===void 0?void 0:_videoEl$parentElemen.parentElement;if(videoContainer){videoContainer.appendChild(notificationEl);_classPrivateFieldBase(this,_notificationEl)[_notificationEl]=notificationEl;}}function _showNotification2(message){let duration=arguments.length>1&&arguments[1]!==undefined?arguments[1]:2000;if(!_classPrivateFieldBase(this,_notificationEl)[_notificationEl])_classPrivateFieldBase(this,_createNotificationElement)[_createNotificationElement]();_classPrivateFieldBase(this,_notificationEl)[_notificationEl].textContent=message;_classPrivateFieldBase(this,_notificationEl)[_notificationEl].style.opacity="1";clearTimeout(_classPrivateFieldBase(this,_notificationTimeout)[_notificationTimeout]);_classPrivateFieldBase(this,_notificationTimeout)[_notificationTimeout]=setTimeout(()=>{_classPrivateFieldBase(this,_notificationEl)[_notificationEl].style.opacity="0";},duration);}const YouTubeInitializer=(()=>{let initialized=false;return async setting=>{if(initialized){return;}initialized=true;logger.info("Bilingual Subtitle Extension: Initializing...");const provider=new YouTubeCaptionProvider(setting);provider.initialize();};})(); ;// CONCATENATED MODULE: ./src/libs/trustedTypes.js const trustedTypesHelper=(()=>{const POLICY_NAME="kiss-translator-policy";let policy=null;if(globalThis.trustedTypes&&globalThis.trustedTypes.createPolicy){try{policy=globalThis.trustedTypes.createPolicy(POLICY_NAME,{createHTML:string=>string,createScript:string=>string,createScriptURL:string=>string});}catch(err){if(err.message.includes("already exists")){policy=globalThis.trustedTypes.policies.get(POLICY_NAME);}else{logger.info("cont create Trusted Types",err);}}}return{createHTML:htmlString=>{return policy?policy.createHTML(htmlString):htmlString;},createScript:scriptString=>{return policy?policy.createScript(scriptString):scriptString;},createScriptURL:urlString=>{return policy?policy.createScriptURL(urlString):urlString;},isEnabled:()=>policy!==null};})(); ;// CONCATENATED MODULE: ./src/libs/injector.js @@ -39458,7 +39468,7 @@ Divider.muiSkipListHighlight = true; false ? 0 : void 0; /* harmony default export */ const Divider_Divider = (Divider); ;// CONCATENATED MODULE: ./src/hooks/Loading.js -function Loading(){return/*#__PURE__*/(0,jsx_runtime.jsxs)("center",{children:[/*#__PURE__*/(0,jsx_runtime.jsx)(Divider_Divider,{children:/*#__PURE__*/(0,jsx_runtime.jsx)(Link_Link,{href:"https://github.com/fishjar/kiss-translator",children:"KISS Translator v".concat("2.0.8")})}),/*#__PURE__*/(0,jsx_runtime.jsx)(CircularProgress_CircularProgress,{})]});} +function Loading(){return/*#__PURE__*/(0,jsx_runtime.jsxs)("center",{children:[/*#__PURE__*/(0,jsx_runtime.jsx)(Divider_Divider,{children:/*#__PURE__*/(0,jsx_runtime.jsx)(Link_Link,{href:"https://github.com/fishjar/kiss-translator",children:"KISS Translator v".concat("2.0.9")})}),/*#__PURE__*/(0,jsx_runtime.jsx)(CircularProgress_CircularProgress,{})]});} ;// CONCATENATED MODULE: ./src/hooks/Setting.js const SettingContext=/*#__PURE__*/(0,react.createContext)({setting:setting_DEFAULT_SETTING,updateSetting:()=>{},reloadSetting:()=>{}});function SettingProvider(_ref){let{children}=_ref;const{data:setting,isLoading,update,reload}=useStorage(storage_STOKEY_SETTING,setting_DEFAULT_SETTING,storage_KV_SETTING_KEY);(0,react.useEffect)(()=>{if(typeof(setting===null||setting===void 0?void 0:setting.darkMode)==="boolean"){update(currentSetting=>_objectSpread2(_objectSpread2({},currentSetting),{},{darkMode:currentSetting.darkMode?"dark":"light"}));}},[setting===null||setting===void 0?void 0:setting.darkMode,update]);(0,react.useEffect)(()=>{(async()=>{try{logger.setLevel(setting===null||setting===void 0?void 0:setting.logLevel);if(isExt){await sendBgMsg(MSG_SET_LOGLEVEL,setting===null||setting===void 0?void 0:setting.logLevel);}}catch(error){logger.error("Failed to fetch log level, using default.",error);}})();},[setting]);const updateSetting=(0,react.useCallback)(objOrFn=>{update(objOrFn);debounceSyncMeta(storage_KV_SETTING_KEY);},[update]);const updateChild=(0,react.useCallback)(key=>async obj=>{updateSetting(prev=>_objectSpread2(_objectSpread2({},prev),{},{[key]:_objectSpread2(_objectSpread2({},(prev===null||prev===void 0?void 0:prev[key])||{}),obj)}));},[updateSetting]);const value=(0,react.useMemo)(()=>({setting,updateSetting,updateChild,reloadSetting:reload}),[setting,updateSetting,updateChild,reload]);if(isLoading){return/*#__PURE__*/(0,jsx_runtime.jsx)(Loading,{});}if(!setting){/*#__PURE__*/(0,jsx_runtime.jsx)("center",{children:/*#__PURE__*/(0,jsx_runtime.jsxs)(Alert_Alert,{severity:"error",sx:{maxWidth:600,margin:"60px auto"},children:[/*#__PURE__*/(0,jsx_runtime.jsx)("p",{children:"\u6570\u636E\u52A0\u8F7D\u51FA\u9519\uFF0C\u8BF7\u5237\u65B0\u9875\u9762\u6216\u5378\u8F7D\u540E\u91CD\u65B0\u5B89\u88C5\u3002"}),/*#__PURE__*/(0,jsx_runtime.jsx)("p",{children:"Data loading error, please refresh the page or uninstall and reinstall."})]})});}return/*#__PURE__*/(0,jsx_runtime.jsx)(SettingContext.Provider,{value:value,children:children});}/** * 设置 hook @@ -47031,7 +47041,7 @@ function SugBaidu(_ref){let{text}=_ref;const{loading,error,data}=useAsyncNow(api function TranForm(_ref){let{text,setText,apiSlugs:initApiSlugs,fromLang:initFromLang,toLang:initToLang,toLang2:initToLang2,transApis,simpleStyle=false,langDetector:initLangDetector="-",enDict:initEnDict="-",enSug:initEnSug="-",isPlaygound=false}=_ref;const i18n=useI18n();const[editMode,setEditMode]=(0,react.useState)(false);const[editText,setEditText]=(0,react.useState)(text);const[apiSlugs,setApiSlugs]=(0,react.useState)(initApiSlugs);const[fromLang,setFromLang]=(0,react.useState)(initFromLang);const[toLang,setToLang]=(0,react.useState)(initToLang);const[toLang2,setToLang2]=(0,react.useState)(initToLang2);const[langDetector,setLangDetector]=(0,react.useState)(initLangDetector);const[enDict,setEnDict]=(0,react.useState)(initEnDict);const[enSug,setEnSug]=(0,react.useState)(initEnSug);const[deLang,setDeLang]=(0,react.useState)("");const[deLoading,setDeLoading]=(0,react.useState)(false);(0,react.useEffect)(()=>{if(!editMode){setEditText(text);}},[text,editMode]);(0,react.useEffect)(()=>{if(!text.trim()){setDeLang("");return;}(async()=>{try{setDeLoading(true);const deLang=await tryDetectLang(text,langDetector);if(deLang){setDeLang(deLang);}}catch(err){log_kissLog("tranbox: detect lang",err);}finally{setDeLoading(false);}})();},[text,langDetector,setDeLang,setDeLoading]);// todo: 语言变化后,realToLang引发二次翻译请求 const realToLang=(0,react.useMemo)(()=>{if(fromLang==="auto"&&toLang!==toLang2&&toLang2!=="-"&&deLang===toLang){return toLang2;}return toLang;},[fromLang,toLang,toLang2,deLang]);const optApis=(0,react.useMemo)(()=>transApis.filter(api=>!api.isDisabled).map(api=>({key:api.apiSlug,name:api.apiName||api.apiSlug})),[transApis]);const isWord=(0,react.useMemo)(()=>isValidWord(text),[text]);const xs=(0,react.useMemo)(()=>isPlaygound?3:4,[isPlaygound]);return/*#__PURE__*/(0,jsx_runtime.jsxs)(Stack_Stack,{spacing:simpleStyle?1:2,children:[!simpleStyle&&/*#__PURE__*/(0,jsx_runtime.jsxs)(jsx_runtime.Fragment,{children:[/*#__PURE__*/(0,jsx_runtime.jsx)(Box_Box,{children:/*#__PURE__*/(0,jsx_runtime.jsxs)(Grid_Grid,{container:true,spacing:2,columns:12,children:[/*#__PURE__*/(0,jsx_runtime.jsx)(Grid_Grid,{item:true,xs:xs,children:/*#__PURE__*/(0,jsx_runtime.jsx)(TextField_TextField,{select:true,SelectProps:{multiple:true,MenuProps:{disablePortal:!isPlaygound}},fullWidth:true,size:"small",value:apiSlugs,name:"apiSlugs",label:i18n("translate_service_multiple"),onChange:e=>{setApiSlugs(e.target.value);},children:optApis.map(_ref2=>{let{key,name}=_ref2;return/*#__PURE__*/(0,jsx_runtime.jsx)(material_MenuItem_MenuItem,{value:key,children:name},key);})})}),/*#__PURE__*/(0,jsx_runtime.jsx)(Grid_Grid,{item:true,xs:xs,children:/*#__PURE__*/(0,jsx_runtime.jsx)(TextField_TextField,{select:true,SelectProps:{MenuProps:{disablePortal:!isPlaygound}},fullWidth:true,size:"small",name:"fromLang",value:fromLang,label:i18n("from_lang"),onChange:e=>{setFromLang(e.target.value);},children:OPT_LANGS_FROM.map(_ref3=>{let[lang,name]=_ref3;return/*#__PURE__*/(0,jsx_runtime.jsx)(material_MenuItem_MenuItem,{value:lang,children:name},lang);})})}),/*#__PURE__*/(0,jsx_runtime.jsx)(Grid_Grid,{item:true,xs:xs,children:/*#__PURE__*/(0,jsx_runtime.jsx)(TextField_TextField,{select:true,SelectProps:{MenuProps:{disablePortal:!isPlaygound}},fullWidth:true,size:"small",name:"toLang",value:toLang,label:i18n("to_lang"),onChange:e=>{setToLang(e.target.value);},children:OPT_LANGS_TO.map(_ref4=>{let[lang,name]=_ref4;return/*#__PURE__*/(0,jsx_runtime.jsx)(material_MenuItem_MenuItem,{value:lang,children:name},lang);})})}),isPlaygound&&/*#__PURE__*/(0,jsx_runtime.jsxs)(jsx_runtime.Fragment,{children:[/*#__PURE__*/(0,jsx_runtime.jsx)(Grid_Grid,{item:true,xs:xs,children:/*#__PURE__*/(0,jsx_runtime.jsx)(TextField_TextField,{select:true,SelectProps:{MenuProps:{disablePortal:!isPlaygound}},fullWidth:true,size:"small",name:"toLang2",value:toLang2,label:i18n("to_lang2"),onChange:e=>{setToLang2(e.target.value);},children:OPT_LANGS_TO.map(_ref5=>{let[lang,name]=_ref5;return/*#__PURE__*/(0,jsx_runtime.jsx)(material_MenuItem_MenuItem,{value:lang,children:name},lang);})})}),/*#__PURE__*/(0,jsx_runtime.jsx)(Grid_Grid,{item:true,xs:xs,children:/*#__PURE__*/(0,jsx_runtime.jsxs)(TextField_TextField,{select:true,SelectProps:{MenuProps:{disablePortal:!isPlaygound}},fullWidth:true,size:"small",name:"enDict",value:enDict,label:i18n("english_dict"),onChange:e=>{setEnDict(e.target.value);},children:[/*#__PURE__*/(0,jsx_runtime.jsx)(material_MenuItem_MenuItem,{value:"-",children:i18n("disable")}),OPT_DICT_ALL.map(item=>/*#__PURE__*/(0,jsx_runtime.jsx)(material_MenuItem_MenuItem,{value:item,children:item},item))]})}),/*#__PURE__*/(0,jsx_runtime.jsx)(Grid_Grid,{item:true,xs:xs,children:/*#__PURE__*/(0,jsx_runtime.jsxs)(TextField_TextField,{select:true,SelectProps:{MenuProps:{disablePortal:!isPlaygound}},fullWidth:true,size:"small",name:"enSug",value:enSug,label:i18n("english_suggest"),onChange:e=>{setEnSug(e.target.value);},children:[/*#__PURE__*/(0,jsx_runtime.jsx)(material_MenuItem_MenuItem,{value:"-",children:i18n("disable")}),OPT_SUG_ALL.map(item=>/*#__PURE__*/(0,jsx_runtime.jsx)(material_MenuItem_MenuItem,{value:item,children:item},item))]})}),/*#__PURE__*/(0,jsx_runtime.jsx)(Grid_Grid,{item:true,xs:xs,children:/*#__PURE__*/(0,jsx_runtime.jsxs)(TextField_TextField,{select:true,SelectProps:{MenuProps:{disablePortal:!isPlaygound}},fullWidth:true,size:"small",name:"langDetector",value:langDetector,label:i18n("detected_lang"),onChange:e=>{setLangDetector(e.target.value);},children:[/*#__PURE__*/(0,jsx_runtime.jsx)(material_MenuItem_MenuItem,{value:"-",children:i18n("disable")}),OPT_LANGDETECTOR_ALL.map(item=>/*#__PURE__*/(0,jsx_runtime.jsx)(material_MenuItem_MenuItem,{value:item,children:item},item))]})}),/*#__PURE__*/(0,jsx_runtime.jsx)(Grid_Grid,{item:true,xs:xs,children:/*#__PURE__*/(0,jsx_runtime.jsx)(TextField_TextField,{fullWidth:true,size:"small",name:"deLang",value:deLang&&OPT_LANGS_MAP.get(deLang),label:i18n("detected_result"),disabled:true,InputProps:{startAdornment:deLoading?/*#__PURE__*/(0,jsx_runtime.jsx)(CircularProgress_CircularProgress,{size:16}):null}})})]})]})}),/*#__PURE__*/(0,jsx_runtime.jsx)(Box_Box,{children:/*#__PURE__*/(0,jsx_runtime.jsx)(TextField_TextField,{size:"small",label:i18n("original_text"),fullWidth:true,multiline:true,minRows:isPlaygound?2:1,maxRows:10,value:editText,onChange:e=>{setEditText(e.target.value);},onFocus:()=>{setEditMode(true);},onBlur:()=>{setEditMode(false);setText(editText.trim());},InputProps:{endAdornment:/*#__PURE__*/(0,jsx_runtime.jsx)(Stack_Stack,{direction:"row",sx:{position:"absolute",right:0,top:0},children:editMode?/*#__PURE__*/(0,jsx_runtime.jsx)(IconButton_IconButton,{size:"small",onClick:e=>{e.stopPropagation();setEditMode(false);setText(editText.trim());},children:/*#__PURE__*/(0,jsx_runtime.jsx)(Done/* default */.Z,{fontSize:"inherit"})}):/*#__PURE__*/(0,jsx_runtime.jsx)(CopyBtn,{text:text})})}})})]}),apiSlugs.map(slug=>/*#__PURE__*/(0,jsx_runtime.jsx)(TranCont,{text:text,fromLang:fromLang,toLang:realToLang,simpleStyle:simpleStyle,apiSlug:slug,transApis:transApis},slug)),isWord&&OPT_DICT_MAP.has(enDict)&&/*#__PURE__*/(0,jsx_runtime.jsx)(DictCont,{text:text,enDict:enDict}),isWord&&OPT_SUG_MAP.has(enSug)&&/*#__PURE__*/(0,jsx_runtime.jsx)(SugCont,{text:text,enSug:enSug})]});} ;// CONCATENATED MODULE: ./src/views/Selection/TranBox.js -function Header(_ref){let{setShowBox,simpleStyle,setSimpleStyle,hideClickAway,setHideClickAway,followSelection,setFollowSelection,mouseHover}=_ref;const i18n=useI18n();if(!isMobile&&simpleStyle&&!mouseHover){return;}return/*#__PURE__*/(0,jsx_runtime.jsxs)(Box_Box,{onMouseUp:e=>e.stopPropagation(),onTouchEnd:e=>e.stopPropagation(),children:[/*#__PURE__*/(0,jsx_runtime.jsxs)(Stack_Stack,{direction:"row",justifyContent:"space-between",alignItems:"center",children:[/*#__PURE__*/(0,jsx_runtime.jsxs)(Stack_Stack,{direction:"row",alignItems:"center",children:[/*#__PURE__*/(0,jsx_runtime.jsx)(DragIndicator/* default */.Z,{fontSize:"small"}),/*#__PURE__*/(0,jsx_runtime.jsx)(Typography_Typography,{variant:"body2",sx:{userSelect:"none",WebkitUserSelect:"none",fontWeight:"bold"},children:"".concat("KISS Translator"," v").concat("2.0.8")})]}),/*#__PURE__*/(0,jsx_runtime.jsxs)(Stack_Stack,{direction:"row",alignItems:"center",children:[/*#__PURE__*/(0,jsx_runtime.jsx)(IconButton_IconButton,{size:"small",title:i18n("btn_tip_click_away"),onClick:()=>{setHideClickAway(pre=>!pre);},children:hideClickAway?/*#__PURE__*/(0,jsx_runtime.jsx)(LockOpen/* default */.Z,{fontSize:"small"}):/*#__PURE__*/(0,jsx_runtime.jsx)(Lock/* default */.Z,{fontSize:"small"})}),/*#__PURE__*/(0,jsx_runtime.jsx)(IconButton_IconButton,{size:"small",title:i18n("btn_tip_follow_selection"),onClick:()=>{setFollowSelection(pre=>!pre);},children:followSelection?/*#__PURE__*/(0,jsx_runtime.jsx)(PushPinOutlined/* default */.Z,{fontSize:"small"}):/*#__PURE__*/(0,jsx_runtime.jsx)(PushPin/* default */.Z,{fontSize:"small"})}),/*#__PURE__*/(0,jsx_runtime.jsx)(IconButton_IconButton,{size:"small",title:i18n("btn_tip_simple_style"),onClick:()=>{setSimpleStyle(pre=>!pre);},children:simpleStyle?/*#__PURE__*/(0,jsx_runtime.jsx)(UnfoldMore/* default */.Z,{fontSize:"small"}):/*#__PURE__*/(0,jsx_runtime.jsx)(UnfoldLess/* default */.Z,{fontSize:"small"})}),/*#__PURE__*/(0,jsx_runtime.jsx)(IconButton_IconButton,{size:"small",onClick:()=>{setShowBox(false);},children:/*#__PURE__*/(0,jsx_runtime.jsx)(icons_material_Close/* default */.Z,{fontSize:"small"})})]})]}),/*#__PURE__*/(0,jsx_runtime.jsx)(Divider_Divider,{})]});}function TranBox(_ref2){let{showBox,text,setText,setShowBox,tranboxSetting:{enDict,enSug,apiSlugs,fromLang,toLang,toLang2,autoHeight},transApis,boxSize,setBoxSize,boxPosition,setBoxPosition,simpleStyle,setSimpleStyle,hideClickAway,setHideClickAway,followSelection,setFollowSelection,extStyles="",langDetector}=_ref2;const[mouseHover,setMouseHover]=(0,react.useState)(false);// todo: 这里的 SettingProvider 不应和 background 的共用 +function Header(_ref){let{setShowBox,simpleStyle,setSimpleStyle,hideClickAway,setHideClickAway,followSelection,setFollowSelection,mouseHover}=_ref;const i18n=useI18n();if(!isMobile&&simpleStyle&&!mouseHover){return;}return/*#__PURE__*/(0,jsx_runtime.jsxs)(Box_Box,{onMouseUp:e=>e.stopPropagation(),onTouchEnd:e=>e.stopPropagation(),children:[/*#__PURE__*/(0,jsx_runtime.jsxs)(Stack_Stack,{direction:"row",justifyContent:"space-between",alignItems:"center",children:[/*#__PURE__*/(0,jsx_runtime.jsxs)(Stack_Stack,{direction:"row",alignItems:"center",children:[/*#__PURE__*/(0,jsx_runtime.jsx)(DragIndicator/* default */.Z,{fontSize:"small"}),/*#__PURE__*/(0,jsx_runtime.jsx)(Typography_Typography,{variant:"body2",sx:{userSelect:"none",WebkitUserSelect:"none",fontWeight:"bold"},children:"".concat("KISS Translator"," v").concat("2.0.9")})]}),/*#__PURE__*/(0,jsx_runtime.jsxs)(Stack_Stack,{direction:"row",alignItems:"center",children:[/*#__PURE__*/(0,jsx_runtime.jsx)(IconButton_IconButton,{size:"small",title:i18n("btn_tip_click_away"),onClick:()=>{setHideClickAway(pre=>!pre);},children:hideClickAway?/*#__PURE__*/(0,jsx_runtime.jsx)(LockOpen/* default */.Z,{fontSize:"small"}):/*#__PURE__*/(0,jsx_runtime.jsx)(Lock/* default */.Z,{fontSize:"small"})}),/*#__PURE__*/(0,jsx_runtime.jsx)(IconButton_IconButton,{size:"small",title:i18n("btn_tip_follow_selection"),onClick:()=>{setFollowSelection(pre=>!pre);},children:followSelection?/*#__PURE__*/(0,jsx_runtime.jsx)(PushPinOutlined/* default */.Z,{fontSize:"small"}):/*#__PURE__*/(0,jsx_runtime.jsx)(PushPin/* default */.Z,{fontSize:"small"})}),/*#__PURE__*/(0,jsx_runtime.jsx)(IconButton_IconButton,{size:"small",title:i18n("btn_tip_simple_style"),onClick:()=>{setSimpleStyle(pre=>!pre);},children:simpleStyle?/*#__PURE__*/(0,jsx_runtime.jsx)(UnfoldMore/* default */.Z,{fontSize:"small"}):/*#__PURE__*/(0,jsx_runtime.jsx)(UnfoldLess/* default */.Z,{fontSize:"small"})}),/*#__PURE__*/(0,jsx_runtime.jsx)(IconButton_IconButton,{size:"small",onClick:()=>{setShowBox(false);},children:/*#__PURE__*/(0,jsx_runtime.jsx)(icons_material_Close/* default */.Z,{fontSize:"small"})})]})]}),/*#__PURE__*/(0,jsx_runtime.jsx)(Divider_Divider,{})]});}function TranBox(_ref2){let{showBox,text,setText,setShowBox,tranboxSetting:{enDict,enSug,apiSlugs,fromLang,toLang,toLang2,autoHeight},transApis,boxSize,setBoxSize,boxPosition,setBoxPosition,simpleStyle,setSimpleStyle,hideClickAway,setHideClickAway,followSelection,setFollowSelection,extStyles="",langDetector}=_ref2;const[mouseHover,setMouseHover]=(0,react.useState)(false);// todo: 这里的 SettingProvider 不应和 background 的共用 return/*#__PURE__*/(0,jsx_runtime.jsx)(SettingProvider,{children:/*#__PURE__*/(0,jsx_runtime.jsx)(Theme,{styles:extStyles,children:showBox&&/*#__PURE__*/(0,jsx_runtime.jsx)(DraggableResizable,{position:boxPosition,size:boxSize,setSize:setBoxSize,setPosition:setBoxPosition,autoHeight:autoHeight,header:/*#__PURE__*/(0,jsx_runtime.jsx)(Header,{setShowBox:setShowBox,simpleStyle:simpleStyle,setSimpleStyle:setSimpleStyle,hideClickAway:hideClickAway,setHideClickAway:setHideClickAway,followSelection:followSelection,setFollowSelection:setFollowSelection,mouseHover:mouseHover}),onClick:e=>e.stopPropagation(),onMouseEnter:()=>setMouseHover(true),onMouseLeave:()=>setMouseHover(false),children:/*#__PURE__*/(0,jsx_runtime.jsx)(Box_Box,{sx:{p:simpleStyle?1:2},children:/*#__PURE__*/(0,jsx_runtime.jsx)(TranForm,{text:text,setText:setText,apiSlugs:apiSlugs,fromLang:fromLang,toLang:toLang,toLang2:toLang2,transApis:transApis,simpleStyle:simpleStyle,langDetector:langDetector,enDict:enDict,enSug:enSug})})})})});} ;// CONCATENATED MODULE: ./src/views/Selection/index.js function Slection(_ref){let{contextMenuType,tranboxSetting,transApis,uiLang,langDetector}=_ref;const{hideTranBtn=false,simpleStyle:initSimpleStyle=false,hideClickAway:initHideClickAway=false,followSelection:initFollowMouse=false,tranboxShortcut=DEFAULT_TRANBOX_SHORTCUT,triggerMode=OPT_TRANBOX_TRIGGER_CLICK,// extStyles, @@ -47058,7 +47068,7 @@ var BrightnessAuto = __webpack_require__(5538); ;// CONCATENATED MODULE: ./src/views/Options/DarkModeButton.js function DarkModeButton(){const{darkMode,toggleDarkMode}=useDarkMode();return/*#__PURE__*/(0,jsx_runtime.jsx)(IconButton_IconButton,{sx:{ml:1},onClick:toggleDarkMode,color:"inherit",children:darkMode==="dark"?/*#__PURE__*/(0,jsx_runtime.jsx)(DarkMode/* default */.Z,{}):darkMode==="light"?/*#__PURE__*/(0,jsx_runtime.jsx)(LightMode/* default */.Z,{}):/*#__PURE__*/(0,jsx_runtime.jsx)(BrightnessAuto/* default */.Z,{})});} ;// CONCATENATED MODULE: ./src/views/Popup/Header.js -function Header_Header(_ref){let{onClose}=_ref;const handleHomepage=()=>{window.open("https://github.com/fishjar/kiss-translator","_blank");};return/*#__PURE__*/(0,jsx_runtime.jsxs)(Stack_Stack,{direction:"row",justifyContent:"space-between",alignItems:"center",spacing:2,children:[/*#__PURE__*/(0,jsx_runtime.jsxs)(Stack_Stack,{direction:"row",justifyContent:"flex-start",alignItems:"center",children:[/*#__PURE__*/(0,jsx_runtime.jsx)(IconButton_IconButton,{onClick:handleHomepage,children:/*#__PURE__*/(0,jsx_runtime.jsx)(Home/* default */.Z,{})}),/*#__PURE__*/(0,jsx_runtime.jsx)(Typography_Typography,{component:"div",sx:{userSelect:"none",WebkitUserSelect:"none",fontWeight:"bold"},children:"".concat("KISS Translator"," v").concat("2.0.8")})]}),onClose?/*#__PURE__*/(0,jsx_runtime.jsx)(IconButton_IconButton,{onClick:()=>{onClose();},children:/*#__PURE__*/(0,jsx_runtime.jsx)(icons_material_Close/* default */.Z,{})}):/*#__PURE__*/(0,jsx_runtime.jsx)(DarkModeButton,{})]});} +function Header_Header(_ref){let{onClose}=_ref;const handleHomepage=()=>{window.open("https://github.com/fishjar/kiss-translator","_blank");};return/*#__PURE__*/(0,jsx_runtime.jsxs)(Stack_Stack,{direction:"row",justifyContent:"space-between",alignItems:"center",spacing:2,children:[/*#__PURE__*/(0,jsx_runtime.jsxs)(Stack_Stack,{direction:"row",justifyContent:"flex-start",alignItems:"center",children:[/*#__PURE__*/(0,jsx_runtime.jsx)(IconButton_IconButton,{onClick:handleHomepage,children:/*#__PURE__*/(0,jsx_runtime.jsx)(Home/* default */.Z,{})}),/*#__PURE__*/(0,jsx_runtime.jsx)(Typography_Typography,{component:"div",sx:{userSelect:"none",WebkitUserSelect:"none",fontWeight:"bold"},children:"".concat("KISS Translator"," v").concat("2.0.9")})]}),onClose?/*#__PURE__*/(0,jsx_runtime.jsx)(IconButton_IconButton,{onClick:()=>{onClose();},children:/*#__PURE__*/(0,jsx_runtime.jsx)(icons_material_Close/* default */.Z,{})}):/*#__PURE__*/(0,jsx_runtime.jsx)(DarkModeButton,{})]});} ;// CONCATENATED MODULE: ./src/hooks/WindowSize.js function useWindowSize(){const[windowSize,setWindowSize]=(0,react.useState)({w:window.innerWidth,h:window.innerHeight});const debounceWindowResize=useDebouncedCallback(()=>{setWindowSize({w:window.innerWidth,h:window.innerHeight});},200);(0,react.useEffect)(()=>{debounceWindowResize();window.addEventListener("resize",debounceWindowResize);return()=>{window.removeEventListener("resize",debounceWindowResize);};},[debounceWindowResize]);return windowSize;}/* harmony default export */ const WindowSize = (useWindowSize); ;// CONCATENATED MODULE: ./node_modules/.pnpm/@mui+material@5.15.15_@emotion+react@11.11.1_@types+react@18.2.79_react@18.2.0__@emotio_d9048b84de05bb23a91868a7ef37c0cc/node_modules/@mui/material/FormControlLabel/formControlLabelClasses.js @@ -48223,7 +48233,7 @@ if(globalThis.GM&&_classPrivateFieldBase(this,_menuCommandIds)[_menuCommandIds]. ;// CONCATENATED MODULE: ./src/common.js /** * 油猴脚本设置页面 - */function runSettingPage(){var _GM,_GM$info,_GM$info$script,_GM$info$script$grant;if((_GM=GM)!==null&&_GM!==void 0&&(_GM$info=_GM.info)!==null&&_GM$info!==void 0&&(_GM$info$script=_GM$info.script)!==null&&_GM$info$script!==void 0&&(_GM$info$script$grant=_GM$info$script.grant)!==null&&_GM$info$script$grant!==void 0&&_GM$info$script$grant.includes("unsafeWindow")){unsafeWindow.GM=GM;unsafeWindow.APP_INFO={name:"KISS Translator",version:"2.0.8"};}else{const ping=utils_genEventName();window.addEventListener(ping,handlePing);// window.eval(`(${injectScript})("${ping}")`); // eslint-disable-line + */function runSettingPage(){var _GM,_GM$info,_GM$info$script,_GM$info$script$grant;if((_GM=GM)!==null&&_GM!==void 0&&(_GM$info=_GM.info)!==null&&_GM$info!==void 0&&(_GM$info$script=_GM$info.script)!==null&&_GM$info$script!==void 0&&(_GM$info$script$grant=_GM$info$script.grant)!==null&&_GM$info$script$grant!==void 0&&_GM$info$script$grant.includes("unsafeWindow")){unsafeWindow.GM=GM;unsafeWindow.APP_INFO={name:"KISS Translator",version:"2.0.9"};}else{const ping=utils_genEventName();window.addEventListener(ping,handlePing);// window.eval(`(${injectScript})("${ping}")`); // eslint-disable-line injectInlineJs("(".concat(injectScript,")(\"").concat(ping,"\")"),"kiss-translator-options-injector");}}/** * 显示错误信息到页面顶部 * @param {*} message diff --git a/main.js b/main.js index b2aa83c..fdcb363 100644 --- a/main.js +++ b/main.js @@ -34881,7 +34881,7 @@ function objectWithoutProperties_objectWithoutProperties(source, excluded) { const Fetch_excluded=(/* unused pure expression or super */ null && (["execute"])),Fetch_excluded2=["execute"],Fetch_excluded3=["get"];const useAsync=()=>{const[data,setData]=(0,react.useState)(null);const[loading,setLoading]=(0,react.useState)(false);const[error,setError]=(0,react.useState)(null);const execute=(0,react.useCallback)(async function(fn){if(!fn){return;}setLoading(true);setError(null);try{for(var _len=arguments.length,args=new Array(_len>1?_len-1:0),_key=1;_key<_len;_key++){args[_key-1]=arguments[_key];}const res=await fn(...args);setData(res);setLoading(false);return res;}catch(err){setError((err===null||err===void 0?void 0:err.message)||"An unknown error occurred");setLoading(false);// throw err; }},[]);const reset=(0,react.useCallback)(()=>{setData(null);setLoading(false);setError(null);},[]);return{data,loading,error,execute,reset};};const useAsyncNow=(fn,arg)=>{const _useAsync=useAsync(),{execute}=_useAsync,asyncState=_objectWithoutProperties(_useAsync,Fetch_excluded);useEffect(()=>{if(fn){execute(fn,arg);}},[execute,fn,arg]);return _objectSpread({},asyncState);};const useFetch=()=>{const _useAsync2=useAsync(),{execute}=_useAsync2,asyncState=objectWithoutProperties_objectWithoutProperties(_useAsync2,Fetch_excluded2);const requester=(0,react.useCallback)(async(url,options)=>{var _response$headers$get;const response=await fetch(url,options);if(!response.ok){const errorInfo=await response.text();throw new Error("Request failed: ".concat(response.status," ").concat(response.statusText," - ").concat(errorInfo));}if(response.status===204){return null;}if((_response$headers$get=response.headers.get("Content-Type"))!==null&&_response$headers$get!==void 0&&_response$headers$get.includes("json")){return response.json();}return response.text();},[]);const get=(0,react.useCallback)(async function(url){let options=arguments.length>1&&arguments[1]!==undefined?arguments[1]:{};try{const result=await execute(requester,url,_objectSpread2(_objectSpread2({},options),{},{method:"GET"}));return result;}catch(err){return null;}},[execute,requester]);const post=(0,react.useCallback)(async function(url,body){let options=arguments.length>2&&arguments[2]!==undefined?arguments[2]:{};try{const result=await execute(requester,url,_objectSpread2(_objectSpread2({},options),{},{method:"POST",headers:_objectSpread2({"Content-Type":"application/json"},options.headers),body:JSON.stringify(body)}));return result;}catch(err){return null;}},[execute,requester]);const put=(0,react.useCallback)(async function(url,body){let options=arguments.length>2&&arguments[2]!==undefined?arguments[2]:{};try{const result=await execute(requester,url,_objectSpread2(_objectSpread2({},options),{},{method:"PUT",headers:_objectSpread2({"Content-Type":"application/json"},options.headers),body:JSON.stringify(body)}));return result;}catch(err){return null;}},[execute,requester]);const del=(0,react.useCallback)(async function(url){let options=arguments.length>1&&arguments[1]!==undefined?arguments[1]:{};try{const result=await execute(requester,url,_objectSpread2(_objectSpread2({},options),{},{method:"DELETE"}));return result;}catch(err){return null;}},[execute,requester]);return _objectSpread2(_objectSpread2({},asyncState),{},{get,post,put,del});};const useGet=url=>{const _useFetch=useFetch(),{get}=_useFetch,fetchState=objectWithoutProperties_objectWithoutProperties(_useFetch,Fetch_excluded3);(0,react.useEffect)(()=>{if(url)get(url);},[url,get]);return _objectSpread2({},fetchState);}; ;// CONCATENATED MODULE: ./src/config/app.js -const APP_NAME="KISS Translator".trim().split(/\s+/).join("-");const APP_LCNAME=APP_NAME.toLowerCase();const APP_UPNAME=APP_NAME.toUpperCase();const APP_CONSTS={fabID:"".concat(APP_LCNAME,"-fab"),boxID:"".concat(APP_LCNAME,"-box"),popupID:"".concat(APP_LCNAME,"-popup")};const APP_VERSION="2.0.8".split(".");const THEME_LIGHT="light";const THEME_DARK="dark"; +const APP_NAME="KISS Translator".trim().split(/\s+/).join("-");const APP_LCNAME=APP_NAME.toLowerCase();const APP_UPNAME=APP_NAME.toUpperCase();const APP_CONSTS={fabID:"".concat(APP_LCNAME,"-fab"),boxID:"".concat(APP_LCNAME,"-box"),popupID:"".concat(APP_LCNAME,"-popup")};const APP_VERSION="2.0.9".split(".");const THEME_LIGHT="light";const THEME_DARK="dark"; ;// CONCATENATED MODULE: ./src/config/api.js const DEFAULT_HTTP_TIMEOUT=10000;// 调用超时时间 const DEFAULT_FETCH_LIMIT=10;// 默认最大任务数量 @@ -34964,7 +34964,7 @@ temperature:0.0,maxTokens:20480,// think: false, // (OpenAI 兼容接口未支 // thinkIgnore: "qwen3,deepseek-r1", // (OpenAI 兼容接口未支持,暂时移除) isDisabled:false,// 是否不显示, region:""// Azure 专用 -};const defaultApiOpts={[OPT_TRANS_BUILTINAI]:defaultApi,[OPT_TRANS_GOOGLE]:_objectSpread2(_objectSpread2({},defaultApi),{},{url:"https://translate.googleapis.com/translate_a/single"}),[OPT_TRANS_GOOGLE_2]:_objectSpread2(_objectSpread2({},defaultApi),{},{url:"https://translate-pa.googleapis.com/v1/translateHtml",key:"AIzaSyATBXajvzQLTDHEQbcpq0Ihe0vWDHmO520",useBatchFetch:true}),[OPT_TRANS_MICROSOFT]:_objectSpread2(_objectSpread2({},defaultApi),{},{useBatchFetch:true}),[OPT_TRANS_AZUREAI]:_objectSpread2(_objectSpread2({},defaultApi),{},{url:"https://api.cognitive.microsofttranslator.com/translate?api-version=3.0",useBatchFetch:true}),[OPT_TRANS_BAIDU]:_objectSpread2({},defaultApi),[OPT_TRANS_TENCENT]:_objectSpread2(_objectSpread2({},defaultApi),{},{useBatchFetch:true}),[OPT_TRANS_VOLCENGINE]:_objectSpread2({},defaultApi),[OPT_TRANS_DEEPL]:_objectSpread2(_objectSpread2({},defaultApi),{},{url:"https://api-free.deepl.com/v2/translate",useBatchFetch:true}),[OPT_TRANS_DEEPLFREE]:_objectSpread2(_objectSpread2({},defaultApi),{},{fetchLimit:1}),[OPT_TRANS_DEEPLX]:_objectSpread2(_objectSpread2({},defaultApi),{},{url:"http://localhost:1188/translate"}),[OPT_TRANS_NIUTRANS]:_objectSpread2(_objectSpread2({},defaultApi),{},{url:"https://api.niutrans.com/NiuTransServer/translation",dictNo:"",memoryNo:""}),[OPT_TRANS_OPENAI]:_objectSpread2(_objectSpread2({},defaultApi),{},{url:"https://api.openai.com/v1/chat/completions",model:"gpt-4",useBatchFetch:true}),[OPT_TRANS_GEMINI]:_objectSpread2(_objectSpread2({},defaultApi),{},{url:"https://generativelanguage.googleapis.com/v1/models/".concat(INPUT_PLACE_MODEL,":generateContent?key=").concat(INPUT_PLACE_KEY),model:"gemini-2.5-flash",useBatchFetch:true}),[OPT_TRANS_GEMINI_2]:_objectSpread2(_objectSpread2({},defaultApi),{},{url:"https://generativelanguage.googleapis.com/v1beta/openai/chat/completions",model:"gemini-2.0-flash",useBatchFetch:true}),[OPT_TRANS_CLAUDE]:_objectSpread2(_objectSpread2({},defaultApi),{},{url:"https://api.anthropic.com/v1/messages",model:"claude-3-haiku-20240307",useBatchFetch:true}),[OPT_TRANS_CLOUDFLAREAI]:_objectSpread2(_objectSpread2({},defaultApi),{},{url:"https://api.cloudflare.com/client/v4/accounts/{{ACCOUNT_ID}}/ai/run/@cf/meta/m2m100-1.2b"}),[OPT_TRANS_OLLAMA]:_objectSpread2(_objectSpread2({},defaultApi),{},{url:"http://localhost:11434/v1/chat/completions",model:"llama3.1",useBatchFetch:true}),[OPT_TRANS_OPENROUTER]:_objectSpread2(_objectSpread2({},defaultApi),{},{url:"https://openrouter.ai/api/v1/chat/completions",model:"openai/gpt-4o",useBatchFetch:true}),[OPT_TRANS_CUSTOMIZE]:_objectSpread2(_objectSpread2({},defaultApi),{},{url:"https://translate.googleapis.com/translate_a/single?client=gtx&dj=1&dt=t&ie=UTF-8&q={{text}}&sl=en&tl=zh-CN",reqHook:defaultRequestHook,resHook:defaultResponseHook})};// 内置翻译接口列表(带参数) +};const defaultApiOpts={[OPT_TRANS_BUILTINAI]:defaultApi,[OPT_TRANS_GOOGLE]:_objectSpread2(_objectSpread2({},defaultApi),{},{url:"https://translate.googleapis.com/translate_a/single"}),[OPT_TRANS_GOOGLE_2]:_objectSpread2(_objectSpread2({},defaultApi),{},{url:"https://translate-pa.googleapis.com/v1/translateHtml",key:"AIzaSyATBXajvzQLTDHEQbcpq0Ihe0vWDHmO520",useBatchFetch:true}),[OPT_TRANS_MICROSOFT]:_objectSpread2(_objectSpread2({},defaultApi),{},{useBatchFetch:true}),[OPT_TRANS_AZUREAI]:_objectSpread2(_objectSpread2({},defaultApi),{},{url:"https://api.cognitive.microsofttranslator.com/translate?api-version=3.0",useBatchFetch:true}),[OPT_TRANS_BAIDU]:_objectSpread2({},defaultApi),[OPT_TRANS_TENCENT]:_objectSpread2(_objectSpread2({},defaultApi),{},{useBatchFetch:true}),[OPT_TRANS_VOLCENGINE]:_objectSpread2({},defaultApi),[OPT_TRANS_DEEPL]:_objectSpread2(_objectSpread2({},defaultApi),{},{url:"https://api-free.deepl.com/v2/translate",useBatchFetch:true}),[OPT_TRANS_DEEPLFREE]:_objectSpread2(_objectSpread2({},defaultApi),{},{fetchLimit:1}),[OPT_TRANS_DEEPLX]:_objectSpread2(_objectSpread2({},defaultApi),{},{url:"http://localhost:1188/translate"}),[OPT_TRANS_NIUTRANS]:_objectSpread2(_objectSpread2({},defaultApi),{},{url:"https://api.niutrans.com/NiuTransServer/translation",dictNo:"",memoryNo:""}),[OPT_TRANS_OPENAI]:_objectSpread2(_objectSpread2({},defaultApi),{},{url:"https://api.openai.com/v1/chat/completions",model:"gpt-4",useBatchFetch:true}),[OPT_TRANS_GEMINI]:_objectSpread2(_objectSpread2({},defaultApi),{},{url:"https://generativelanguage.googleapis.com/v1/models/".concat(INPUT_PLACE_MODEL,":generateContent?key=").concat(INPUT_PLACE_KEY),model:"gemini-2.5-flash",useBatchFetch:true}),[OPT_TRANS_GEMINI_2]:_objectSpread2(_objectSpread2({},defaultApi),{},{url:"https://generativelanguage.googleapis.com/v1beta/openai/chat/completions",model:"gemini-2.0-flash",useBatchFetch:true}),[OPT_TRANS_CLAUDE]:_objectSpread2(_objectSpread2({},defaultApi),{},{url:"https://api.anthropic.com/v1/messages",model:"claude-3-haiku-20240307",useBatchFetch:true}),[OPT_TRANS_CLOUDFLAREAI]:_objectSpread2(_objectSpread2({},defaultApi),{},{url:"https://api.cloudflare.com/client/v4/accounts/{{ACCOUNT_ID}}/ai/run/@cf/meta/m2m100-1.2b"}),[OPT_TRANS_OLLAMA]:_objectSpread2(_objectSpread2({},defaultApi),{},{url:"http://localhost:11434/v1/chat/completions",model:"llama3.1",useBatchFetch:true}),[OPT_TRANS_OPENROUTER]:_objectSpread2(_objectSpread2({},defaultApi),{},{url:"https://openrouter.ai/api/v1/chat/completions",model:"openai/gpt-4o",useBatchFetch:true}),[OPT_TRANS_CUSTOMIZE]:_objectSpread2(_objectSpread2({},defaultApi),{},{reqHook:defaultRequestHook,resHook:defaultResponseHook})};// 内置翻译接口列表(带参数) const DEFAULT_API_LIST=OPT_ALL_TRANS_TYPES.map(apiType=>_objectSpread2(_objectSpread2({},defaultApiOpts[apiType]),{},{apiSlug:apiType,apiName:apiType,apiType}));const DEFAULT_API_TYPE=OPT_TRANS_MICROSOFT;const DEFAULT_API_SETTING=DEFAULT_API_LIST.find(a=>a.apiType===DEFAULT_API_TYPE); ;// CONCATENATED MODULE: ./src/config/styles.js const OPT_STYLE_NONE="style_none";// 无 @@ -35201,7 +35201,13 @@ rootMargin:500,// 提前触发翻译 customStyles:DEFAULT_CUSTOM_STYLES// 自定义样式列表 }; ;// CONCATENATED MODULE: ./src/config/i18n.js -const UI_LANGS=(/* unused pure expression or super */ null && ([["en","English"],["zh","简体中文"],["zh_TW","繁體中文"]]));const customApiLangs="[\"en\", \"English - English\"],\n[\"zh-CN\", \"Simplified Chinese - \u7B80\u4F53\u4E2D\u6587\"],\n[\"zh-TW\", \"Traditional Chinese - \u7E41\u9AD4\u4E2D\u6587\"],\n[\"ar\", \"Arabic - \u0627\u0644\u0639\u0631\u0628\u064A\u0629\"],\n[\"bg\", \"Bulgarian - \u0411\u044A\u043B\u0433\u0430\u0440\u0441\u043A\u0438\"],\n[\"ca\", \"Catalan - Catal\xE0\"],\n[\"hr\", \"Croatian - Hrvatski\"],\n[\"cs\", \"Czech - \u010Ce\u0161tina\"],\n[\"da\", \"Danish - Dansk\"],\n[\"nl\", \"Dutch - Nederlands\"],\n[\"fi\", \"Finnish - Suomi\"],\n[\"fr\", \"French - Fran\xE7ais\"],\n[\"de\", \"German - Deutsch\"],\n[\"el\", \"Greek - \u0395\u03BB\u03BB\u03B7\u03BD\u03B9\u03BA\u03AC\"],\n[\"hi\", \"Hindi - \u0939\u093F\u0928\u094D\u0926\u0940\"],\n[\"hu\", \"Hungarian - Magyar\"],\n[\"id\", \"Indonesian - Indonesia\"],\n[\"it\", \"Italian - Italiano\"],\n[\"ja\", \"Japanese - \u65E5\u672C\u8A9E\"],\n[\"ko\", \"Korean - \uD55C\uAD6D\uC5B4\"],\n[\"ms\", \"Malay - Melayu\"],\n[\"mt\", \"Maltese - Malti\"],\n[\"nb\", \"Norwegian - Norsk Bokm\xE5l\"],\n[\"pl\", \"Polish - Polski\"],\n[\"pt\", \"Portuguese - Portugu\xEAs\"],\n[\"ro\", \"Romanian - Rom\xE2n\u0103\"],\n[\"ru\", \"Russian - \u0420\u0443\u0441\u0441\u043A\u0438\u0439\"],\n[\"sk\", \"Slovak - Sloven\u010Dina\"],\n[\"sl\", \"Slovenian - Sloven\u0161\u010Dina\"],\n[\"es\", \"Spanish - Espa\xF1ol\"],\n[\"sv\", \"Swedish - Svenska\"],\n[\"ta\", \"Tamil - \u0BA4\u0BAE\u0BBF\u0BB4\u0BCD\"],\n[\"te\", \"Telugu - \u0C24\u0C46\u0C32\u0C41\u0C17\u0C41\"],\n[\"th\", \"Thai - \u0E44\u0E17\u0E22\"],\n[\"tr\", \"Turkish - T\xFCrk\xE7e\"],\n[\"uk\", \"Ukrainian - \u0423\u043A\u0440\u0430\u0457\u043D\u0441\u044C\u043A\u0430\"],\n[\"vi\", \"Vietnamese - Ti\u1EBFng Vi\u1EC7t\"],\n";const customApiHelpZH="// \u8BF7\u6C42\u6570\u636E\u9ED8\u8BA4\u683C\u5F0F\n{\n \"url\": \"{{url}}\",\n \"method\": \"POST\",\n \"headers\": {\n \"Content-type\": \"application/json\",\n \"Authorization\": \"Bearer {{key}}\"\n },\n \"body\": {\n \"text\": \"{{text}}\", // \u5F85\u7FFB\u8BD1\u6587\u5B57\n \"from\": \"{{from}}\", // \u6587\u5B57\u7684\u8BED\u8A00\uFF08\u53EF\u80FD\u4E3A\u7A7A\uFF09\n \"to\": \"{{to}}\", // \u76EE\u6807\u8BED\u8A00\n },\n}\n\n\n// \u8FD4\u56DE\u6570\u636E\u9ED8\u8BA4\u683C\u5F0F\n{\n text: \"\", // \u7FFB\u8BD1\u540E\u7684\u6587\u5B57\n from: \"\", // \u8BC6\u522B\u7684\u6E90\u8BED\u8A00\n to: \"\", // \u76EE\u6807\u8BED\u8A00\uFF08\u53EF\u9009\uFF09\n}\n\n\n// Hook \u8303\u4F8B\n// URL\nhttps://translate.googleapis.com/translate_a/single?client=gtx&dj=1&dt=t&ie=UTF-8&q={{text}}&sl=en&tl=zh-CN\n\n// Request Hook\n(text, from, to, url, key) => [url, {\n headers: {\n \"Content-type\": \"application/json\",\n },\n method: \"GET\",\n body: null,\n}]\n\n// Response Hook\n// \u5176\u4E2D\u8FD4\u56DE\u6570\u7EC4\u7B2C\u4E00\u4E2A\u503C\u8868\u793A\u8BD1\u6587\u5B57\u7B26\u4E32\uFF0C\u7B2C\u4E8C\u4E2A\u503C\u4E3A\u5E03\u5C14\u503C\uFF0C\u8868\u793A\u539F\u6587\u8BED\u8A00\u4E0E\u76EE\u6807\u8BED\u8A00\u662F\u5426\u76F8\u540C\n(res, text, from, to) => [res.sentences.map((item) => item.trans).join(\" \"), to === res.src]\n\n\n// \u652F\u6301\u7684\u8BED\u8A00\u4EE3\u7801\u5982\u4E0B\n".concat(customApiLangs,"\n");const customApiHelpEN="// Default request\n{\n \"url\": \"{{url}}\",\n \"method\": \"POST\",\n \"headers\": {\n \"Content-type\": \"application/json\",\n \"Authorization\": \"Bearer {{key}}\"\n },\n \"body\": {\n \"text\": \"{{text}}\", // Text to be translated\n \"from\": \"{{from}}\", // The language of the text (may be empty)\n \"to\": \"{{to}}\", // Target language\n },\n}\n\n\n// Default response\n{\n text: \"\", // translated text\n from: \"\", // Recognized source language\n to: \"\", // Target language (optional)\n}\n\n\n/// Hook Example\n// URL\nhttps://translate.googleapis.com/translate_a/single?client=gtx&dj=1&dt=t&ie=UTF-8&q={{text}}&sl=en&tl=zh-CN\n\n// Request Hook\n(text, from, to, url, key) => [url, {\n headers: {\n \"Content-type\": \"application/json\",\n },\n method: \"GET\",\n body: null,\n}]\n\n// Response Hook\n// In the returned array, the first value is the translated string, while the second value is a boolean\n// that indicates whether the source language is the same as the target language.\n(res, text, from, to) => [res.sentences.map((item) => item.trans).join(\" \"), to === res.src]\n\n\n// The supported language codes are as follows\n".concat(customApiLangs,"\n");const requestHookHelperZH="1\u3001\u7B2C\u4E00\u4E2A\u53C2\u6570\u5305\u542B\u5982\u4E0B\u5B57\u6BB5\uFF1A'texts', 'from', 'to', 'url', 'key', 'model', 'systemPrompt', ...\n2\u3001\u8FD4\u56DE\u503C\u5FC5\u987B\u662F\u5305\u542B\u4EE5\u4E0B\u5B57\u6BB5\u7684\u5BF9\u8C61\uFF1A 'url', 'body', 'headers', 'method'\n3\u3001\u5982\u8FD4\u56DE\u7A7A\u503C\uFF0C\u5219hook\u51FD\u6570\u4E0D\u4F1A\u4EA7\u751F\u4EFB\u4F55\u6548\u679C\u3002\n\n// \u793A\u4F8B\nasync (args, { url, body, headers, userMsg, method } = {}) => {\n return { url, body, headers, userMsg, method };\n}";const requestHookHelperEN="1. The first parameter contains the following fields: 'texts', 'from', 'to', 'url', 'key', 'model', 'systemPrompt', ...\n2. The return value must be an object containing the following fields: 'url', 'body', 'headers', 'method'\n3. If a null value is returned, the hook function will have no effect.\n\n// Example\nasync (args, { url, body, headers, userMsg, method } = {}) => {\n return { url, body, headers, userMsg, method };\n}";const responsetHookHelperZH="1\u3001\u7B2C\u4E00\u4E2A\u53C2\u6570\u5305\u542B\u5982\u4E0B\u5B57\u6BB5\uFF1A'res', ...\n2\u3001\u8FD4\u56DE\u503C\u5FC5\u987B\u662F\u5305\u542B\u4EE5\u4E0B\u5B57\u6BB5\u7684\u5BF9\u8C61\uFF1A 'translations'\n \uFF08'translations' \u5E94\u4E3A\u4E00\u4E2A\u4E8C\u7EF4\u6570\u7EC4\uFF1A[[\u8BD1\u6587, \u539F\u6587\u8BED\u8A00]]\uFF09\n3\u3001\u5982\u8FD4\u56DE\u7A7A\u503C\uFF0C\u5219hook\u51FD\u6570\u4E0D\u4F1A\u4EA7\u751F\u4EFB\u4F55\u6548\u679C\u3002\n\n// \u793A\u4F8B\nasync ({ res, ...args }) => {\n const translations = [[\"\u4F60\u597D\", \"en\"]];\n const modelMsg = {}; // \u7528\u4E8EAI\u4E0A\u4E0B\u6587\n return { translations, modelMsg };\n}";const responsetHookHelperEN="1. The first parameter contains the following fields: 'res', ...\n2. The return value must be an object containing the following fields: 'translations'\n ('translations' should be a two-dimensional array: [[translation, source language]]).\n3. If a null value is returned, the hook function will have no effect.\n\n// Example\nasync ({ res, ...args }) => {\n const translations = [[\"\u4F60\u597D\", \"en\"]];\n const modelMsg = {}; // For AI context\n return { translations, modelMsg };\n}";const I18N={app_name:{zh:"\u7B80\u7EA6\u7FFB\u8BD1",en:"KISS Translator",zh_TW:"\u7C21\u7D04\u7FFB\u8B6F"},translate:{zh:"\u7FFB\u8BD1",en:"Translate",zh_TW:"\u7FFB\u8B6F"},custom_api_help:{zh:customApiHelpZH,en:customApiHelpEN,zh_TW:customApiHelpZH},request_hook_helper:{zh:requestHookHelperZH,en:requestHookHelperEN,zh_TW:requestHookHelperZH},response_hook_helper:{zh:responsetHookHelperZH,en:responsetHookHelperEN,zh_TW:responsetHookHelperZH},translate_alt:{zh:"\u7FFB\u8BD1",en:"Translate",zh_TW:"\u7FFB\u8B6F"},basic_setting:{zh:"\u57FA\u672C\u8BBE\u7F6E",en:"Basic Setting",zh_TW:"\u57FA\u672C\u8A2D\u5B9A"},rules_setting:{zh:"\u89C4\u5219\u8BBE\u7F6E",en:"Rules Setting",zh_TW:"\u898F\u5247\u8A2D\u5B9A"},apis_setting:{zh:"\u63A5\u53E3\u8BBE\u7F6E",en:"Apis Setting",zh_TW:"API\u8A2D\u5B9A"},sync_setting:{zh:"\u540C\u6B65\u8BBE\u7F6E",en:"Sync Setting",zh_TW:"\u540C\u6B65\u8A2D\u5B9A"},patch_setting:{zh:"\u8865\u4E01\u8BBE\u7F6E",en:"Patch Setting",zh_TW:"\u4FEE\u88DC\u8A2D\u5B9A"},patch_setting_help:{zh:"\u9488\u5BF9\u4E00\u4E9B\u7279\u6B8A\u7F51\u7AD9\u7684\u4FEE\u6B63\u811A\u672C\uFF0C\u4EE5\u4FBF\u7FFB\u8BD1\u8F6F\u4EF6\u5F97\u5230\u66F4\u597D\u7684\u5C55\u793A\u6548\u679C\u3002",en:"Corrected scripts for some special websites so that the translation software can get better display results.",zh_TW:"\u91DD\u5C0D\u67D0\u4E9B\u7279\u6B8A\u7DB2\u7AD9\u7684\u4FEE\u6B63\u8173\u672C\uFF0C\u8B93\u7FFB\u8B6F\u8EDF\u9AD4\u6709\u66F4\u597D\u7684\u986F\u793A\u6548\u679C\u3002"},inject_webfix:{zh:"\u6CE8\u5165\u4FEE\u590D\u8865\u4E01",en:"Inject Webfix",zh_TW:"\u6CE8\u5165\u4FEE\u6B63\u88DC\u4E01"},about:{zh:"\u5173\u4E8E",en:"About",zh_TW:"\u95DC\u65BC"},about_md:{zh:"README.md",en:"README.en.md",zh_TW:"README.md"},about_md_local:{zh:"\u8BF7 [\u70B9\u51FB\u8FD9\u91CC](".concat("https://github.com/fishjar/kiss-translator",") \u67E5\u770B\u8BE6\u60C5\u3002"),en:"Please [click here](".concat("https://github.com/fishjar/kiss-translator",") for details."),zh_TW:"\u8ACB\u3010\u9EDE\u9019\u88E1\u3011\u67E5\u770B\u8A73\u7D30\u5167\u5BB9\u3002"},ui_lang:{zh:"\u754C\u9762\u8BED\u8A00",en:"Interface Language",zh_TW:"\u4ECB\u9762\u8A9E\u8A00"},fetch_limit:{zh:"\u6700\u5927\u5E76\u53D1\u8BF7\u6C42\u6570\u91CF (1-100)",en:"Maximum Number Of Concurrent Requests (1-100)",zh_TW:"\u6700\u5927\u540C\u6642\u8ACB\u6C42\u6578\u91CF (1-100)"},if_think:{zh:"\u542F\u7528\u6216\u7981\u7528\u6A21\u578B\u7684\u6DF1\u5EA6\u601D\u8003\u80FD\u529B",en:"Enable or disable the model\u2019s thinking behavior ",zh_TW:"\u555F\u7528\u6216\u505C\u7528\u6A21\u578B\u7684\u6DF1\u5EA6\u601D\u8003\u80FD\u529B"},think:{zh:"\u542F\u7528\u6DF1\u5EA6\u601D\u8003",en:"enable thinking",zh_TW:"\u555F\u7528\u6DF1\u5EA6\u601D\u8003"},nothink:{zh:"\u7981\u7528\u6DF1\u5EA6\u601D\u8003",en:"disable thinking",zh_TW:"\u505C\u7528\u6DF1\u5EA6\u601D\u8003"},think_ignore:{zh:"\u5FFD\u7565\u4EE5\u4E0B\u6A21\u578B\u7684\u8F93\u51FA,\u9017\u53F7(,)\u5206\u5272,\u5F53\u6A21\u578B\u652F\u6301\u601D\u8003\u4F46ollama\u4E0D\u652F\u6301\u65F6\u9700\u8981\u586B\u5199\u672C\u53C2\u6570",en:"Ignore the block for the following models, comma (,) separated",zh_TW:"\u5FFD\u7565\u4EE5\u4E0B\u6A21\u578B\u7684 \u8F38\u51FA\uFF0C\u4EE5\u9017\u865F (,) \u5206\u9694\uFF1B\u7576\u6A21\u578B\u652F\u63F4\u601D\u8003\u4F46 ollama \u4E0D\u652F\u63F4\u6642\u9700\u8981\u586B\u5BEB\u6B64\u53C3\u6578"},fetch_interval:{zh:"\u6BCF\u6B21\u8BF7\u6C42\u95F4\u9694\u65F6\u95F4 (0-5000ms)",en:"Time Between Requests (0-5000ms)",zh_TW:"\u6BCF\u6B21\u8ACB\u6C42\u9593\u9694\u6642\u9593 (0-5000ms)"},translate_interval:{zh:"\u7FFB\u8BD1\u95F4\u9694\u65F6\u95F4 (10-2000ms)",en:"Translation Interval (10-2000ms)",zh_TW:"\u7FFB\u8B6F\u9593\u9694\u6642\u9593 (10-2000ms)"},http_timeout:{zh:"\u8BF7\u6C42\u8D85\u65F6\u65F6\u95F4 (5000-60000ms)",en:"Request Timeout Time (5000-60000ms)",zh_TW:"\u8ACB\u6C42\u903E\u6642\u6642\u9593 (5000-60000ms)"},custom_header:{zh:"\u81EA\u5B9A\u4E49Header\u53C2\u6570",en:"Custom Header Params"},custom_header_help:{zh:"\u4F7F\u7528JSON\u683C\u5F0F\uFF0C\u4F8B\u5982 \"User-Agent\": \"Mozilla/5.0 (X11; Linux x86_64; rv:141.0) Gecko/20100101 Firefox/141.0\"",en:"Use JSON format, for example \"User-Agent\": \"Mozilla/5.0 (X11; Linux x86_64; rv:141.0) Gecko/20100101 Firefox/141.0\""},custom_body:{zh:"\u81EA\u5B9A\u4E49Body\u53C2\u6570",en:"Custom Body Params"},custom_body_help:{zh:"\u4F7F\u7528JSON\u683C\u5F0F\uFF0C\u4F8B\u5982 \"top_p\": 0.7",en:"Use JSON format, for example \"top_p\": 0.7"},min_translate_length:{zh:"\u6700\u5C0F\u7FFB\u8BD1\u5B57\u7B26\u6570 (1-100)",en:"Minimum number Of Translated Characters (1-100)",zh_TW:"\u6700\u5C0F\u7FFB\u8B6F\u5B57\u5143\u6578 (1-100)"},max_translate_length:{zh:"\u6700\u5927\u7FFB\u8BD1\u5B57\u7B26\u6570 (100-100000)",en:"Maximum number Of Translated Characters (100-100000)",zh_TW:"\u6700\u5927\u7FFB\u8B6F\u5B57\u5143\u6578 (100-100000)"},num_of_newline_characters:{zh:"\u6362\u884C\u5B57\u7B26\u6570 (1-1000)",en:"Number of Newline Characters (1-1000)",zh_TW:"\u63DB\u884C\u5B57\u5143\u6578 (1-1000)"},translate_service:{zh:"\u7FFB\u8BD1\u670D\u52A1",en:"Translate Service",zh_TW:"\u7FFB\u8B6F\u670D\u52D9"},translate_service_multiple:{zh:"\u7FFB\u8BD1\u670D\u52A1 (\u652F\u6301\u591A\u9009)",en:"Translation service (multiple supported)",zh_TW:"\u7FFB\u8B6F\u670D\u52D9 (\u652F\u63F4\u591A\u9078)"},translate_timing:{zh:"\u7FFB\u8BD1\u65F6\u673A",en:"Translate Timing",zh_TW:"\u7FFB\u8B6F\u6642\u6A5F"},mk_pagescroll:{zh:"\u6EDA\u52A8\u52A0\u8F7D\u7FFB\u8BD1\uFF08\u63A8\u8350\uFF09",en:"Rolling Loading (Suggested)",zh_TW:"\u6EFE\u52D5\u8F09\u5165\u7FFB\u8B6F\uFF08\u5EFA\u8B70\uFF09"},mk_pageopen:{zh:"\u7ACB\u5373\u5168\u90E8\u7FFB\u8BD1",en:"Translate all now",zh_TW:"\u7ACB\u5373\u5168\u90E8\u7FFB\u8B6F"},mk_mouseover:{zh:"\u9F20\u6807\u60AC\u505C\u7FFB\u8BD1",en:"Mouseover",zh_TW:"\u6ED1\u9F20\u61F8\u505C\u7FFB\u8B6F"},mk_ctrlKey:{zh:"Control + \u9F20\u6807\u60AC\u505C",en:"Control + Mouseover",zh_TW:"Control + \u6ED1\u9F20\u61F8\u505C"},mk_shiftKey:{zh:"Shift + \u9F20\u6807\u60AC\u505C",en:"Shift + Mouseover",zh_TW:"Shift + \u6ED1\u9F20\u61F8\u505C"},mk_altKey:{zh:"Alt + \u9F20\u6807\u60AC\u505C",en:"Alt + Mouseover",zh_TW:"Alt + \u6ED1\u9F20\u61F8\u505C"},from_lang:{zh:"\u539F\u6587\u8BED\u8A00",en:"Source Language",zh_TW:"\u539F\u6587\u8A9E\u8A00"},to_lang:{zh:"\u76EE\u6807\u8BED\u8A00",en:"Target Language",zh_TW:"\u76EE\u6A19\u8A9E\u8A00"},to_lang2:{zh:"\u7B2C\u4E8C\u76EE\u6807\u8BED\u8A00",en:"Target Language 2",zh_TW:"\u7B2C\u4E8C\u76EE\u6A19\u8A9E\u8A00"},to_lang2_helper:{zh:"\u8BBE\u5B9A\u540E\uFF0C\u4E0E\u76EE\u6807\u8BED\u8A00\u4EA7\u751F\u4E92\u8BD1\u6548\u679C\uFF0C\u4F46\u4F9D\u8D56\u8FDC\u7A0B\u8BED\u8A00\u8BC6\u522B\u3002",en:"After setting, it will produce mutual translation effect with the target language, but it relies on remote language recognition.",zh_TW:"\u8A2D\u5B9A\u5F8C\u6703\u8207\u76EE\u6A19\u8A9E\u8A00\u4E92\u8B6F\uFF0C\u4F46\u4F9D\u8CF4\u9060\u7AEF\u8A9E\u8A00\u8B58\u5225\u3002"},text_style:{zh:"\u8BD1\u6587\u6837\u5F0F",en:"Text Style",zh_TW:"\u8B6F\u6587\u6A23\u5F0F"},text_style_alt:{zh:"\u8BD1\u6587\u6837\u5F0F",en:"Text Style",zh_TW:"\u8B6F\u6587\u6A23\u5F0F"},bg_color:{zh:"\u6837\u5F0F\u989C\u8272",en:"Style Color",zh_TW:"\u6A23\u5F0F\u984F\u8272"},remain_unchanged:{zh:"\u4FDD\u7559\u4E0D\u53D8",en:"Remain Unchanged",zh_TW:"\u4FDD\u7559\u4E0D\u8B8A"},google_api:{zh:"\u8C37\u6B4C\u7FFB\u8BD1\u63A5\u53E3",en:"Google Translate API",zh_TW:"Google \u7FFB\u8B6F\u4ECB\u9762"},default_selector:{zh:"\u9ED8\u8BA4\u9009\u62E9\u5668",en:"Default selector",zh_TW:"\u9810\u8A2D\u9078\u64C7\u5668"},selector_rules:{zh:"\u9009\u62E9\u5668\u89C4\u5219",en:"Selector Rules",zh_TW:"\u9078\u64C7\u5668\u898F\u5247"},save:{zh:"\u4FDD\u5B58",en:"Save",zh_TW:"\u5132\u5B58"},edit:{zh:"\u7F16\u8F91",en:"Edit",zh_TW:"\u7DE8\u8F2F"},cancel:{zh:"\u53D6\u6D88",en:"Cancel",zh_TW:"\u53D6\u6D88"},delete:{zh:"\u5220\u9664",en:"Delete",zh_TW:"\u522A\u9664"},reset:{zh:"\u91CD\u7F6E",en:"Reset",zh_TW:"\u91CD\u8A2D"},add:{zh:"\u6DFB\u52A0",en:"Add",zh_TW:"\u65B0\u589E"},inject_rules:{zh:"\u6CE8\u5165\u8BA2\u9605\u89C4\u5219",en:"Inject Subscribe Rules",zh_TW:"\u6CE8\u5165\u8A02\u95B1\u898F\u5247"},personal_rules:{zh:"\u4E2A\u4EBA\u89C4\u5219",en:"Rules",zh_TW:"\u500B\u4EBA\u898F\u5247"},subscribe_rules:{zh:"\u8BA2\u9605\u89C4\u5219",en:"Subscribe",zh_TW:"\u8A02\u95B1\u898F\u5247"},overwrite_subscribe_rules:{zh:"\u8986\u5199\u8BA2\u9605\u89C4\u5219",en:"Overwrite",zh_TW:"\u8986\u5BEB\u8A02\u95B1\u898F\u5247"},subscribe_url:{zh:"\u8BA2\u9605\u5730\u5740",en:"Subscribe URL",zh_TW:"\u8A02\u95B1\u7DB2\u5740"},rules_warn_1:{zh:"1\u3001\u89C4\u5219\u751F\u6548\u7684\u4F18\u5148\u7EA7\u4F9D\u6B21\u4E3A\uFF1A\u4E2A\u4EBA\u89C4\u5219 > \u8BA2\u9605\u89C4\u5219 > \u5168\u5C40\u89C4\u5219\u3002\"\u5168\u5C40\u89C4\u5219\"\u76F8\u5F53\u4E8E\u515C\u5E95\u89C4\u5219\u3002",en:"1. The priority of rules is: personal rules > subscription rules > global rules. \"Global rules\" are like a fallback rule.",zh_TW:"1.\u898F\u5247\u751F\u6548\u7684\u512A\u5148\u9806\u5E8F\u4F9D\u5E8F\u70BA\uFF1A\u500B\u4EBA\u898F\u5247 > \u8A02\u95B1\u898F\u5247 > \u5168\u57DF\u898F\u5247\u3002 \"\u5168\u57DF\u898F\u5247\"\u76F8\u7576\u65BC\u515C\u5E95\u898F\u5247\u3002"},rules_warn_2:{zh:"2\u3001\u201C\u8BA2\u9605\u89C4\u5219\u201D\u9009\u62E9\u6CE8\u5165\u540E\u624D\u4F1A\u751F\u6548\u3002",en:"2. \"Subscription rules\" will take effect only after injection is selected.",zh_TW:"2\u3001\u300C\u8A02\u95B1\u898F\u5247\u300D\u9078\u64C7\u6CE8\u5165\u5F8C\u624D\u6703\u751F\u6548\u3002"},rules_warn_3:{zh:"3\u3001\u5173\u4E8E\u89C4\u5219\u586B\u5199\uFF1A\u8F93\u5165\u6846\u7559\u7A7A\u6216\u4E0B\u62C9\u6846\u9009\u201C*\u201D\u8868\u793A\u91C7\u7528\u5168\u5C40\u89C4\u5219\u3002",en:"3. Regarding filling in the rules: Leave the input box blank or select \"*\" in the drop-down box to use global rule.",zh_TW:"3. \u898F\u5247\u586B\u5BEB\u8AAA\u660E\uFF1A\u8F38\u5165\u6846\u7559\u7A7A\u6216\u4E0B\u62C9\u9078\u64C7\u300C*\u300D\u8868\u793A\u4F7F\u7528\u5168\u57DF\u898F\u5247\u3002"},sync_warn:{zh:"\u6D89\u53CA\u9690\u79C1\u6570\u636E\u7684\u540C\u6B65\u8BF7\u8C28\u614E\u9009\u62E9\u7B2C\u4E09\u65B9\u540C\u6B65\u670D\u52A1\uFF0C\u5EFA\u8BAE\u81EA\u884C\u642D\u5EFA kiss-worker \u6216 WebDAV \u670D\u52A1\u3002",en:"When synchronizing data that involves privacy, please be cautious about choosing third-party sync services. It is recommended to set up your own sync service using kiss-worker or WebDAV.",zh_TW:"\u540C\u6B65\u6D89\u53CA\u96B1\u79C1\u8CC7\u6599\u6642\uFF0C\u8ACB\u8B39\u614E\u9078\u64C7\u7B2C\u4E09\u65B9\u540C\u6B65\u670D\u52D9\uFF1B\u5EFA\u8B70\u81EA\u5EFA kiss-worker \u6216 WebDAV \u670D\u52D9\u3002"},sync_warn_2:{zh:"\u5982\u679C\u670D\u52A1\u5668\u5B58\u5728\u5176\u4ED6\u5BA2\u6237\u7AEF\u540C\u6B65\u7684\u6570\u636E\uFF0C\u7B2C\u4E00\u6B21\u540C\u6B65\u5C06\u76F4\u63A5\u8986\u76D6\u672C\u5730\u914D\u7F6E\uFF0C\u540E\u9762\u5219\u6839\u636E\u4FEE\u6539\u65F6\u95F4\uFF0C\u65B0\u7684\u8986\u76D6\u65E7\u7684\u3002",en:"If the server has data synchronized by other clients, the first synchronization will directly overwrite the local configuration, and later, according to the modification time, the new one will overwrite the old one.",zh_TW:"\u82E5\u4F3A\u670D\u5668\u4E0A\u5B58\u5728\u5176\u4ED6\u7528\u6236\u7AEF\u540C\u6B65\u7684\u8CC7\u6599\uFF0C\u7B2C\u4E00\u6B21\u540C\u6B65\u6703\u76F4\u63A5\u8986\u84CB\u672C\u6A5F\u8A2D\u5B9A\uFF1B\u4E4B\u5F8C\u5247\u4F9D\u4FEE\u6539\u6642\u9593\uFF0C\u7531\u65B0\u7684\u8986\u84CB\u820A\u7684\u3002"},about_sync_api:{zh:"\u81EA\u5EFAkiss-wroker\u6570\u636E\u540C\u6B65\u670D\u52A1",en:"Self-hosting a Kiss-worker data sync service",zh_TW:"\u81EA\u5EFA kiss-wroker \u8CC7\u6599\u540C\u6B65\u670D\u52D9"},about_api:{zh:"1\u3001\u5176\u4E2D BuiltinAI \u4E3A\u6D4F\u89C8\u5668\u5185\u7F6EAI\u7FFB\u8BD1\uFF0C\u76EE\u524D\u4EC5 Chrome 138 \u53CA\u4EE5\u4E0A\u7248\u672C\u5F97\u5230\u652F\u6301\u3002",en:"1. BuiltinAI is the browser's built-in AI translation, which is currently only supported by Chrome 138 and above.",zh_TW:"1.\u5176\u4E2D BuiltinAI \u70BA\u700F\u89BD\u5668\u5167\u5EFAAI\u7FFB\u8B6F\uFF0C\u76EE\u524D\u50C5 Chrome 138 \u4EE5\u4E0A\u7248\u672C\u652F\u63F4\u3002"},about_api_2:{zh:"2\u3001\u5927\u90E8\u5206AI\u63A5\u53E3\u90FD\u4E0EOpenAI\u517C\u5BB9\uFF0C\u56E0\u6B64\u9009\u62E9\u6DFB\u52A0OpenAI\u7C7B\u578B\u5373\u53EF\u3002It should be noted that Prompt has two types: batch translation and nobatch translation. Not all interfaces support batch translation.",en:"2. Most AI interfaces are compatible with OpenAI, so just choose to add the OpenAI type.",zh_TW:"2.\u5927\u90E8\u5206AI\u4ECB\u9762\u90FD\u8207OpenAI\u76F8\u5BB9\uFF0C\u56E0\u6B64\u9078\u64C7\u65B0\u589EOpenAI\u985E\u578B\u5373\u53EF\u3002\u8981\u6CE8\u610F\u7684\u662FPrompt\u5206\u805A\u5408\u7FFB\u8B6F\u548C\u975E\u805A\u5408\u7FFB\u8B6F\u5169\u7A2E\uFF0C\u4E0D\u662F\u6240\u6709\u4ECB\u9762\u90FD\u652F\u63F4\u805A\u5408\u7FFB\u8B6F\u3002"},about_api_3:{zh:"3\u3001\u6682\u672A\u5217\u51FA\u7684\u63A5\u53E3\uFF0C\u7406\u8BBA\u4E0A\u90FD\u53EF\u4EE5\u901A\u8FC7\u81EA\u5B9A\u4E49\u63A5\u53E3 (Custom) \u7684\u5F62\u5F0F\u652F\u6301\u3002",en:"3. Interfaces that have not yet been launched can theoretically be supported through custom interfaces.",zh_TW:"3\u3001\u66AB\u672A\u5217\u51FA\u7684\u4ECB\u9762\uFF0C\u7406\u8AD6\u4E0A\u90FD\u53EF\u900F\u904E\u81EA\u8A02\u4ECB\u9762 (Custom) \u7684\u5F62\u5F0F\u652F\u63F4\u3002"},about_api_proxy:{zh:"\u67E5\u770B\u81EA\u5EFA\u4E00\u4E2A\u7FFB\u8BD1\u63A5\u53E3\u4EE3\u7406",en:"Check out the self-built translation interface proxy",zh_TW:"\u67E5\u770B\u5982\u4F55\u81EA\u5EFA\u7FFB\u8B6F\u4ECB\u9762 Proxy"},setting_helper:{zh:"\u65B0\u65E7\u914D\u7F6E\u5E76\u4E0D\u517C\u5BB9\uFF0C\u5BFC\u51FA\u7684\u65E7\u7248\u914D\u7F6E\uFF0C\u52FF\u518D\u6B21\u5BFC\u5165\u3002",en:"The old and new configurations are not compatible. Do not import the exported old configuration again.",zh_TW:"\u65B0\u820A\u914D\u7F6E\u4E26\u4E0D\u76F8\u5BB9\uFF0C\u532F\u51FA\u7684\u820A\u7248\u914D\u7F6E\uFF0C\u52FF\u518D\u6B21\u532F\u5165\u3002"},style_none:{zh:"\u65E0",en:"None",zh_TW:"\u7121"},under_line:{zh:"\u4E0B\u5212\u76F4\u7EBF",en:"Underline",zh_TW:"\u4E0B\u5283\u76F4\u7DDA"},dot_line:{zh:"\u4E0B\u5212\u70B9\u72B6\u7EBF",en:"Dotted Underline",zh_TW:"\u4E0B\u5283\u9EDE\u72C0\u7DDA"},dash_line:{zh:"\u4E0B\u5212\u865A\u7EBF",en:"Dashed Underline",zh_TW:"\u4E0B\u5283\u865B\u7DDA"},dash_box:{zh:"\u865A\u7EBF\u6846",en:"Dashed Box"},dash_line_bold:{zh:"\u4E0B\u5212\u865A\u7EBF\u52A0\u7C97",en:"Dashed Underline Bold",zh_TW:"\u4E0B\u5283\u865B\u7DDA"},dash_box_bold:{zh:"\u865A\u7EBF\u6846\u52A0\u7C97",en:"Dashed Box Bold",zh_TW:"\u865B\u7DDA\u6846\u52A0\u7C97"},marker:{zh:"\u9A6C\u514B\u7B14",en:"Marker",zh_TW:"\u99AC\u514B\u7B46"},gradient_marker:{zh:"\u6E10\u53D8\u9A6C\u514B\u7B14",en:"Gradient Marker",zh_TW:"\u6F38\u5C64\u99AC\u514B\u7B46"},wavy_line:{zh:"\u4E0B\u5212\u6CE2\u6D6A\u7EBF",en:"Wavy Underline",zh_TW:"\u4E0B\u5283\u6CE2\u6D6A\u7DDA"},wavy_line_bold:{zh:"\u4E0B\u5212\u6CE2\u6D6A\u7EBF\u52A0\u7C97",en:"Wavy Underline Bold",zh_TW:"\u4E0B\u5283\u6CE2\u6D6A\u7DDA\u52A0\u7C97"},fuzzy:{zh:"\u6A21\u7CCA",en:"Fuzzy",zh_TW:"\u6A21\u7CCA"},highlight:{zh:"\u9AD8\u4EAE",en:"Highlight",zh_TW:"\u53CD\u767D\u6A19\u793A"},blockquote:{zh:"\u5F15\u7528",en:"Blockquote",zh_TW:"\u5F15\u7528"},gradient:{zh:"\u6E10\u53D8",en:"Gradient",zh_TW:"\u6F38\u8B8A"},blink:{zh:"\u95EA\u73B0",en:"Blink",zh_TW:"\u9583\u73FE"},glow:{zh:"\u53D1\u5149",en:"Glow",zh_TW:"\u767C\u5149"},colorful:{zh:"\u591A\u5F69",en:"Colorful",zh_TW:"\u591A\u5F69"},setting:{zh:"\u8BBE\u7F6E",en:"Setting",zh_TW:"\u8A2D\u5B9A"},pattern:{zh:"\u5339\u914D\u7F51\u5740",en:"URL pattern",zh_TW:"\u5339\u914D\u7DB2\u5740"},pattern_helper:{zh:"1\u3001\u652F\u6301\u661F\u53F7(*)\u901A\u914D\u7B26\u30022\u3001\u591A\u4E2AURL\u7528\u6362\u884C\u6216\u82F1\u6587\u9017\u53F7\u201C,\u201D\u5206\u9694\u3002",en:"1. Supports the asterisk (*) wildcard character. 2. Separate multiple URLs with newlines or English commas \",\".",zh_TW:"1. \u652F\u63F4\u661F\u865F (*) \u842C\u7528\u5B57\u5143\u30022. \u591A\u500B URL \u8ACB\u4EE5\u63DB\u884C\u6216\u82F1\u6587\u9017\u865F\u300C,\u300D\u5206\u9694\u3002"},selector_helper:{zh:"1\u3001\u9700\u8981\u7FFB\u8BD1\u7684\u76EE\u6807\u5143\u7D20\u30022\u3001\u5F00\u542F\u81EA\u52A8\u626B\u63CF\u9875\u9762\u540E\uFF0C\u672C\u8BBE\u7F6E\u65E0\u6548\u30023\u3001\u9075\u5FAACSS\u9009\u62E9\u5668\u8BED\u6CD5\u3002",en:"1. The target element to be translated. 2. This setting is invalid when automatic page scanning is enabled. 3. Follow the CSS selector syntax.",zh_TW:"1\u3001\u9700\u8981\u7FFB\u8B6F\u7684\u76EE\u6A19\u5143\u7D20\u3002 2.\u958B\u555F\u81EA\u52D5\u6383\u63CF\u9801\u9762\u5F8C\uFF0C\u672C\u8A2D\u5B9A\u7121\u6548\u3002 3.\u9075\u5FAACSS\u9078\u64C7\u5668\u8A9E\u6CD5\u3002"},translate_switch:{zh:"\u5F00\u542F\u7FFB\u8BD1",en:"Translate Switch",zh_TW:"\u958B\u555F\u7FFB\u8B6F"},default_enabled:{zh:"\u9ED8\u8BA4\u5F00\u542F",en:"Enabled",zh_TW:"\u9810\u8A2D\u958B\u555F"},default_disabled:{zh:"\u9ED8\u8BA4\u5173\u95ED",en:"Disabled",zh_TW:"\u9810\u8A2D\u95DC\u9589"},selector:{zh:"\u9009\u62E9\u5668",en:"Selector",zh_TW:"\u9078\u64C7\u5668"},target_selector:{zh:"\u76EE\u6807\u5143\u7D20\u9009\u62E9\u5668",en:"Target element selector",zh_TW:"\u76EE\u6A19\u5143\u7D20\u9078\u64C7\u5668"},keep_selector:{zh:"\u4FDD\u7559\u5143\u7D20\u9009\u62E9\u5668",en:"Keep unchanged selector",zh_TW:"\u4FDD\u7559\u5143\u7D20\u9078\u64C7\u5668"},keep_selector_helper:{zh:"1\u3001\u76EE\u6807\u5143\u7D20\u4E0B\u9762\u9700\u8981\u539F\u6837\u4FDD\u7559\u7684\u5B50\u8282\u70B9\u30022\u3001\u9075\u5FAACSS\u9009\u62E9\u5668\u8BED\u6CD5\u3002",en:"1. The child nodes under the target element need to remain intact. 2. Follow the CSS selector syntax.",zh_TW:"1. \u76EE\u6A19\u5143\u7D20\u4E0B\u7684\u5B50\u7BC0\u9EDE\u9700\u8981\u4FDD\u6301\u539F\u6A23\u3002 2. \u9075\u5FAA CSS \u9078\u64C7\u5668\u8A9E\u6CD5\u3002"},root_selector:{zh:"\u6839\u8282\u70B9\u9009\u62E9\u5668",en:"Root node selector",zh_TW:"\u6839\u7BC0\u9EDE\u9078\u64C7\u5668"},root_selector_helper:{zh:"1\u3001\u7528\u4E8E\u7F29\u5C0F\u9875\u9762\u7FFB\u8BD1\u8303\u56F4\u30022\u3001\u9075\u5FAACSS\u9009\u62E9\u5668\u8BED\u6CD5\u3002",en:"1. Used to narrow the translation scope of the page. 2. Follow the CSS selector syntax.",zh_TW:"1.\u7528\u65BC\u7E2E\u5C0F\u9801\u9762\u7FFB\u8B6F\u7BC4\u570D\u3002 2\u3001\u9075\u5FAACSS\u9078\u64C7\u5668\u8A9E\u6CD5\u3002"},ignore_selector:{zh:"\u4E0D\u7FFB\u8BD1\u8282\u70B9\u9009\u62E9\u5668",en:"Ignore node selectors",zh_TW:"\u4E0D\u7FFB\u8B6F\u7BC0\u9EDE\u9078\u64C7\u5668"},ignore_selector_helper:{zh:"1\u3001\u9700\u8981\u5FFD\u7565\u7684\u8282\u70B9\u30022\u3001\u9075\u5FAACSS\u9009\u62E9\u5668\u8BED\u6CD5\u3002",en:"1. Nodes to be ignored. 2. Follow CSS selector syntax.",zh_TW:"1\u3001\u9700\u8981\u5FFD\u7565\u7684\u7BC0\u9EDE\u3002 2\u3001\u9075\u5FAACSS\u9078\u64C7\u5668\u8A9E\u6CD5\u3002"},terms:{zh:"\u4E13\u4E1A\u672F\u8BED",en:"Terms",zh_TW:"\u5C08\u696D\u8853\u8A9E"},terms_helper:{zh:"1\u3001\u652F\u6301\u6B63\u5219\u8868\u8FBE\u5F0F\u5339\u914D\uFF0C\u65E0\u9700\u659C\u6746\uFF0C\u4E0D\u652F\u6301\u4FEE\u9970\u7B26\u30022\u3001\u591A\u6761\u672F\u8BED\u7528\u6362\u884C\u6216\u5206\u53F7\u201C;\u201D\u9694\u5F00\u30023\u3001\u672F\u8BED\u548C\u8BD1\u6587\u7528\u82F1\u6587\u9017\u53F7\u201C,\u201D\u9694\u5F00\u30024\u3001\u6CA1\u6709\u8BD1\u6587\u89C6\u4E3A\u4E0D\u7FFB\u8BD1\u672F\u8BED\u3002",en:"1. Supports regular expression matching, no slash required, and no modifiers are supported. 2. Separate multiple terms with newlines or semicolons \";\". 3. Terms and translations are separated by English commas \",\". 4. If there is no translation, the term will be deemed not to be translated.",zh_TW:"1. \u652F\u63F4\u6B63\u5247\u8868\u9054\u5F0F\u6BD4\u5C0D\uFF0C\u7121\u9700\u659C\u7DDA\uFF0C\u4E14\u4E0D\u652F\u63F4\u4FEE\u98FE\u7B26\u30022. \u591A\u689D\u8853\u8A9E\u4EE5\u63DB\u884C\u6216\u5206\u865F\u300C;\u300D\u5206\u9694\u30023. \u8853\u8A9E\u8207\u8B6F\u6587\u4EE5\u82F1\u6587\u9017\u865F\u300C,\u300D\u5206\u9694\u30024. \u7121\u8B6F\u6587\u8005\u8996\u70BA\u4E0D\u7FFB\u8B6F\u8A72\u8853\u8A9E\u3002"},ai_terms:{zh:"AI\u4E13\u4E1A\u672F\u8BED",en:"AI Terms",zh_TW:"AI\u5C08\u696D\u8853\u8A9E"},ai_terms_helper:{zh:"1\u3001AI\u667A\u80FD\u66FF\u6362\uFF0C\u4E0D\u652F\u6301\u6B63\u5219\u8868\u8FBE\u5F0F\u30022\u3001\u591A\u6761\u672F\u8BED\u7528\u6362\u884C\u6216\u5206\u53F7\u201C;\u201D\u9694\u5F00\u30023\u3001\u672F\u8BED\u548C\u8BD1\u6587\u7528\u82F1\u6587\u9017\u53F7\u201C,\u201D\u9694\u5F00\u30024\u3001\u6CA1\u6709\u8BD1\u6587\u89C6\u4E3A\u4E0D\u7FFB\u8BD1\u672F\u8BED\u3002",en:"1. AI intelligent replacement does not support regular expressions.2. Separate multiple terms with newlines or semicolons \";\". 3. Terms and translations are separated by English commas \",\". 4. If there is no translation, the term will be deemed not to be translated.",zh_TW:"1.AI\u667A\u80FD\u66FF\u63DB\uFF0C\u4E0D\u652F\u63F4\u6B63\u898F\u8868\u793A\u5F0F\u30022. \u591A\u689D\u8853\u8A9E\u4EE5\u63DB\u884C\u6216\u5206\u865F\u300C;\u300D\u5206\u9694\u30023. \u8853\u8A9E\u8207\u8B6F\u6587\u4EE5\u82F1\u6587\u9017\u865F\u300C,\u300D\u5206\u9694\u30024. \u7121\u8B6F\u6587\u8005\u8996\u70BA\u4E0D\u7FFB\u8B6F\u8A72\u8853\u8A9E\u3002"},text_ext_style:{zh:"\u8BD1\u6587\u9644\u52A0\u6837\u5F0F",en:"Translation additional styles",zh_TW:"\u8B6F\u6587\u9644\u52A0\u6A23\u5F0F"},selector_style:{zh:"\u9009\u62E9\u5668\u8282\u70B9\u6837\u5F0F",en:"Selector Style",zh_TW:"\u9078\u64C7\u5668\u7BC0\u9EDE\u6A23\u5F0F"},terms_style:{zh:"\u4E13\u4E1A\u672F\u8BED\u6837\u5F0F",en:"Terms Style",zh_TW:"\u5C08\u696D\u8853\u8A9E\u6A23\u5F0F"},highlight_style:{zh:"\u8BCD\u6C47\u9AD8\u4EAE\u6837\u5F0F",en:"Fav Words highlight style",zh_TW:"\u8A5E\u5F59\u9AD8\u4EAE\u6A23\u5F0F"},selector_style_helper:{zh:"\u5F00\u542F\u7FFB\u8BD1\u65F6\u6CE8\u5165\u3002",en:"It is injected when translation is turned on.",zh_TW:"\u5728\u958B\u555F\u7FFB\u8B6F\u6642\u6CE8\u5165\u3002"},selector_parent_style:{zh:"\u9009\u62E9\u5668\u7236\u8282\u70B9\u6837\u5F0F",en:"Parent Selector Style",zh_TW:"\u9078\u64C7\u5668\u7236\u7BC0\u9EDE\u6A23\u5F0F"},selector_grand_style:{zh:"\u9009\u62E9\u5668\u7956\u8282\u70B9\u6837\u5F0F",en:"Grand Selector Style",zh_TW:"\u9078\u64C7\u5668\u7956\u7BC0\u9EDE\u6A23\u5F0F"},inject_js:{zh:"\u6CE8\u5165JS",en:"Inject JS",zh_TW:"\u6CE8\u5165 JS"},inject_js_helper:{zh:"\u9884\u52A0\u8F7D\u65F6\u6CE8\u5165\uFF0C\u4E00\u4E2A\u9875\u9762\u4EC5\u8FD0\u884C\u4E00\u6B21\u3002\u5185\u7F6E\u5168\u5C40\u5BF9\u8C61 KT: {\n apiTranslate,\n apiDectect,\n apiSetting,\n apisMap,\n toLang,\n docInfo,\n glossary,\n }",en:"Injected during preload, runs only once per page. Built-in global object KT: {\n apiTranslate,\n apiDectect,\n apiSetting,\n apisMap,\n toLang,\n docInfo,\n glossary,\n }",zh_TW:"\u9810\u5148\u8F09\u5165\u6642\u6CE8\u5165\uFF0C\u4E00\u500B\u9801\u9762\u50C5\u904B\u884C\u4E00\u6B21\u3002\u5167\u5EFA\u5168\u57DF\u7269\u4EF6 KT: {\n apiTranslate,\n apiDectect,\n apiSetting,\n apisMap,\n toLang,\n docInfo,\n glossary,\n }"},inject_css:{zh:"\u6CE8\u5165CSS",en:"Inject CSS",zh_TW:"\u6CE8\u5165 CSS"},inject_css_helper:{zh:"\u9884\u52A0\u8F7D\u65F6\u6CE8\u5165\uFF0C\u4E00\u4E2A\u9875\u9762\u4EC5\u8FD0\u884C\u4E00\u6B21\u3002",en:"Injected during preload, runs only once per page.",zh_TW:"\u9810\u5148\u8F09\u5165\u6642\u6CE8\u5165\uFF0C\u4E00\u500B\u9801\u9762\u50C5\u904B\u884C\u4E00\u6B21\u3002"},fixer_function:{zh:"\u4FEE\u590D\u51FD\u6570",en:"Fixer Function",zh_TW:"\u4FEE\u5FA9\u51FD\u5F0F"},fixer_function_helper:{zh:"1\u3001br\u662F\u5C06
\u6362\u884C\u66FF\u6362\u6210

\u30022\u3001bn\u662F\u5C06\\n\u6362\u884C\u66FF\u6362\u6210

\u30023\u3001brToDiv\u548CbnToDiv\u662F\u66FF\u6362\u6210

\u3002",en:"1. br replaces
line breaks with

. 2. bn replaces \\n newline with

. 3. brToDiv and bnToDiv are replaced with

.",zh_TW:"1. br \u6703\u5C07
\u63DB\u884C\u66FF\u63DB\u70BA

\u30022. bn \u6703\u5C07 \\n \u63DB\u884C\u66FF\u63DB\u70BA

\u30023. brToDiv \u8207 bnToDiv \u6703\u66FF\u63DB\u70BA

\u3002"},import:{zh:"\u5BFC\u5165",en:"Import",zh_TW:"\u532F\u5165"},export:{zh:"\u5BFC\u51FA",en:"Export",zh_TW:"\u532F\u51FA"},export_translation:{zh:"\u5BFC\u51FA\u91CA\u4E49",en:"Export Translation",zh_TW:"\u532F\u51FA\u91CB\u7FA9"},error_cant_be_blank:{zh:"\u4E0D\u80FD\u4E3A\u7A7A",en:"Can not be blank",zh_TW:"\u4E0D\u53EF\u70BA\u7A7A"},error_duplicate_values:{zh:"\u5B58\u5728\u91CD\u590D\u7684\u503C",en:"There are duplicate values",zh_TW:"\u5B58\u5728\u91CD\u8907\u7684\u503C"},error_wrong_file_type:{zh:"\u9519\u8BEF\u7684\u6587\u4EF6\u7C7B\u578B",en:"Wrong file type",zh_TW:"\u6A94\u6848\u985E\u578B\u932F\u8AA4"},error_fetch_url:{zh:"\u8BF7\u68C0\u67E5url\u5730\u5740\u662F\u5426\u6B63\u786E\u6216\u7A0D\u540E\u518D\u8BD5\u3002",en:"Please check if the url address is correct or try again later.",zh_TW:"\u8ACB\u6AA2\u67E5 URL \u662F\u5426\u6B63\u78BA\u6216\u7A0D\u5F8C\u518D\u8A66\u3002"},deepl_api:{zh:"DeepL \u63A5\u53E3",en:"DeepL API",zh_TW:"DeepL \u4ECB\u9762"},deepl_key:{zh:"DeepL \u5BC6\u94A5",en:"DeepL Key",zh_TW:"DeepL \u91D1\u9470"},openai_api:{zh:"OpenAI \u63A5\u53E3",en:"OpenAI API",zh_TW:"OpenAI \u4ECB\u9762"},openai_key:{zh:"OpenAI \u5BC6\u94A5",en:"OpenAI Key",zh_TW:"OpenAI \u91D1\u9470"},openai_model:{zh:"OpenAI \u6A21\u578B",en:"OpenAI Model",zh_TW:"OpenAI \u6A21\u578B"},openai_prompt:{zh:"OpenAI \u63D0\u793A\u8BCD",en:"OpenAI Prompt",zh_TW:"OpenAI \u63D0\u793A\u8A5E"},if_clear_cache:{zh:"\u662F\u5426\u6E05\u9664\u7F13\u5B58\uFF08\u9ED8\u8BA4\u7F13\u5B587\u5929\uFF09",en:"Whether clear cache (Default cache is 7 days)",zh_TW:"\u662F\u5426\u6E05\u9664\u5FEB\u53D6\uFF08\u9810\u8A2D\u5FEB\u53D67\u5929\uFF09"},clear_cache_never:{zh:"\u4E0D\u6E05\u9664\u7F13\u5B58",en:"Never clear cache",zh_TW:"\u4E0D\u6E05\u9664\u5FEB\u53D6"},clear_cache_restart:{zh:"\u91CD\u542F\u6D4F\u89C8\u5668\u65F6\u6E05\u9664\u7F13\u5B58",en:"Clear cache when restarting browser",zh_TW:"\u91CD\u65B0\u555F\u52D5\u700F\u89BD\u5668\u6642\u6E05\u9664\u5FEB\u53D6"},data_sync_type:{zh:"\u6570\u636E\u540C\u6B65\u65B9\u5F0F",en:"Data Sync Type",zh_TW:"\u8CC7\u6599\u540C\u6B65\u65B9\u5F0F"},data_sync_url:{zh:"\u6570\u636E\u540C\u6B65\u63A5\u53E3",en:"Data Sync API",zh_TW:"\u8CC7\u6599\u540C\u6B65\u4ECB\u9762"},data_sync_user:{zh:"\u6570\u636E\u540C\u6B65\u8D26\u6237",en:"Data Sync User",zh_TW:"\u8CC7\u6599\u540C\u6B65\u5E33\u865F"},data_sync_key:{zh:"\u6570\u636E\u540C\u6B65\u5BC6\u94A5",en:"Data Sync Key",zh_TW:"\u8CC7\u6599\u540C\u6B65\u91D1\u9470"},sync_now:{zh:"\u7ACB\u5373\u540C\u6B65",en:"Sync Now",zh_TW:"\u7ACB\u5373\u540C\u6B65"},sync_success:{zh:"\u540C\u6B65\u6210\u529F\uFF01",en:"Sync Success",zh_TW:"\u540C\u6B65\u6210\u529F\uFF01"},sync_failed:{zh:"\u540C\u6B65\u5931\u8D25\uFF01",en:"Sync Error",zh_TW:"\u540C\u6B65\u5931\u6557\uFF01"},error_got_some_wrong:{zh:"\u62B1\u6B49\uFF0C\u51FA\u9519\u4E86\uFF01",en:"Sorry, something went wrong!",zh_TW:"\u62B1\u6B49\uFF0C\u767C\u751F\u932F\u8AA4\uFF01"},error_sync_setting:{zh:"\u60A8\u7684\u540C\u6B65\u7C7B\u578B\u5FC5\u987B\u4E3A\u201CKISS-Worker\u201D\uFF0C\u4E14\u9700\u586B\u5199\u5B8C\u6574",en:"Your sync type must be \"KISS-Worker\" and must be filled in completely",zh_TW:"\u60A8\u7684\u540C\u6B65\u578B\u614B\u5FC5\u9808\u70BA\u300CKISS-Worker\u300D\uFF0C\u4E14\u9700\u586B\u5BEB\u5B8C\u6574\u3002"},click_test:{zh:"\u70B9\u51FB\u6D4B\u8BD5",en:"Click Test",zh_TW:"\u9EDE\u64CA\u6E2C\u8A66"},test_success:{zh:"\u6D4B\u8BD5\u6210\u529F",en:"Test success",zh_TW:"\u6E2C\u8A66\u6210\u529F"},test_failed:{zh:"\u6D4B\u8BD5\u5931\u8D25",en:"Test failed",zh_TW:"\u6E2C\u8A66\u5931\u6557"},clear_all_cache_now:{zh:"\u7ACB\u5373\u6E05\u9664\u5168\u90E8\u7F13\u5B58",en:"Clear all cache now",zh_TW:"\u7ACB\u5373\u6E05\u9664\u5168\u90E8\u5FEB\u53D6"},clear_cache:{zh:"\u6E05\u9664\u7F13\u5B58",en:"Clear Cache",zh_TW:"\u6E05\u9664\u5FEB\u53D6"},clear_success:{zh:"\u6E05\u9664\u6210\u529F",en:"Clear success",zh_TW:"\u6E05\u9664\u6210\u529F"},clear_failed:{zh:"\u6E05\u9664\u5931\u8D25",en:"Clear failed",zh_TW:"\u6E05\u9664\u5931\u6557"},share:{zh:"\u5206\u4EAB",en:"Share",zh_TW:"\u5206\u4EAB"},clear_all:{zh:"\u6E05\u7A7A",en:"Clear All",zh_TW:"\u6E05\u7A7A"},help:{zh:"\u6C42\u52A9",en:"Help",zh_TW:"\u6C42\u52A9"},restore_default:{zh:"\u6062\u590D\u9ED8\u8BA4",en:"Restore Default",zh_TW:"\u6062\u5FA9\u9810\u8A2D"},shortcuts_setting:{zh:"\u5FEB\u6377\u952E\u8BBE\u7F6E",en:"Shortcuts Setting",zh_TW:"\u5FEB\u6377\u9375\u8A2D\u5B9A"},toggle_translate_shortcut:{zh:"\"\u5F00\u542F\u7FFB\u8BD1\"\u5FEB\u6377\u952E",en:"\"Toggle Translate\" Shortcut",zh_TW:"\u300C\u958B\u555F\u7FFB\u8B6F\u300D\u5FEB\u6377\u9375"},toggle_style_shortcut:{zh:"\"\u5207\u6362\u6837\u5F0F\"\u5FEB\u6377\u952E",en:"\"Toggle Style\" Shortcut",zh_TW:"\u300C\u5207\u63DB\u6A23\u5F0F\u300D\u5FEB\u6377\u9375"},toggle_popup_shortcut:{zh:"\"\u6253\u5F00\u5F39\u7A97\"\u5FEB\u6377\u952E",en:"\"Open Popup\" Shortcut",zh_TW:"\u300C\u958B\u555F\u5F48\u7A97\u300D\u5FEB\u6377\u9375"},open_setting_shortcut:{zh:"\"\u6253\u5F00\u8BBE\u7F6E\"\u5FEB\u6377\u952E",en:"\"Open Setting\" Shortcut",zh_TW:"\u300C\u958B\u555F\u8A2D\u5B9A\u300D\u5FEB\u6377\u9375"},hide_fab_button:{zh:"\u9690\u85CF\u60AC\u6D6E\u6309\u94AE",en:"Hide Fab Button",zh_TW:"\u96B1\u85CF\u61F8\u6D6E\u6309\u9215"},fab_click_action:{zh:"\u5355\u51FB\u60AC\u6D6E\u6309\u94AE\u52A8\u4F5C",en:"Single Click Fab Action",zh_TW:"\u55AE\u64CA\u61F8\u6D6E\u6309\u94AE\u52D5\u4F5C"},fab_click_menu:{zh:"\u5F39\u51FA\u83DC\u5355",en:"Popup Menu",zh_TW:"\u5F48\u51FA\u9078\u55AE"},fab_click_translate:{zh:"\u76F4\u63A5\u7FFB\u8BD1",en:"Translate",zh_TW:"\u76F4\u63A5\u7FFB\u8B6F"},hide_tran_button:{zh:"\u9690\u85CF\u7FFB\u8BD1\u6309\u94AE",en:"Hide Translate Button",zh_TW:"\u96B1\u85CF\u7FFB\u8B6F\u6309\u9215"},hide_click_away:{zh:"\u70B9\u51FB\u5916\u90E8\u5173\u95ED\u5F39\u7A97",en:"Click outside to close the pop-up window",zh_TW:"\u9EDE\u64CA\u5916\u90E8\u95DC\u9589\u5F48\u7A97"},use_simple_style:{zh:"\u4F7F\u7528\u7B80\u6D01\u754C\u9762",en:"Use a simple interface",zh_TW:"\u4F7F\u7528\u7C21\u6F54\u4ECB\u9762"},show:{zh:"\u663E\u793A",en:"Show",zh_TW:"\u986F\u793A"},hide:{zh:"\u9690\u85CF",en:"Hide",zh_TW:"\u96B1\u85CF"},save_rule:{zh:"\u4FDD\u5B58\u672C\u7AD9\u89C4\u5219",en:"Save this site rule",zh_TW:"\u4FDD\u5B58\u672C\u7AD9\u898F\u5247"},global_rule:{zh:"\u5168\u5C40\u89C4\u5219",en:"Global Rule",zh_TW:"\u5168\u57DF\u898F\u5247"},input_translate:{zh:"\u8F93\u5165\u6846\u7FFB\u8BD1",en:"Input Box Translation",zh_TW:"\u8F38\u5165\u6846\u7FFB\u8B6F"},use_input_box_translation:{zh:"\u542F\u7528\u8F93\u5165\u6846\u7FFB\u8BD1",en:"Input Box Translation",zh_TW:"\u555F\u7528\u8F38\u5165\u6846\u7FFB\u8B6F"},input_selector:{zh:"\u8F93\u5165\u6846\u9009\u62E9\u5668",en:"Input Selector",zh_TW:"\u8F38\u5165\u6846\u9078\u64C7\u5668"},input_selector_helper:{zh:"\u7528\u4E8E\u8F93\u5165\u6846\u7FFB\u8BD1\u3002",en:"Used for input box translation.",zh_TW:"\u7528\u65BC\u8F38\u5165\u6846\u7FFB\u8B6F\u3002"},trigger_trans_shortcut:{zh:"\u89E6\u53D1\u7FFB\u8BD1\u5FEB\u6377\u952E",en:"Trigger Translation Shortcut Keys",zh_TW:"\u89F8\u767C\u7FFB\u8B6F\u5FEB\u6377\u9375"},trigger_trans_shortcut_help:{zh:"\u9ED8\u8BA4\u4E3A\u5355\u51FB\u201CAltLeft+KeyI\u201D",en:"Default is \"AltLeft+KeyI\"",zh_TW:"\u9810\u8A2D\u70BA\u6309\u4E0B\u300CAltLeft+KeyI\u300D"},shortcut_press_count:{zh:"\u5FEB\u6377\u952E\u8FDE\u51FB\u6B21\u6570",en:"Shortcut Press Number",zh_TW:"\u5FEB\u6377\u9375\u9023\u64CA\u6B21\u6578"},combo_timeout:{zh:"\u8FDE\u51FB\u8D85\u65F6\u65F6\u95F4 (10-1000ms)",en:"Combo Timeout (10-1000ms)",zh_TW:"\u9023\u64CA\u903E\u6642 (10-1000ms)"},input_trans_start_sign:{zh:"\u7FFB\u8BD1\u8D77\u59CB\u6807\u8BC6",en:"Translation Start Sign",zh_TW:"\u7FFB\u8B6F\u8D77\u59CB\u6A19\u8A18"},input_trans_start_sign_help:{zh:"\u6807\u8BC6\u540E\u9762\u53EF\u4EE5\u52A0\u76EE\u6807\u8BED\u8A00\u4EE3\u7801\uFF0C\u5982\uFF1A \u201C/en \u4F60\u597D\u201D\u3001\u201C/zh hello\u201D",en:"The target language code can be added after the sign, such as: \"/en \u4F60\u597D\", \"/zh hello\"",zh_TW:"\u6A19\u8A18\u5F8C\u53EF\u52A0\u4E0A\u76EE\u6A19\u8A9E\u8A00\u4EE3\u78BC\uFF0C\u4F8B\u5982\uFF1A\u300C/en \u4F60\u597D\u300D\u3001\u300C/zh hello\u300D"},detect_lang_remote:{zh:"\u8FDC\u7A0B\u8BED\u8A00\u68C0\u6D4B",en:"Remote language detection",zh_TW:"\u9060\u7AEF\u8A9E\u8A00\u5075\u6E2C"},detect_lang_remote_help:{zh:"\u542F\u7528\u540E\u68C0\u6D4B\u51C6\u786E\u5EA6\u589E\u52A0\uFF0C\u4F46\u4F1A\u964D\u4F4E\u7FFB\u8BD1\u901F\u5EA6\uFF0C\u8BF7\u914C\u60C5\u5F00\u542F",en:"After enabling, the detection accuracy will increase, but it will reduce the translation speed. Please enable it as appropriate.",zh_TW:"\u555F\u7528\u5F8C\u53EF\u63D0\u5347\u5075\u6E2C\u6E96\u78BA\u5EA6\uFF0C\u4F46\u6703\u964D\u4F4E\u7FFB\u8B6F\u901F\u5EA6\uFF0C\u8ACB\u8996\u9700\u8981\u958B\u555F\u3002"},detect_lang_service:{zh:"\u8BED\u8A00\u68C0\u6D4B\u670D\u52A1",en:"Language detect service",zh_TW:"\u8A9E\u8A00\u6AA2\u6E2C\u670D\u52D9"},disable:{zh:"\u7981\u7528",en:"Disable",zh_TW:"\u505C\u7528"},enable:{zh:"\u542F\u7528",en:"Enable",zh_TW:"\u555F\u7528"},selection_translate:{zh:"\u5212\u8BCD\u7FFB\u8BD1",en:"Selection Translation",zh_TW:"\u5283\u8A5E\u7FFB\u8B6F"},toggle_selection_translate:{zh:"\u542F\u7528\u5212\u8BCD\u7FFB\u8BD1",en:"Use Selection Translate",zh_TW:"\u555F\u7528\u5283\u8A5E\u7FFB\u8B6F"},trigger_tranbox_shortcut:{zh:"\u663E\u793A\u7FFB\u8BD1\u6846/\u7FFB\u8BD1\u9009\u4E2D\u6587\u5B57\u5FEB\u6377\u952E",en:"Open Translate Popup/Translate Selected Shortcut",zh_TW:"\u986F\u793A\u7FFB\u8B6F\u6846\uFF0F\u7FFB\u8B6F\u9078\u4E2D\u6587\u5B57\u5FEB\u6377\u9375"},tranbtn_offset_x:{zh:"\u7FFB\u8BD1\u6309\u94AE\u504F\u79FBX\uFF08\xB1200\uFF09",en:"Translate Button Offset X (\xB1200)",zh_TW:"\u7FFB\u8B6F\u6309\u9215\u4F4D\u79FB X\uFF08\xB1200\uFF09"},tranbtn_offset_y:{zh:"\u7FFB\u8BD1\u6309\u94AE\u504F\u79FBY\uFF08\xB1200\uFF09",en:"Translate Button Offset Y (\xB1200)",zh_TW:"\u7FFB\u8B6F\u6309\u9215\u4F4D\u79FB Y\uFF08\xB1200\uFF09"},tranbox_offset_x:{zh:"\u7FFB\u8BD1\u6846\u504F\u79FBX\uFF08\xB1200\uFF09",en:"Translate Box Offset X (\xB1200)",zh_TW:"\u7FFB\u8B6F\u6846\u4F4D\u79FB X\uFF08\xB1200\uFF09"},tranbox_offset_y:{zh:"\u7FFB\u8BD1\u6846\u504F\u79FBY\uFF08\xB1200\uFF09",en:"Translate Box Offset Y (\xB1200)",zh_TW:"\u7FFB\u8B6F\u6846\u4F4D\u79FB Y\uFF08\xB1200\uFF09"},translated_text:{zh:"\u8BD1\u6587",en:"Translated Text",zh_TW:"\u8B6F\u6587"},original_text:{zh:"\u539F\u6587",en:"Original Text",zh_TW:"\u539F\u6587"},favorite_words:{zh:"\u6536\u85CF\u8BCD\u6C47",en:"Favorite Words",zh_TW:"\u6536\u85CF\u8A5E\u5F59"},touch_setting:{zh:"\u89E6\u5C4F\u8BBE\u7F6E",en:"Touch Setting",zh_TW:"\u89F8\u63A7\u8A2D\u5B9A"},touch_translate_shortcut:{zh:"\u89E6\u5C4F\u7FFB\u8BD1\u5FEB\u6377\u65B9\u5F0F (\u652F\u6301\u591A\u9009)",en:"Touch Translate Shortcut (multiple supported)",zh_TW:"\u89F8\u63A7\u7FFB\u8B6F\u6377\u5F91 (\u652F\u63F4\u591A\u9078)"},touch_tap_0:{zh:"\u7981\u7528",en:"Disable",zh_TW:"\u505C\u7528"},touch_tap_2:{zh:"\u53CC\u6307\u8F7B\u89E6",en:"Two finger tap",zh_TW:"\u96D9\u6307\u8F15\u89F8"},touch_tap_3:{zh:"\u4E09\u6307\u8F7B\u89E6",en:"Three finger tap",zh_TW:"\u4E09\u6307\u8F15\u89F8"},touch_tap_4:{zh:"\u56DB\u6307\u8F7B\u89E6",en:"Four finger tap",zh_TW:"\u56DB\u6307\u8F15\u89F8"},touch_tap_5:{zh:"\u5355\u6307\u53CC\u51FB",en:"Double-click",zh_TW:"\u55AE\u6307\u96D9\u64CA"},touch_tap_6:{zh:"\u5355\u6307\u4E09\u51FB",en:"Triple-click",zh_TW:"\u55AE\u6307\u4E09\u64CA"},touch_tap_7:{zh:"\u53CC\u6307\u53CC\u51FB",en:"Two-finger double-click",zh_TW:"\u96D9\u6307\u96D9\u64CA"},translate_blacklist:{zh:"\u7981\u7528\u7FFB\u8BD1\u540D\u5355",en:"Translate Blacklist",zh_TW:"\u505C\u7528\u7FFB\u8B6F\u540D\u55AE"},disabled_orilist:{zh:"\u7981\u7528Origin\u540D\u5355",en:"Disabled Origin List",zh_TW:"\u505C\u7528 Origin \u540D\u55AE"},disabled_csplist:{zh:"\u7981\u7528CSP\u540D\u5355",en:"Disabled CSP List",zh_TW:"\u505C\u7528 CSP \u540D\u55AE"},disabled_csplist_helper:{zh:"3\u3001\u901A\u8FC7\u8C03\u6574CSP\u7B56\u7565\uFF0C\u4F7F\u5F97\u67D0\u4E9B\u9875\u9762\u80FD\u591F\u6CE8\u5165JS/CSS/Media\uFF0C\u8BF7\u8C28\u614E\u4F7F\u7528\uFF0C\u9664\u975E\u60A8\u5DF2\u77E5\u6653\u76F8\u5173\u98CE\u9669\u3002",en:"3. By adjusting the CSP policy, some pages can inject JS/CSS/Media. Please use it with caution unless you are aware of the related risks.",zh_TW:"3. \u900F\u904E\u8ABF\u6574 CSP \u653F\u7B56\uFF0C\u4F7F\u90E8\u5206\u9801\u9762\u53EF\u6CE8\u5165 JS/CSS/Media\u3002\u8ACB\u8B39\u614E\u4F7F\u7528\uFF0C\u9664\u975E\u60A8\u5DF2\u77E5\u6089\u76F8\u95DC\u98A8\u96AA\u3002"},skip_langs:{zh:"\u4E0D\u7FFB\u8BD1\u7684\u8BED\u8A00",en:"Disable Languages",zh_TW:"\u4E0D\u7FFB\u8B6F\u7684\u8A9E\u8A00"},skip_langs_helper:{zh:"\u6B64\u529F\u80FD\u4F9D\u8D56\u51C6\u786E\u7684\u8BED\u8A00\u68C0\u6D4B\uFF0C\u5EFA\u8BAE\u542F\u7528\u8FDC\u7A0B\u8BED\u8A00\u68C0\u6D4B\u3002",en:"This feature relies on accurate language detection. It is recommended to enable remote language detection.",zh_TW:"\u6B64\u529F\u80FD\u4EF0\u8CF4\u6E96\u78BA\u7684\u8A9E\u8A00\u5075\u6E2C\uFF0C\u5EFA\u8B70\u555F\u7528\u9060\u7AEF\u8A9E\u8A00\u5075\u6E2C\u3002"},context_menus:{zh:"\u53F3\u952E\u83DC\u5355",en:"Context Menus",zh_TW:"\u53F3\u9375\u9078\u55AE"},hide_context_menus:{zh:"\u9690\u85CF\u53F3\u952E\u83DC\u5355",en:"Hide Context Menus",zh_TW:"\u96B1\u85CF\u53F3\u9375\u9078\u55AE"},simple_context_menus:{zh:"\u7B80\u5355\u53F3\u952E\u83DC\u5355",en:"Simple_context_menus Context Menus",zh_TW:"\u7C21\u6613\u53F3\u9375\u9078\u55AE"},secondary_context_menus:{zh:"\u4E8C\u7EA7\u53F3\u952E\u83DC\u5355",en:"Secondary Context Menus",zh_TW:"\u6B21\u7D1A\u53F3\u9375\u9078\u55AE"},mulkeys_help:{zh:"\u652F\u6301\u7528\u6362\u884C\u6216\u82F1\u6587\u9017\u53F7\u201C,\u201D\u5206\u9694\uFF0C\u8F6E\u8BE2\u8C03\u7528\u3002",en:"Supports polling calls separated by newlines or English commas \",\".",zh_TW:"\u652F\u63F4\u4EE5\u63DB\u884C\u6216\u82F1\u6587\u9017\u865F\u300C,\u300D\u5206\u9694\uFF0C\u8F2A\u8A62\u547C\u53EB\u3002"},translation_element_tag:{zh:"\u8BD1\u6587\u5143\u7D20\u6807\u7B7E",en:"Translation Element Tag",zh_TW:"\u8B6F\u6587\u5143\u7D20\u6A19\u7C64"},show_only_translations:{zh:"\u4EC5\u663E\u793A\u8BD1\u6587",en:"Show Only Translations",zh_TW:"\u50C5\u986F\u793A\u8B6F\u6587"},show_only_translations_help:{zh:"\u975E\u5B8C\u7F8E\u5B9E\u73B0\uFF0C\u67D0\u4E9B\u9875\u9762\u53EF\u80FD\u6709\u6837\u5F0F\u7B49\u95EE\u9898\u3002",en:"It is not a perfect implementation and some pages may have style issues.",zh_TW:"\u6B64\u70BA\u975E\u5B8C\u7F8E\u5BE6\u4F5C\uFF0C\u90E8\u5206\u9801\u9762\u53EF\u80FD\u51FA\u73FE\u6A23\u5F0F\u7B49\u554F\u984C\u3002"},translate_page_title:{zh:"\u662F\u5426\u7FFB\u8BD1\u9875\u9762\u6807\u9898",en:"Translate Page Title",zh_TW:"\u662F\u5426\u7FFB\u8B6F\u9801\u9762\u6A19\u984C"},more:{zh:"\u66F4\u591A",en:"More",zh_TW:"\u66F4\u591A"},less:{zh:"\u66F4\u5C11",en:"Less",zh_TW:"\u66F4\u5C11"},fixer_selector:{zh:"\u7F51\u9875\u4FEE\u590D\u9009\u62E9\u5668",en:"Fixer Selector",zh_TW:"\u7DB2\u9801\u4FEE\u5FA9\u9078\u64C7\u5668"},reg_niutrans:{zh:"\u83B7\u53D6\u5C0F\u725B\u7FFB\u8BD1\u5BC6\u94A5\u3010\u7B80\u7EA6\u7FFB\u8BD1\u4E13\u5C5E\u65B0\u7528\u6237\u6CE8\u518C\u8D60\u9001300\u4E07\u5B57\u7B26\u3011",en:"Get NiuTrans APIKey [KISS Translator Exclusive New User Registration Free 3 Million Characters]",zh_TW:"\u53D6\u5F97\u5C0F\u725B\u7FFB\u8B6F\u91D1\u9470\u3010\u7C21\u7D04\u7FFB\u8B6F\u5C08\u5C6C\u65B0\u7528\u6236\u8A3B\u518A\u8D08\u9001 300 \u842C\u5B57\u5143\u3011"},trigger_mode:{zh:"\u89E6\u53D1\u65B9\u5F0F",en:"Trigger Mode",zh_TW:"\u89F8\u767C\u65B9\u5F0F"},trigger_click:{zh:"\u70B9\u51FB\u89E6\u53D1",en:"Click Trigger",zh_TW:"\u9EDE\u64CA\u89F8\u767C"},trigger_hover:{zh:"\u9F20\u6807\u60AC\u505C\u89E6\u53D1",en:"Hover Trigger",zh_TW:"\u6ED1\u9F20\u61F8\u505C\u89F8\u767C"},trigger_select:{zh:"\u9009\u4E2D\u89E6\u53D1",en:"Select Trigger",zh_TW:"\u9078\u53D6\u89F8\u767C"},extend_styles:{zh:"\u9644\u52A0\u6837\u5F0F",en:"Extend Styles",zh_TW:"\u9644\u52A0\u6A23\u5F0F"},custom_option:{zh:"\u81EA\u5B9A\u4E49\u9009\u9879",en:"Custom Option",zh_TW:"\u81EA\u8A02\u9078\u9805"},translate_selected_text:{zh:"\u7FFB\u8BD1\u9009\u4E2D\u6587\u5B57",en:"Translate Selected Text",zh_TW:"\u7FFB\u8B6F\u9078\u53D6\u6587\u5B57"},toggle_style:{zh:"\u5207\u6362\u6837\u5F0F",en:"Toggle Style",zh_TW:"\u5207\u63DB\u6A23\u5F0F"},open_menu:{zh:"\u6253\u5F00\u5F39\u7A97\u83DC\u5355",en:"Open Popup Menu",zh_TW:"\u958B\u555F\u5F48\u7A97\u9078\u55AE"},open_setting:{zh:"\u6253\u5F00\u8BBE\u7F6E",en:"Open Setting",zh_TW:"\u958B\u555F\u8A2D\u5B9A"},follow_selection:{zh:"\u7FFB\u8BD1\u6846\u8DDF\u968F\u9009\u4E2D\u6587\u672C",en:"Transbox Follow Selection",zh_TW:"\u7FFB\u8B6F\u6846\u8DDF\u96A8\u9078\u53D6\u6587\u5B57"},tranbox_auto_height:{zh:"\u7FFB\u8BD1\u6846\u81EA\u9002\u5E94\u9AD8\u5EA6",en:"Translation box adaptive height",zh_TW:"\u7FFB\u8B6F\u6846\u81EA\u9069\u61C9\u9AD8\u5EA6"},translate_start_hook:{zh:"\u7FFB\u8BD1\u5F00\u59CB\u94A9\u5B50\u51FD\u6570",en:"Translate Start Hook",zh_TW:"\u7FFB\u8B6F\u958B\u59CB Hook"},translate_start_hook_helper:{zh:"\u7FFB\u8BD1\u524D\u65F6\u8FD0\u884C\uFF0C\u5165\u53C2\u4E3A\uFF1A {text,\n fromLang,\n toLang,\n apiSetting,\n docInfo,\n glossary,}",en:"Run before translation, input parameters are: {text,\n fromLang,\n toLang,\n apiSetting,\n docInfo,\n glossary,}",zh_TW:"\u7FFB\u8B6F\u524D\u6642\u904B\u884C\uFF0C\u5165\u53C3\u70BA\uFF1A {text,\n fromLang,\n toLang,\n apiSetting,\n docInfo,\n glossary,}"},translate_end_hook:{zh:"\u7FFB\u8BD1\u5B8C\u6210\u94A9\u5B50\u51FD\u6570",en:"Translate End Hook",zh_TW:"\u7FFB\u8B6F\u5B8C\u6210 Hook"},translate_end_hook_helper:{zh:"\u7FFB\u8BD1\u5B8C\u6210\u65F6\u8FD0\u884C\uFF0C\u5165\u53C2\u4E3A\uFF1A ({hostNode, parentNode, nodes, wrapperNode, innerNode})",en:"Run when translation is complete, input parameters are: ({hostNode, parentNode, nodes, wrapperNode, innerNode})",zh_TW:"\u7FFB\u8B6F\u5B8C\u6210\u6642\u904B\u884C\uFF0C\u5165\u53C3\u70BA\uFF1A ({hostNode, parentNode, nodes, wrapperNode, innerNode})"},translate_remove_hook:{zh:"\u7FFB\u8BD1\u79FB\u9664\u94A9\u5B50\u51FD\u6570",en:"Translate Removed Hook",zh_TW:"\u7FFB\u8B6F\u79FB\u9664 Hook"},translate_remove_hook_helper:{zh:"\u7FFB\u8BD1\u79FB\u9664\u65F6\u8FD0\u884C\uFF0C\u5165\u53C2\u4E3A\uFF1A \u7FFB\u8BD1\u8282\u70B9\u3002",en:"Run when translation is removed, the input parameters are: translation node.",zh_TW:"\u79FB\u9664\u7FFB\u8B6F\u6642\u57F7\u884C\uFF0C\u5165\u53C3\u70BA\uFF1A\u7FFB\u8B6F\u7BC0\u9EDE\u3002"},english_dict:{zh:"\u82F1\u6587\u8BCD\u5178",en:"English Dictionary",zh_TW:"\u82F1\u6587\u5B57\u5178"},english_suggest:{zh:"\u82F1\u6587\u5EFA\u8BAE",en:"English Suggest",zh_TW:"\u82F1\u6587\u5EFA\u8B70"},api_name:{zh:"\u63A5\u53E3\u540D\u79F0",en:"API Name",zh_TW:"\u4ECB\u9762\u540D\u7A31"},is_disabled:{zh:"\u662F\u5426\u7981\u7528",en:"Is Disabled",zh_TW:"\u662F\u5426\u505C\u7528"},translate_selected:{zh:"\u662F\u5426\u542F\u7528\u5212\u8BCD\u7FFB\u8BD1",en:"If translate selected",zh_TW:"\u662F\u5426\u555F\u7528\u5283\u8A5E\u7FFB\u8B6F"},use_batch_fetch:{zh:"\u662F\u5426\u805A\u5408\u53D1\u9001\u7FFB\u8BD1\u8BF7\u6C42",en:"Whether to aggregate and send translation requests",zh_TW:"\u662F\u5426\u805A\u5408\u767C\u9001\u7FFB\u8B6F\u8ACB\u6C42"},batch_interval:{zh:"\u805A\u5408\u8BF7\u6C42\u7B49\u5F85\u65F6\u95F4(100-10000)",en:"Aggregation request waiting time (100-10000)",zh_TW:"\u805A\u5408\u8ACB\u6C42\u7B49\u5F85\u6642\u9593(100-10000)"},batch_size:{zh:"\u805A\u5408\u8BF7\u6C42\u6700\u5927\u6BB5\u843D\u6570(1-100)",en:"Maximum number of paragraphs in an aggregation request (1-100)",zh_TW:"\u805A\u5408\u8ACB\u6C42\u6700\u5927\u6BB5\u843D\u6578(1-100)"},batch_length:{zh:"\u805A\u5408\u8BF7\u6C42\u6700\u5927\u6587\u672C\u957F\u5EA6(1000-100000)",en:"Maximum text length for aggregation requests (1000-100000)",zh_TW:"\u805A\u5408\u8ACB\u6C42\u6700\u5927\u6587\u5B57\u9577\u5EA6(1000-100000)"},use_context:{zh:"\u662F\u5426\u542F\u7528\u667A\u80FD\u4E0A\u4E0B\u6587",en:"Whether to enable AI context",zh_TW:"\u662F\u5426\u555F\u7528\u667A\u6167\u4E0A\u4E0B\u6587"},context_size:{zh:"\u4E0A\u4E0B\u6587\u4F1A\u8BDD\u6570\u91CF(1-20)",en:"Number of context sessions(1-20)",zh_TW:"\u4E0A\u4E0B\u6587\u6703\u8A71\u6578\u91CF(1-20)"},auto_scan_page:{zh:"\u81EA\u52A8\u626B\u63CF\u9875\u9762",en:"Auto scan page",zh_TW:"\u81EA\u52D5\u6383\u63CF\u9801\u9762"},has_rich_text:{zh:"\u542F\u7528\u5BCC\u6587\u672C\u7FFB\u8BD1",en:"Enable rich text translation",zh_TW:"\u555F\u7528\u5BCC\u6587\u672C\u7FFB\u8B6F"},has_shadowroot:{zh:"\u626B\u63CFShadowroot",en:"Scan Shadowroot",zh_TW:"\u6383\u63CFShadowroot"},mousehover_translate:{zh:"\u9F20\u6807\u60AC\u505C\u7FFB\u8BD1",en:"Mouseover Translation",zh_TW:"\u6ED1\u9F20\u61F8\u505C\u7FFB\u8B6F"},use_mousehover_translation:{zh:"\u542F\u7528\u9F20\u6807\u60AC\u505C\u7FFB\u8BD1",en:"Enable mouseover translation",zh_TW:"\u555F\u7528\u6ED1\u9F20\u61F8\u505C\u7FFB\u8B6F"},selected_translation_alert:{zh:"\u5212\u8BCD\u7FFB\u8BD1\u7684\u5F00\u542F\u548C\u5173\u95ED\u8BF7\u5230\u201C\u89C4\u5219\u8BBE\u7F6E\u201D\u91CC\u9762\u8BBE\u7F6E\u3002",en:"To turn selected translation on or off, please go to \"Rule Settings\".",zh_TW:"\u5283\u8A5E\u7FFB\u8B6F\u7684\u958B\u555F\u548C\u95DC\u9589\u8ACB\u5230\u300C\u898F\u5247\u8A2D\u5B9A\u300D\u88E1\u9762\u8A2D\u5B9A\u3002"},mousehover_key_help:{zh:"\u5F53\u5FEB\u6377\u952E\u7F6E\u7A7A\u65F6\u8868\u793A\u9F20\u6807\u60AC\u505C\u76F4\u63A5\u7FFB\u8BD1",en:"When the shortcut key is empty, it means that the mouse hovers to translate directly",zh_TW:"\u7576\u5FEB\u6377\u9375\u7F6E\u7A7A\u6642\u8868\u793A\u6ED1\u9F20\u61F8\u505C\u76F4\u63A5\u7FFB\u8B6F"},autoscan_alt:{zh:"\u81EA\u52A8\u626B\u63CF",en:"Auto Scan",zh_TW:"\u81EA\u52D5\u6383\u63CF"},shadowroot_alt:{zh:"ShadowRoot",en:"ShadowRoot",zh_TW:"ShadowRoot"},richtext_alt:{zh:"\u4FDD\u7559\u5BCC\u6587\u672C",en:"Rich Text",zh_TW:"\u4FDD\u7559\u5BCC\u6587\u672C"},transonly_alt:{zh:"\u9690\u85CF\u539F\u6587",en:"Hide Original",zh_TW:"\u96B1\u85CF\u539F\u6587"},confirm_title:{zh:"\u786E\u8BA4",en:"Confirm",zh_TW:"\u78BA\u8A8D"},confirm_message:{zh:"\u786E\u5B9A\u64CD\u4F5C\u5417\uFF1F",en:"Are you sure you want to proceed?",zh_TW:"\u78BA\u5B9A\u64CD\u4F5C\u55CE\uFF1F"},confirm_action:{zh:"\u786E\u5B9A",en:"Confirm",zh_TW:"\u78BA\u5B9A"},cancel_action:{zh:"\u53D6\u6D88",en:"Cancel",zh_TW:"\u53D6\u6D88"},pls_press_shortcut:{zh:"\u8BF7\u6309\u4E0B\u5FEB\u6377\u952E\u7EC4\u5408",en:"Please press the shortcut key combination",zh_TW:"\u8ACB\u6309\u4E0B\u5FEB\u901F\u9375\u7D44\u5408"},load_setting_err:{zh:"\u6570\u636E\u52A0\u8F7D\u51FA\u9519\uFF0C\u8BF7\u5237\u65B0\u9875\u9762\u6216\u5378\u8F7D\u540E\u91CD\u65B0\u5B89\u88C5\u3002",en:"Please press the shortcut key combination",zh_TW:"\u8ACB\u6309\u4E0B\u5FEB\u901F\u9375\u7D44\u5408"},translation_style:{zh:"\u7FFB\u8BD1\u98CE\u683C",en:"Translation style",zh_TW:"\u7FFB\u8B6F\u98A8\u683C"},placeholder:{zh:"\u5360\u4F4D\u7B26",en:"Placeholder",zh_TW:"\u4F54\u4F4D\u7B26"},tag_name:{zh:"\u5360\u4F4D\u6807\u7B7E\u540D",en:"Placeholder tag name",zh_TW:"\u4F54\u4F4D\u6A19\u540D"},system_prompt_helper:{zh:"\u5728\u672A\u5B8C\u5168\u7406\u89E3\u9ED8\u8BA4Prompt\u7684\u60C5\u51B5\u4E0B\uFF0C\u8BF7\u52FF\u968F\u610F\u4FEE\u6539\uFF0C\u5426\u5219\u53EF\u80FD\u65E0\u6CD5\u5DE5\u4F5C\u3002",en:"Do not modify the default prompt without fully understanding it, otherwise it may not work.",zh_TW:"\u5728\u672A\u5B8C\u5168\u7406\u89E3\u9810\u8A2DPrompt\u7684\u60C5\u6CC1\u4E0B\uFF0C\u8ACB\u52FF\u96A8\u610F\u4FEE\u6539\uFF0C\u5426\u5247\u53EF\u80FD\u7121\u6CD5\u904B\u4F5C\u3002"},if_pre_init:{zh:"\u662F\u5426\u9884\u521D\u59CB\u5316",en:"Whether to pre-initialize",zh_TW:"\u662F\u5426\u9810\u521D\u59CB\u5316"},export_old:{zh:"\u5BFC\u51FA\u65E7\u7248",en:"Export old version",zh_TW:"\u532F\u51FA\u820A\u7248"},favorite_words_helper:{zh:"\u5BFC\u5165\u8BCD\u6C47\u8BF7\u4F7F\u7528txt\u6587\u4EF6\uFF0C\u6BCF\u4E00\u884C\u4E00\u4E2A\u5355\u8BCD\u3002",en:"To import vocabulary, please use a txt file with one word per line.",zh_TW:"\u532F\u5165\u8A5E\u5F59\u8ACB\u4F7F\u7528txt\u6587\u4EF6\uFF0C\u6BCF\u4E00\u884C\u4E00\u500B\u55AE\u5B57\u3002"},btn_tip_click_away:{zh:"\u5931\u7126\u9690\u85CF/\u663E\u793A",en:"Loss of focus hide/show",zh_TW:"\u5931\u7126\u96B1\u85CF/\u986F\u793A"},btn_tip_follow_selection:{zh:"\u8DDF\u968F/\u56FA\u5B9A\u6A21\u5F0F",en:"Follow/Fixed Mode",zh_TW:"\u8DDF\u96A8/\u56FA\u5B9A\u6A21\u5F0F"},btn_tip_simple_style:{zh:"\u8FF7\u4F60/\u5E38\u89C4\u6A21\u5F0F",en:"Mini/Regular Mode",zh_TW:"\u8FF7\u4F60/\u5E38\u898F\u6A21\u5F0F"},api_placeholder:{zh:"\u5360\u4F4D\u7B26",en:"Placeholder",zh_TW:"\u4F54\u4F4D\u7B26"},api_placetag:{zh:"\u5360\u4F4D\u6807\u7B7E",en:"Placeholder tags",zh_TW:"\u4F54\u4F4D\u6A19"},detected_lang:{zh:"\u8BED\u8A00\u68C0\u6D4B",en:"Language detection",zh_TW:"\u8A9E\u8A00\u5075\u6E2C"},detected_result:{zh:"\u68C0\u6D4B\u7ED3\u679C",en:"Detect result",zh_TW:"\u6AA2\u6E2C\u7D50\u679C"},subtitle_translate:{zh:"\u5B57\u5E55\u7FFB\u8BD1",en:"Subtitle Translation",zh_TW:"\u5B57\u5E55\u7FFB\u8B6F"},toggle_subtitle_translate:{zh:"\u542F\u7528\u5B57\u5E55\u7FFB\u8BD1",en:"Enable subtitle translation",zh_TW:"\u555F\u7528\u5B57\u5E55\u7FFB\u8B6F"},is_bilingual_view:{zh:"\u53CC\u8BED\u663E\u793A",en:"Enable bilingual display",zh_TW:"\u96D9\u8A9E\u986F\u793A"},is_skip_ad:{zh:"\u5FEB\u8FDB\u5E7F\u544A",en:"Skip AD",zh_TW:"\u5FEB\u8F49\u5EE3\u544A"},download_subtitles:{zh:"\u4E0B\u8F7D\u5B57\u5E55",en:"Download subtitles",zh_TW:"\u4E0B\u8F7D\u5B57\u5E55"},background_styles:{zh:"\u80CC\u666F\u6837\u5F0F",en:"DBackground Style",zh_TW:"\u80CC\u666F\u6A23\u5F0F"},origin_styles:{zh:"\u539F\u6587\u6837\u5F0F",en:"Original style",zh_TW:"\u539F\u6587\u6A23\u5F0F"},translation_styles:{zh:"\u8BD1\u6587\u6837\u5F0F",en:"Translation style",zh_TW:"\u8B6F\u6587\u6A23\u5F0F"},ai_segmentation:{zh:"AI\u667A\u80FD\u65AD\u53E5",en:"AI intelligent punctuation",zh_TW:"AI\u667A\u6167\u65B7\u53E5"},ai_chunk_length:{zh:"AI\u5904\u7406\u5207\u5272\u957F\u5EA6(200-20000)",en:"AI processing chunk length(200-20000)",zh_TW:"AI\u5904\u7406\u5207\u5272\u957F\u5EA6(200-20000)"},subtitle_helper_1:{zh:"1\u3001\u76EE\u524D\u4EC5\u652F\u6301Youtube\u684C\u9762\u7F51\u7AD9\u3002",en:"1. Currently only supports Youtube desktop website.",zh_TW:"1.\u76EE\u524D\u50C5\u652F\u63F4Youtube\u684C\u9762\u7DB2\u7AD9\uFF0C\u4E14\u50C5\u652F\u63F4\u700F\u89BD\u5668\u64F4\u5145\u529F\u80FD\u3002"},subtitle_helper_2:{zh:"2\u3001\u63D2\u4EF6\u5185\u7F6E\u57FA\u7840\u7684\u5B57\u5E55\u5408\u5E76\u3001\u65AD\u53E5\u7B97\u6CD5\uFF0C\u53EF\u6EE1\u8DB3\u5927\u90E8\u5206\u60C5\u51B5\u3002",en:"2. The plug-in has built-in basic subtitle merging and sentence segmentation algorithms, which can meet most situations.",zh_TW:"2.\u63D2\u4EF6\u5167\u5EFA\u57FA\u790E\u7684\u5B57\u5E55\u5408\u4F75\u3001\u65B7\u53E5\u6F14\u7B97\u6CD5\uFF0C\u53EF\u6EFF\u8DB3\u5927\u90E8\u5206\u60C5\u6CC1\u3002"},subtitle_helper_3:{zh:"3\u3001\u4EA6\u53EF\u4EE5\u542F\u7528AI\u667A\u80FD\u65AD\u53E5\uFF0C\u4F46\u9700\u8003\u8651\u5207\u5272\u957F\u5EA6\u53CAAI\u63A5\u53E3\u80FD\u529B\uFF0C\u53EF\u80FD\u5904\u7406\u65F6\u95F4\u4F1A\u5F88\u957F\uFF0C\u751A\u81F3\u5904\u7406\u5931\u8D25\uFF0C\u5BFC\u81F4\u65E0\u6CD5\u770B\u5230\u5B57\u5E55\u3002",en:"3. You can also enable AI intelligent segmentation, but you need to consider the segmentation length and AI interface capabilities. The processing time may be very long or even fail, resulting in the inability to see subtitles.",zh_TW:"3.\u4EA6\u53EF\u555F\u7528AI\u667A\u80FD\u65B7\u53E5\uFF0C\u4F46\u9700\u8003\u616E\u5207\u5272\u9577\u5EA6\u53CAAI\u4ECB\u9762\u80FD\u529B\uFF0C\u53EF\u80FD\u8655\u7406\u6642\u9593\u6703\u5F88\u9577\uFF0C\u751A\u81F3\u8655\u7406\u5931\u6557\uFF0C\u5C0E\u81F4\u7121\u6CD5\u770B\u5230\u5B57\u5E55\u3002"},default_styles_example:{zh:"\u9ED8\u8BA4\u6837\u5F0F\u53C2\u8003\uFF1A",en:"Default styles reference:",zh_TW:"\u8A8D\u6A23\u5F0F\u53C3\u8003\uFF1A"},subtitle_load_succeed:{zh:"\u53CC\u8BED\u5B57\u5E55\u52A0\u8F7D\u6210\u529F\uFF01",en:"Bilingual subtitles loaded successfully!",zh_TW:"\u53CC\u8BED\u5B57\u5E55\u52A0\u8F7D\u6210\u529F\uFF01"},subtitle_load_failed:{zh:"\u53CC\u8BED\u5B57\u5E55\u52A0\u8F7D\u5931\u8D25\uFF01",en:"Failed to load bilingual subtitles!",zh_TW:"\u53CC\u8BED\u5B57\u5E55\u52A0\u8F7D\u5931\u8D25\uFF01"},try_get_subtitle_data:{zh:"\u5C1D\u8BD5\u83B7\u53D6\u5B57\u5E55\u6570\u636E\uFF0C\u8BF7\u7A0D\u5019...",en:"Trying to get subtitle data, please wait...",zh_TW:"\u5C1D\u8BD5\u83B7\u53D6\u5B57\u5E55\u6570\u636E\uFF0C\u8BF7\u7A0D\u5019..."},subtitle_data_processing:{zh:"\u5B57\u5E55\u6570\u636E\u5904\u7406\u4E2D...",en:"Subtitle data processing...",zh_TW:"\u5B57\u5E55\u6570\u636E\u5904\u7406\u4E2D..."},starting_to_process_subtitle:{zh:"\u5F00\u59CB\u5904\u7406\u5B57\u5E55\u6570\u636E...",en:"Starting to process subtitle data...",zh_TW:"\u5F00\u59CB\u5904\u7406\u5B57\u5E55\u6570\u636E..."},subtitle_data_is_ready:{zh:"\u5B57\u5E55\u6570\u636E\u5DF2\u51C6\u5907\u5C31\u7EEA\uFF0C\u8BF7\u70B9\u51FBKT\u6309\u94AE\u52A0\u8F7D",en:"The subtitle data is ready, please click the KT button to load it",zh_TW:"\u5B57\u5E55\u8CC7\u6599\u5DF2\u6E96\u5099\u5C31\u7DD2\uFF0C\u8ACB\u9EDE\u64CAKT\u6309\u9215\u52A0\u8F09"},starting_reprocess_events:{zh:"\u91CD\u65B0\u5904\u7406\u5B57\u5E55\u6570\u636E...",en:"Reprocess the subtitle data...",zh_TW:"\u91CD\u65B0\u5904\u7406\u5B57\u5E55\u6570\u636E..."},waitting_for_subtitle:{zh:"\u8BF7\u7B49\u5F85\u5B57\u5E55\u6570\u636E",en:"Please wait for the subtitle data.",zh_TW:"\u8BF7\u7B49\u5F85\u5B57\u5E55\u6570\u636E"},ai_processing_pls_wait:{zh:"AI\u5904\u7406\u4E2D\uFF0C\u8BF7\u7A0D\u7B49...",en:"AI processing in progress, please wait...",zh_TW:"AI\u5904\u7406\u4E2D\uFF0C\u8BF7\u7A0D\u7B49..."},processing_subtitles:{zh:"\u5B57\u5E55\u5904\u7406\u4E2D...",en:"Subtitle processing...",zh_TW:"\u5B57\u5E55\u5904\u7406\u4E2D..."},waiting_subtitles:{zh:"\u7B49\u5F85\u5B57\u5E55\u4E2D",en:"Waiting for subtitles",zh_TW:"\u7B49\u5F85\u5B57\u5E55\u4E2D"},subtitle_is_not_yet_ready:{zh:"\u5B57\u5E55\u6570\u636E\u5C1A\u672A\u51C6\u5907\u597D",en:"Subtitle is not yet ready.",zh_TW:"\u5B57\u5E55\u6570\u636E\u5C1A\u672A\u51C6\u5907\u597D"},log_level:{zh:"\u65E5\u5FD7\u7EA7\u522B",en:"Log Level",zh_TW:"\u65E5\u8A8C\u7B49\u7D1A"},goto_custom_api_example:{zh:"\u70B9\u51FB\u67E5\u770B\u3010\u81EA\u5B9A\u4E49\u63A5\u53E3\u793A\u4F8B\u3011",en:"Click to view [Custom Interface Example]",zh_TW:"\u9EDE\u9078\u67E5\u770B\u3010\u81EA\u8A02\u4ECB\u9762\u7BC4\u4F8B\u3011"},split_paragraph:{zh:"\u5207\u5206\u957F\u6BB5\u843D",en:"Split long paragraph",zh_TW:"\u5207\u5206\u9577\u6BB5\u843D"},split_length:{zh:"\u5207\u5206\u957F\u5EA6 (0-10000)",en:"Segmentation length(0-10000)",zh_TW:"\u5207\u5206\u9577\u5EA6(0-10000)"},highlight_words:{zh:"\u9AD8\u4EAE\u6536\u85CF\u8BCD\u6C47",en:"Highlight favorite words",zh_TW:"\u9AD8\u4EAE\u6536\u85CF\u8A5E\u5F59"},split_disable:{zh:"\u7981\u7528",en:"Disable",zh_TW:"\u505C\u7528"},split_textlength:{zh:"\u6309\u7167\u957F\u5EA6\u5207\u5206",en:"Split by length",zh_TW:"\u4F9D\u9577\u5EA6\u5207\u5206"},split_punctuation:{zh:"\u6309\u7167\u53E5\u5B50\u5207\u5206",en:"Split by sentence",zh_TW:"\u6309\u7167\u53E5\u5B50\u5207\u5206"},highlight_disable:{zh:"\u7981\u7528",en:"Disable",zh_TW:"\u505C\u7528"},highlight_beforetrans:{zh:"\u7FFB\u8BD1\u524D\u9AD8\u4EAE",en:"Highlight before translation",zh_TW:"\u7FFB\u8B6F\u524D\u9AD8\u4EAE"},highlight_aftertrans:{zh:"\u7FFB\u8BD1\u540E\u9AD8\u4EAE",en:"Highlight after translation",zh_TW:"\u7FFB\u8B6F\u5F8C\u9AD8\u4EAE"},pagescroll_root_margin:{zh:"\u6EDA\u52A8\u52A0\u8F7D\u63D0\u524D\u89E6\u53D1 (0-10000px)",en:"Early triggering of scroll loading (0-10000px)",zh_TW:"\u6EFE\u52D5\u8F09\u5165\u63D0\u524D\u89F8\u767C (0-10000px)"},styles_setting:{zh:"\u6837\u5F0F\u8BBE\u7F6E",en:"Style Setting",zh_TW:"\u6A23\u5F0F\u8A2D\u5B9A"},style_name:{zh:"\u6837\u5F0F\u540D\u79F0",en:"Style Name",zh_TW:"\u6A23\u5F0F\u540D\u7A31"},style_code:{zh:"\u6837\u5F0F\u4EE3\u7801",en:"Style Code",zh_TW:"\u6A23\u5F0F\u7A0B\u5F0F\u78BC"},pre_trans_seconds:{zh:"\u63D0\u524D\u7FFB\u8BD1\u65F6\u957F (10-36000s)",en:"Pre translation seconds (10-36000s)",zh_TW:"\u63D0\u524D\u7FFB\u8BD1\u65F6\u957F (10-36000s)"},throttle_trans_interval:{zh:"\u8282\u6D41\u7FFB\u8BD1\u95F4\u9694 (1-3600s)",en:"Throttling translation interval (1-3600s)",zh_TW:"\u8282\u6D41\u7FFB\u8BD1\u95F4\u9694 (1-3600s)"}};const newI18n=lang=>key=>{var _I18N$key;return((_I18N$key=I18N[key])===null||_I18N$key===void 0?void 0:_I18N$key[lang])||"";}; +const UI_LANGS=(/* unused pure expression or super */ null && ([["en","English"],["zh","简体中文"],["zh_TW","繁體中文"],["ja","日本語"],["ko","한국어"]]));const customApiLangs="[\"en\", \"English - English\"],\n[\"zh-CN\", \"Simplified Chinese - \u7B80\u4F53\u4E2D\u6587\"],\n[\"zh-TW\", \"Traditional Chinese - \u7E41\u9AD4\u4E2D\u6587\"],\n[\"ar\", \"Arabic - \u0627\u0644\u0639\u0631\u0628\u064A\u0629\"],\n[\"bg\", \"Bulgarian - \u0411\u044A\u043B\u0433\u0430\u0440\u0441\u043A\u0438\"],\n[\"ca\", \"Catalan - Catal\xE0\"],\n[\"hr\", \"Croatian - Hrvatski\"],\n[\"cs\", \"Czech - \u010Ce\u0161tina\"],\n[\"da\", \"Danish - Dansk\"],\n[\"nl\", \"Dutch - Nederlands\"],\n[\"fi\", \"Finnish - Suomi\"],\n[\"fr\", \"French - Fran\xE7ais\"],\n[\"de\", \"German - Deutsch\"],\n[\"el\", \"Greek - \u0395\u03BB\u03BB\u03B7\u03BD\u03B9\u03BA\u03AC\"],\n[\"hi\", \"Hindi - \u0939\u093F\u0928\u094D\u0926\u0940\"],\n[\"hu\", \"Hungarian - Magyar\"],\n[\"id\", \"Indonesian - Indonesia\"],\n[\"it\", \"Italian - Italiano\"],\n[\"ja\", \"Japanese - \u65E5\u672C\u8A9E\"],\n[\"ko\", \"Korean - \uD55C\uAD6D\uC5B4\"],\n[\"ms\", \"Malay - Melayu\"],\n[\"mt\", \"Maltese - Malti\"],\n[\"nb\", \"Norwegian - Norsk Bokm\xE5l\"],\n[\"pl\", \"Polish - Polski\"],\n[\"pt\", \"Portuguese - Portugu\xEAs\"],\n[\"ro\", \"Romanian - Rom\xE2n\u0103\"],\n[\"ru\", \"Russian - \u0420\u0443\u0441\u0441\u043A\u0438\u0439\"],\n[\"sk\", \"Slovak - Sloven\u010Dina\"],\n[\"sl\", \"Slovenian - Sloven\u0161\u010Dina\"],\n[\"es\", \"Spanish - Espa\xF1ol\"],\n[\"sv\", \"Swedish - Svenska\"],\n[\"ta\", \"Tamil - \u0BA4\u0BAE\u0BBF\u0BB4\u0BCD\"],\n[\"te\", \"Telugu - \u0C24\u0C46\u0C32\u0C41\u0C17\u0C41\"],\n[\"th\", \"Thai - \u0E44\u0E17\u0E22\"],\n[\"tr\", \"Turkish - T\xFCrk\xE7e\"],\n[\"uk\", \"Ukrainian - \u0423\u043A\u0440\u0430\u0457\u043D\u0441\u044C\u043A\u0430\"],\n[\"vi\", \"Vietnamese - Ti\u1EBFng Vi\u1EC7t\"],\n";const customApiHelpZH="// \u8BF7\u6C42\u6570\u636E\u9ED8\u8BA4\u683C\u5F0F\n{\n \"url\": \"{{url}}\",\n \"method\": \"POST\",\n \"headers\": {\n \"Content-type\": \"application/json\",\n \"Authorization\": \"Bearer {{key}}\"\n },\n \"body\": {\n \"text\": \"{{text}}\", // \u5F85\u7FFB\u8BD1\u6587\u5B57\n \"from\": \"{{from}}\", // \u6587\u5B57\u7684\u8BED\u8A00\uFF08\u53EF\u80FD\u4E3A\u7A7A\uFF09\n \"to\": \"{{to}}\", // \u76EE\u6807\u8BED\u8A00\n },\n}\n\n\n// \u8FD4\u56DE\u6570\u636E\u9ED8\u8BA4\u683C\u5F0F\n{\n text: \"\", // \u7FFB\u8BD1\u540E\u7684\u6587\u5B57\n from: \"\", // \u8BC6\u522B\u7684\u6E90\u8BED\u8A00\n to: \"\", // \u76EE\u6807\u8BED\u8A00\uFF08\u53EF\u9009\uFF09\n}\n\n\n// Hook \u8303\u4F8B\n// URL\nhttps://translate.googleapis.com/translate_a/single?client=gtx&dj=1&dt=t&ie=UTF-8&q={{text}}&sl=en&tl=zh-CN\n\n// Request Hook\n(text, from, to, url, key) => [url, {\n headers: {\n \"Content-type\": \"application/json\",\n },\n method: \"GET\",\n body: null,\n}]\n\n// Response Hook\n// \u5176\u4E2D\u8FD4\u56DE\u6570\u7EC4\u7B2C\u4E00\u4E2A\u503C\u8868\u793A\u8BD1\u6587\u5B57\u7B26\u4E32\uFF0C\u7B2C\u4E8C\u4E2A\u503C\u4E3A\u5E03\u5C14\u503C\uFF0C\u8868\u793A\u539F\u6587\u8BED\u8A00\u4E0E\u76EE\u6807\u8BED\u8A00\u662F\u5426\u76F8\u540C\n(res, text, from, to) => [res.sentences.map((item) => item.trans).join(\" \"), to === res.src]\n\n\n// \u652F\u6301\u7684\u8BED\u8A00\u4EE3\u7801\u5982\u4E0B\n".concat(customApiLangs,"\n");const customApiHelpEN="// Default request\n{\n \"url\": \"{{url}}\",\n \"method\": \"POST\",\n \"headers\": {\n \"Content-type\": \"application/json\",\n \"Authorization\": \"Bearer {{key}}\"\n },\n \"body\": {\n \"text\": \"{{text}}\", // Text to be translated\n \"from\": \"{{from}}\", // The language of the text (may be empty)\n \"to\": \"{{to}}\", // Target language\n },\n}\n\n\n// Default response\n{\n text: \"\", // translated text\n from: \"\", // Recognized source language\n to: \"\", // Target language (optional)\n}\n\n\n/// Hook Example\n// URL\nhttps://translate.googleapis.com/translate_a/single?client=gtx&dj=1&dt=t&ie=UTF-8&q={{text}}&sl=en&tl=zh-CN\n\n// Request Hook\n(text, from, to, url, key) => [url, {\n headers: {\n \"Content-type\": \"application/json\",\n },\n method: \"GET\",\n body: null,\n}]\n\n// Response Hook\n// In the returned array, the first value is the translated string, while the second value is a boolean\n// that indicates whether the source language is the same as the target language.\n(res, text, from, to) => [res.sentences.map((item) => item.trans).join(\" \"), to === res.src]\n\n\n// The supported language codes are as follows\n".concat(customApiLangs,"\n");const requestHookHelperZH="1\u3001\u7B2C\u4E00\u4E2A\u53C2\u6570\u5305\u542B\u5982\u4E0B\u5B57\u6BB5\uFF1A'texts', 'from', 'to', 'url', 'key', 'model', 'systemPrompt', ...\n2\u3001\u8FD4\u56DE\u503C\u5FC5\u987B\u662F\u5305\u542B\u4EE5\u4E0B\u5B57\u6BB5\u7684\u5BF9\u8C61\uFF1A 'url', 'body', 'headers', 'method'\n3\u3001\u5982\u8FD4\u56DE\u7A7A\u503C\uFF0C\u5219hook\u51FD\u6570\u4E0D\u4F1A\u4EA7\u751F\u4EFB\u4F55\u6548\u679C\u3002\n\n// \u793A\u4F8B\nasync (args, { url, body, headers, userMsg, method } = {}) => {\n return { url, body, headers, userMsg, method };\n}";const requestHookHelperEN="1. The first parameter contains the following fields: 'texts', 'from', 'to', 'url', 'key', 'model', 'systemPrompt', ...\n2. The return value must be an object containing the following fields: 'url', 'body', 'headers', 'method'\n3. If a null value is returned, the hook function will have no effect.\n\n// Example\nasync (args, { url, body, headers, userMsg, method } = {}) => {\n return { url, body, headers, userMsg, method };\n}";const responsetHookHelperZH="1\u3001\u7B2C\u4E00\u4E2A\u53C2\u6570\u5305\u542B\u5982\u4E0B\u5B57\u6BB5\uFF1A'res', ...\n2\u3001\u8FD4\u56DE\u503C\u5FC5\u987B\u662F\u5305\u542B\u4EE5\u4E0B\u5B57\u6BB5\u7684\u5BF9\u8C61\uFF1A 'translations'\n \uFF08'translations' \u5E94\u4E3A\u4E00\u4E2A\u4E8C\u7EF4\u6570\u7EC4\uFF1A[[\u8BD1\u6587, \u539F\u6587\u8BED\u8A00]]\uFF09\n3\u3001\u5982\u8FD4\u56DE\u7A7A\u503C\uFF0C\u5219hook\u51FD\u6570\u4E0D\u4F1A\u4EA7\u751F\u4EFB\u4F55\u6548\u679C\u3002\n\n// \u793A\u4F8B\nasync ({ res, ...args }) => {\n const translations = [[\"\u4F60\u597D\", \"en\"]];\n const modelMsg = {}; // \u7528\u4E8EAI\u4E0A\u4E0B\u6587\n return { translations, modelMsg };\n}";const responsetHookHelperEN="1. The first parameter contains the following fields: 'res', ...\n2. The return value must be an object containing the following fields: 'translations'\n ('translations' should be a two-dimensional array: [[translation, source language]]).\n3. If a null value is returned, the hook function will have no effect.\n\n// Example\nasync ({ res, ...args }) => {\n const translations = [[\"\u4F60\u597D\", \"en\"]];\n const modelMsg = {}; // For AI context\n return { translations, modelMsg };\n}";const I18N={app_name:{zh:"\u7B80\u7EA6\u7FFB\u8BD1",en:"KISS Translator",zh_TW:"\u7C21\u7D04\u7FFB\u8B6F",ja:"KISS Translator",ko:"KISS Translator"},translate:{zh:"\u7FFB\u8BD1",en:"Translate",zh_TW:"\u7FFB\u8B6F",ja:"\u7FFB\u8A33",ko:"\uBC88\uC5ED"},custom_api_help:{zh:customApiHelpZH,en:customApiHelpEN,zh_TW:customApiHelpZH,ja:customApiHelpEN,ko:customApiHelpEN},request_hook_helper:{zh:requestHookHelperZH,en:requestHookHelperEN,zh_TW:requestHookHelperZH,ja:requestHookHelperEN,ko:requestHookHelperEN},response_hook_helper:{zh:responsetHookHelperZH,en:responsetHookHelperEN,zh_TW:responsetHookHelperZH,ja:responsetHookHelperEN,ko:responsetHookHelperEN},translate_alt:{zh:"\u7FFB\u8BD1",en:"Translate",zh_TW:"\u7FFB\u8B6F",ja:"\u7FFB\u8A33",ko:"\uBC88\uC5ED"},basic_setting:{zh:"\u57FA\u672C\u8BBE\u7F6E",en:"Basic Setting",zh_TW:"\u57FA\u672C\u8A2D\u5B9A",ja:"\u57FA\u672C\u8A2D\u5B9A",ko:"\uAE30\uBCF8 \uC124\uC815"},rules_setting:{zh:"\u89C4\u5219\u8BBE\u7F6E",en:"Rules Setting",zh_TW:"\u898F\u5247\u8A2D\u5B9A",ja:"\u30EB\u30FC\u30EB\u8A2D\u5B9A",ko:"\uADDC\uCE59 \uC124\uC815"},apis_setting:{zh:"\u63A5\u53E3\u8BBE\u7F6E",en:"Apis Setting",zh_TW:"API\u8A2D\u5B9A",ja:"API\u8A2D\u5B9A",ko:"API \uC124\uC815"},sync_setting:{zh:"\u540C\u6B65\u8BBE\u7F6E",en:"Sync Setting",zh_TW:"\u540C\u6B65\u8A2D\u5B9A",ja:"\u540C\u671F\u8A2D\u5B9A",ko:"\uB3D9\uAE30\uD654 \uC124\uC815"},patch_setting:{zh:"\u8865\u4E01\u8BBE\u7F6E",en:"Patch Setting",zh_TW:"\u4FEE\u88DC\u8A2D\u5B9A",ja:"\u30D1\u30C3\u30C1\u8A2D\u5B9A",ko:"\uD328\uCE58 \uC124\uC815"},patch_setting_help:{zh:"\u9488\u5BF9\u4E00\u4E9B\u7279\u6B8A\u7F51\u7AD9\u7684\u4FEE\u6B63\u811A\u672C\uFF0C\u4EE5\u4FBF\u7FFB\u8BD1\u8F6F\u4EF6\u5F97\u5230\u66F4\u597D\u7684\u5C55\u793A\u6548\u679C\u3002",en:"Corrected scripts for some special websites so that the translation software can get better display results.",zh_TW:"\u91DD\u5C0D\u67D0\u4E9B\u7279\u6B8A\u7DB2\u7AD9\u7684\u4FEE\u6B63\u8173\u672C\uFF0C\u8B93\u7FFB\u8B6F\u8EDF\u9AD4\u6709\u66F4\u597D\u7684\u986F\u793A\u6548\u679C\u3002",ja:"\u4E00\u90E8\u306E\u7279\u6B8A\u306A\u30A6\u30A7\u30D6\u30B5\u30A4\u30C8\u7528\u306E\u4FEE\u6B63\u30B9\u30AF\u30EA\u30D7\u30C8\u3067\u3001\u7FFB\u8A33\u30BD\u30D5\u30C8\u30A6\u30A7\u30A2\u306E\u8868\u793A\u52B9\u679C\u3092\u5411\u4E0A\u3055\u305B\u307E\u3059\u3002",ko:"\uC77C\uBD80 \uD2B9\uC218 \uC6F9\uC0AC\uC774\uD2B8\uB97C \uC704\uD55C \uC218\uC815 \uC2A4\uD06C\uB9BD\uD2B8\uB85C, \uBC88\uC5ED \uC18C\uD504\uD2B8\uC6E8\uC5B4\uC758 \uD45C\uC2DC \uD6A8\uACFC\uB97C \uAC1C\uC120\uD569\uB2C8\uB2E4."},inject_webfix:{zh:"\u6CE8\u5165\u4FEE\u590D\u8865\u4E01",en:"Inject Webfix",zh_TW:"\u6CE8\u5165\u4FEE\u6B63\u88DC\u4E01",ja:"Webfix\u3092\u6CE8\u5165",ko:"\uC6F9 \uC218\uC815 \uD328\uCE58 \uC8FC\uC785"},about:{zh:"\u5173\u4E8E",en:"About",zh_TW:"\u95DC\u65BC",ja:"\u6982\u8981",ko:"\uC815\uBCF4"},about_md:{zh:"README.md",en:"README.en.md",zh_TW:"README.md",ja:"README.ja.md",// 假设的文件名 +ko:"README.ko.md"// 假设的文件名 +},about_md_local:{zh:"\u8BF7 [\u70B9\u51FB\u8FD9\u91CC](".concat("https://github.com/fishjar/kiss-translator",") \u67E5\u770B\u8BE6\u60C5\u3002"),en:"Please [click here](".concat("https://github.com/fishjar/kiss-translator",") for details."),zh_TW:"\u8ACB [\u9EDE\u9019\u88E1](".concat("https://github.com/fishjar/kiss-translator",") \u67E5\u770B\u8A73\u7D30\u5167\u5BB9\u3002"),ja:"\u8A73\u7D30\u306F [\u3053\u3061\u3089](".concat("https://github.com/fishjar/kiss-translator",") \u3092\u30AF\u30EA\u30C3\u30AF\u3057\u3066\u304F\u3060\u3055\u3044\u3002"),ko:"\uC790\uC138\uD55C \uB0B4\uC6A9\uC740 [\uC5EC\uAE30](".concat("https://github.com/fishjar/kiss-translator",")\uB97C \uD074\uB9AD\uD558\uC138\uC694.")},ui_lang:{zh:"\u754C\u9762\u8BED\u8A00",en:"Interface Language",zh_TW:"\u4ECB\u9762\u8A9E\u8A00",ja:"\u30A4\u30F3\u30BF\u30FC\u30D5\u30A7\u30FC\u30B9\u8A00\u8A9E",ko:"\uC778\uD130\uD398\uC774\uC2A4 \uC5B8\uC5B4"},fetch_limit:{zh:"\u6700\u5927\u5E76\u53D1\u8BF7\u6C42\u6570\u91CF (1-100)",en:"Maximum Number Of Concurrent Requests (1-100)",zh_TW:"\u6700\u5927\u540C\u6642\u8ACB\u6C42\u6578\u91CF (1-100)",ja:"\u6700\u5927\u540C\u6642\u30EA\u30AF\u30A8\u30B9\u30C8\u6570 (1-100)",ko:"\uCD5C\uB300 \uB3D9\uC2DC \uC694\uCCAD \uC218 (1-100)"},if_think:{zh:"\u542F\u7528\u6216\u7981\u7528\u6A21\u578B\u7684\u6DF1\u5EA6\u601D\u8003\u80FD\u529B",en:"Enable or disable the model\u2019s thinking behavior ",zh_TW:"\u555F\u7528\u6216\u505C\u7528\u6A21\u578B\u7684\u6DF1\u5EA6\u601D\u8003\u80FD\u529B",ja:"\u30E2\u30C7\u30EB\u306E\u601D\u8003\u884C\u52D5\u3092\u6709\u52B9\u307E\u305F\u306F\u7121\u52B9\u306B\u3059\u308B",ko:"\uBAA8\uB378\uC758 \uC0AC\uACE0 \uD589\uB3D9 \uD65C\uC131\uD654 \uB610\uB294 \uBE44\uD65C\uC131\uD654"},think:{zh:"\u542F\u7528\u6DF1\u5EA6\u601D\u8003",en:"enable thinking",zh_TW:"\u555F\u7528\u6DF1\u5EA6\u601D\u8003",ja:"\u601D\u8003\u3092\u6709\u52B9\u306B\u3059\u308B",ko:"\uC0AC\uACE0 \uD65C\uC131\uD654"},nothink:{zh:"\u7981\u7528\u6DF1\u5EA6\u601D\u8003",en:"disable thinking",zh_TW:"\u505C\u7528\u6DF1\u5EA6\u601D\u8003",ja:"\u601D\u8003\u3092\u7121\u52B9\u306B\u3059\u308B",ko:"\uC0AC\uACE0 \uBE44\uD65C\uC131\uD654"},think_ignore:{zh:"\u5FFD\u7565\u4EE5\u4E0B\u6A21\u578B\u7684\u8F93\u51FA,\u9017\u53F7(,)\u5206\u5272,\u5F53\u6A21\u578B\u652F\u6301\u601D\u8003\u4F46ollama\u4E0D\u652F\u6301\u65F6\u9700\u8981\u586B\u5199\u672C\u53C2\u6570",en:"Ignore the block for the following models, comma (,) separated",zh_TW:"\u5FFD\u7565\u4EE5\u4E0B\u6A21\u578B\u7684 \u8F38\u51FA\uFF0C\u4EE5\u9017\u865F (,) \u5206\u9694\uFF1B\u7576\u6A21\u578B\u652F\u63F4\u601D\u8003\u4F46 ollama \u4E0D\u652F\u63F4\u6642\u9700\u8981\u586B\u5BEB\u6B64\u53C3\u6578",ja:"\u4EE5\u4E0B\u306E\u30E2\u30C7\u30EB\u306E\u51FA\u529B\u3092\u7121\u8996\u3059\u308B (\u30B3\u30F3\u30DE(,)\u533A\u5207\u308A)\u3002\u30E2\u30C7\u30EB\u304C\u601D\u8003\u3092\u30B5\u30DD\u30FC\u30C8\u3057\u3066\u3044\u308B\u304C\u3001ollama\u304C\u30B5\u30DD\u30FC\u30C8\u3057\u3066\u3044\u306A\u3044\u5834\u5408\u306B\u8A18\u5165\u304C\u5FC5\u8981\u3067\u3059",ko:"\uB2E4\uC74C \uBAA8\uB378\uC758 \uBE14\uB85D \uBB34\uC2DC (\uC27C\uD45C(,)\uB85C \uAD6C\uBD84), \uBAA8\uB378\uC774 \uC0AC\uACE0\uB97C \uC9C0\uC6D0\uD558\uC9C0\uB9CC ollama\uAC00 \uC9C0\uC6D0\uD558\uC9C0 \uC54A\uB294 \uACBD\uC6B0 \uC774 \uB9E4\uAC1C\uBCC0\uC218\uB97C \uC785\uB825\uD574\uC57C \uD569\uB2C8\uB2E4"},fetch_interval:{zh:"\u6BCF\u6B21\u8BF7\u6C42\u95F4\u9694\u65F6\u95F4 (0-5000ms)",en:"Time Between Requests (0-5000ms)",zh_TW:"\u6BCF\u6B21\u8ACB\u6C42\u9593\u9694\u6642\u9593 (0-5000ms)",ja:"\u30EA\u30AF\u30A8\u30B9\u30C8\u9593\u9694 (0-5000ms)",ko:"\uC694\uCCAD \uAC04 \uC2DC\uAC04 (0-5000ms)"},translate_interval:{zh:"\u7FFB\u8BD1\u95F4\u9694\u65F6\u95F4 (10-2000ms)",en:"Translation Interval (10-2000ms)",zh_TW:"\u7FFB\u8B6F\u9593\u9694\u6642\u9593 (10-2000ms)",ja:"\u7FFB\u8A33\u9593\u9694 (10-2000ms)",ko:"\uBC88\uC5ED \uAC04\uACA9 (10-2000ms)"},http_timeout:{zh:"\u8BF7\u6C42\u8D85\u65F6\u65F6\u95F4 (5000-60000ms)",en:"Request Timeout Time (5000-60000ms)",zh_TW:"\u8ACB\u6C42\u903E\u6642\u6642\u9593 (5000-60000ms)",ja:"\u30EA\u30AF\u30A8\u30B9\u30C8\u30BF\u30A4\u30E0\u30A2\u30A6\u30C8 (5000-60000ms)",ko:"\uC694\uCCAD \uC2DC\uAC04 \uCD08\uACFC (5000-60000ms)"},custom_header:{zh:"\u81EA\u5B9A\u4E49Header\u53C2\u6570",en:"Custom Header Params",zh_TW:"\u81EA\u8A02 Header \u53C3\u6578",ja:"\u30AB\u30B9\u30BF\u30E0\u30D8\u30C3\u30C0\u30FC",ko:"\uC0AC\uC6A9\uC790 \uC9C0\uC815 \uD5E4\uB354"},custom_header_help:{zh:"\u4F7F\u7528JSON\u683C\u5F0F\uFF0C\u4F8B\u5982 \"User-Agent\": \"Mozilla/5.0 (X11; Linux x86_64; rv:141.0) Gecko/20100101 Firefox/141.0\"",en:"Use JSON format, for example \"User-Agent\": \"Mozilla/5.0 (X11; Linux x86_64; rv:141.0) Gecko/20100101 Firefox/141.0\"",zh_TW:"\u4F7F\u7528JSON\u683C\u5F0F\uFF0C\u4F8B\u5982 \"User-Agent\": \"Mozilla/5.0 (X11; Linux x86_64; rv:141.0) Gecko/20100101 Firefox/141.0\"",ja:"JSON\u5F62\u5F0F\u3092\u4F7F\u7528\u3057\u3066\u304F\u3060\u3055\u3044\u3002\u4F8B: \"User-Agent\": \"Mozilla/5.0 (X11; Linux x86_64; rv:141.0) Gecko/20100101 Firefox/141.0\"",ko:"JSON \uD615\uC2DD\uC744 \uC0AC\uC6A9\uD558\uC138\uC694. \uC608: \"User-Agent\": \"Mozilla/5.0 (X11; Linux x86_64; rv:141.0) Gecko/20100101 Firefox/141.0\""},custom_body:{zh:"\u81EA\u5B9A\u4E49Body\u53C2\u6570",en:"Custom Body Params",zh_TW:"\u81EA\u8A02 Body \u53C3\u6578",ja:"\u30AB\u30B9\u30BF\u30E0\u30DC\u30C7\u30A3",ko:"\uC0AC\uC6A9\uC790 \uC9C0\uC815 \uBC14\uB514"},custom_body_help:{zh:"\u4F7F\u7528JSON\u683C\u5F0F\uFF0C\u4F8B\u5982 \"top_p\": 0.7",en:"Use JSON format, for example \"top_p\": 0.7",zh_TW:"\u4F7F\u7528JSON\u683C\u5F0F\uFF0C\u4F8B\u5982 \"top_p\": 0.7",ja:"JSON\u5F62\u5F0F\u3092\u4F7F\u7528\u3057\u3066\u304F\u3060\u3055\u3044\u3002\u4F8B: \"top_p\": 0.7",ko:"JSON \uD615\uC2DD\uC744 \uC0AC\uC6A9\uD558\uC138\uC694. \uC608: \"top_p\": 0.7"},min_translate_length:{zh:"\u6700\u5C0F\u7FFB\u8BD1\u5B57\u7B26\u6570 (1-100)",en:"Minimum number Of Translated Characters (1-100)",zh_TW:"\u6700\u5C0F\u7FFB\u8B6F\u5B57\u5143\u6578 (1-100)",ja:"\u6700\u5C0F\u7FFB\u8A33\u6587\u5B57\u6570 (1-100)",ko:"\uCD5C\uC18C \uBC88\uC5ED \uBB38\uC790 \uC218 (1-100)"},max_translate_length:{zh:"\u6700\u5927\u7FFB\u8BD1\u5B57\u7B26\u6570 (100-100000)",en:"Maximum number Of Translated Characters (100-100000)",zh_TW:"\u6700\u5927\u7FFB\u8B6F\u5B57\u5143\u6578 (100-100000)",ja:"\u6700\u5927\u7FFB\u8A33\u6587\u5B57\u6570 (100-100000)",ko:"\uCD5C\uB300 \uBC88\uC5ED \uBB38\uC790 \uC218 (100-100000)"},num_of_newline_characters:{zh:"\u6362\u884C\u5B57\u7B26\u6570 (1-1000)",en:"Number of Newline Characters (1-1000)",zh_TW:"\u63DB\u884C\u5B57\u5143\u6578 (1-1000)",ja:"\u6539\u884C\u6587\u5B57\u6570 (1-1000)",ko:"\uC904\uBC14\uAFC8 \uBB38\uC790 \uC218 (1-1000)"},translate_service:{zh:"\u7FFB\u8BD1\u670D\u52A1",en:"Translate Service",zh_TW:"\u7FFB\u8B6F\u670D\u52D9",ja:"\u7FFB\u8A33\u30B5\u30FC\u30D3\u30B9",ko:"\uBC88\uC5ED \uC11C\uBE44\uC2A4"},translate_service_multiple:{zh:"\u7FFB\u8BD1\u670D\u52A1 (\u652F\u6301\u591A\u9009)",en:"Translation service (multiple supported)",zh_TW:"\u7FFB\u8B6F\u670D\u52D9 (\u652F\u63F4\u591A\u9078)",ja:"\u7FFB\u8A33\u30B5\u30FC\u30D3\u30B9 (\u8907\u6570\u9078\u629E\u53EF)",ko:"\uBC88\uC5ED \uC11C\uBE44\uC2A4 (\uB2E4\uC911 \uC120\uD0DD \uC9C0\uC6D0)"},translate_timing:{zh:"\u7FFB\u8BD1\u65F6\u673A",en:"Translate Timing",zh_TW:"\u7FFB\u8B6F\u6642\u6A5F",ja:"\u7FFB\u8A33\u30BF\u30A4\u30DF\u30F3\u30B0",ko:"\uBC88\uC5ED \uC2DC\uC810"},mk_pagescroll:{zh:"\u6EDA\u52A8\u52A0\u8F7D\u7FFB\u8BD1\uFF08\u63A8\u8350\uFF09",en:"Rolling Loading (Suggested)",zh_TW:"\u6EFE\u52D5\u8F09\u5165\u7FFB\u8B6F\uFF08\u5EFA\u8B70\uFF09",ja:"\u30B9\u30AF\u30ED\u30FC\u30EB\u7FFB\u8A33 (\u63A8\u5968)",ko:"\uC2A4\uD06C\uB864 \uBC88\uC5ED (\uAD8C\uC7A5)"},mk_pageopen:{zh:"\u7ACB\u5373\u5168\u90E8\u7FFB\u8BD1",en:"Translate all now",zh_TW:"\u7ACB\u5373\u5168\u90E8\u7FFB\u8B6F",ja:"\u3059\u3050\u306B\u3059\u3079\u3066\u7FFB\u8A33",ko:"\uC989\uC2DC \uBAA8\uB450 \uBC88\uC5ED"},mk_mouseover:{zh:"\u9F20\u6807\u60AC\u505C\u7FFB\u8BD1",en:"Mouseover",zh_TW:"\u6ED1\u9F20\u61F8\u505C\u7FFB\u8B6F",ja:"\u30DE\u30A6\u30B9\u30AA\u30FC\u30D0\u30FC\u7FFB\u8A33",ko:"\uB9C8\uC6B0\uC2A4\uC624\uBC84 \uBC88\uC5ED"},mk_ctrlKey:{zh:"Control + \u9F20\u6807\u60AC\u505C",en:"Control + Mouseover",zh_TW:"Control + \u6ED1\u9F20\u61F8\u505C",ja:"Control + \u30DE\u30A6\u30B9\u30AA\u30FC\u30D0\u30FC",ko:"Control + \uB9C8\uC6B0\uC2A4\uC624\uBC84"},mk_shiftKey:{zh:"Shift + \u9F20\u6807\u60AC\u505C",en:"Shift + Mouseover",zh_TW:"Shift + \u6ED1\u9F20\u61F8\u505C",ja:"Shift + \u30DE\u30A6\u30B9\u30AA\u30FC\u30D0\u30FC",ko:"Shift + \uB9C8\uC6B0\uC2A4\uC624\uBC84"},mk_altKey:{zh:"Alt + \u9F20\u6807\u60AC\u505C",en:"Alt + Mouseover",zh_TW:"Alt + \u6ED1\u9F20\u61F8\u505C",ja:"Alt + \u30DE\u30A6\u30B9\u30AA\u30FC\u30D0\u30FC",ko:"Alt + \uB9C8\uC6B0\uC2A4\uC624\uBC84"},from_lang:{zh:"\u539F\u6587\u8BED\u8A00",en:"Source Language",zh_TW:"\u539F\u6587\u8A9E\u8A00",ja:"\u539F\u6587\u306E\u8A00\u8A9E",ko:"\uC6D0\uBCF8 \uC5B8\uC5B4"},to_lang:{zh:"\u76EE\u6807\u8BED\u8A00",en:"Target Language",zh_TW:"\u76EE\u6A19\u8A9E\u8A00",ja:"\u7FFB\u8A33\u5148\u306E\u8A00\u8A9E",ko:"\uB300\uC0C1 \uC5B8\uC5B4"},to_lang2:{zh:"\u7B2C\u4E8C\u76EE\u6807\u8BED\u8A00",en:"Target Language 2",zh_TW:"\u7B2C\u4E8C\u76EE\u6A19\u8A9E\u8A00",ja:"\u7B2C\u4E8C\u7FFB\u8A33\u5148\u306E\u8A00\u8A9E",ko:"\uB450 \uBC88\uC9F8 \uB300\uC0C1 \uC5B8\uC5B4"},to_lang2_helper:{zh:"\u8BBE\u5B9A\u540E\uFF0C\u4E0E\u76EE\u6807\u8BED\u8A00\u4EA7\u751F\u4E92\u8BD1\u6548\u679C\uFF0C\u4F46\u4F9D\u8D56\u8FDC\u7A0B\u8BED\u8A00\u8BC6\u522B\u3002",en:"After setting, it will produce mutual translation effect with the target language, but it relies on remote language recognition.",zh_TW:"\u8A2D\u5B9A\u5F8C\u6703\u8207\u76EE\u6A19\u8A9E\u8A00\u4E92\u8B6F\uFF0C\u4F46\u4F9D\u8CF4\u9060\u7AEF\u8A9E\u8A00\u8B58\u5225\u3002",ja:"\u8A2D\u5B9A\u5F8C\u3001\u30BF\u30FC\u30B2\u30C3\u30C8\u8A00\u8A9E\u3068\u306E\u76F8\u4E92\u7FFB\u8A33\u304C\u53EF\u80FD\u306B\u306A\u308A\u307E\u3059\u304C\u3001\u30EA\u30E2\u30FC\u30C8\u8A00\u8A9E\u8A8D\u8B58\u306B\u4F9D\u5B58\u3057\u307E\u3059\u3002",ko:"\uC124\uC815 \uD6C4, \uB300\uC0C1 \uC5B8\uC5B4\uC640 \uC0C1\uD638 \uBC88\uC5ED \uD6A8\uACFC\uAC00 \uBC1C\uC0DD\uD558\uC9C0\uB9CC, \uC6D0\uACA9 \uC5B8\uC5B4 \uC778\uC2DD\uC5D0 \uC758\uC874\uD569\uB2C8\uB2E4."},text_style:{zh:"\u8BD1\u6587\u6837\u5F0F",en:"Text Style",zh_TW:"\u8B6F\u6587\u6A23\u5F0F",ja:"\u7FFB\u8A33\u30C6\u30AD\u30B9\u30C8\u30B9\u30BF\u30A4\u30EB",ko:"\uBC88\uC5ED \uD14D\uC2A4\uD2B8 \uC2A4\uD0C0\uC77C"},text_style_alt:{zh:"\u8BD1\u6587\u6837\u5F0F",en:"Text Style",zh_TW:"\u8B6F\u6587\u6A23\u5F0F",ja:"\u7FFB\u8A33\u30C6\u30AD\u30B9\u30C8\u30B9\u30BF\u30A4\u30EB",ko:"\uBC88\uC5ED \uD14D\uC2A4\uD2B8 \uC2A4\uD0C0\uC77C"},bg_color:{zh:"\u6837\u5F0F\u989C\u8272",en:"Style Color",zh_TW:"\u6A23\u5F0F\u984F\u8272",ja:"\u30B9\u30BF\u30A4\u30EB\u30AB\u30E9\u30FC",ko:"\uC2A4\uD0C0\uC77C \uC0C9\uC0C1"},remain_unchanged:{zh:"\u4FDD\u7559\u4E0D\u53D8",en:"Remain Unchanged",zh_TW:"\u4FDD\u7559\u4E0D\u8B8A",ja:"\u5909\u66F4\u3057\u306A\u3044",ko:"\uBCC0\uACBD\uD558\uC9C0 \uC54A\uC74C"},google_api:{zh:"\u8C37\u6B4C\u7FFB\u8BD1\u63A5\u53E3",en:"Google Translate API",zh_TW:"Google \u7FFB\u8B6F\u4ECB\u9762",ja:"Google \u7FFB\u8A33 API",ko:"Google \uBC88\uC5ED API"},default_selector:{zh:"\u9ED8\u8BA4\u9009\u62E9\u5668",en:"Default selector",zh_TW:"\u9810\u8A2D\u9078\u64C7\u5668",ja:"\u30C7\u30D5\u30A9\u30EB\u30C8\u30BB\u30EC\u30AF\u30BF",ko:"\uAE30\uBCF8 \uC120\uD0DD\uC790"},selector_rules:{zh:"\u9009\u62E9\u5668\u89C4\u5219",en:"Selector Rules",zh_TW:"\u9078\u64C7\u5668\u898F\u5247",ja:"\u30BB\u30EC\u30AF\u30BF\u30FC\u30EB\u30FC\u30EB",ko:"\uC120\uD0DD\uC790 \uADDC\uCE59"},save:{zh:"\u4FDD\u5B58",en:"Save",zh_TW:"\u5132\u5B58",ja:"\u4FDD\u5B58",ko:"\uC800\uC7A5"},edit:{zh:"\u7F16\u8F91",en:"Edit",zh_TW:"\u7DE8\u8F2F",ja:"\u7DE8\u96C6",ko:"\uC218\uC815"},cancel:{zh:"\u53D6\u6D88",en:"Cancel",zh_TW:"\u53D6\u6D88",ja:"\u30AD\u30E3\u30F3\u30BB\u30EB",ko:"\uCDE8\uC18C"},delete:{zh:"\u5220\u9664",en:"Delete",zh_TW:"\u522A\u9664",ja:"\u524A\u9664",ko:"\uC0AD\uC81C"},reset:{zh:"\u91CD\u7F6E",en:"Reset",zh_TW:"\u91CD\u8A2D",ja:"\u30EA\u30BB\u30C3\u30C8",ko:"\uCD08\uAE30\uD654"},add:{zh:"\u6DFB\u52A0",en:"Add",zh_TW:"\u65B0\u589E",ja:"\u8FFD\u52A0",ko:"\uCD94\uAC00"},inject_rules:{zh:"\u6CE8\u5165\u8BA2\u9605\u89C4\u5219",en:"Inject Subscribe Rules",zh_TW:"\u6CE8\u5165\u8A02\u95B1\u898F\u5247",ja:"\u8CFC\u8AAD\u30EB\u30FC\u30EB\u3092\u6CE8\u5165",ko:"\uAD6C\uB3C5 \uADDC\uCE59 \uC8FC\uC785"},personal_rules:{zh:"\u4E2A\u4EBA\u89C4\u5219",en:"Rules",zh_TW:"\u500B\u4EBA\u898F\u5247",ja:"\u500B\u4EBA\u30EB\u30FC\u30EB",ko:"\uAC1C\uC778 \uADDC\uCE59"},subscribe_rules:{zh:"\u8BA2\u9605\u89C4\u5219",en:"Subscribe",zh_TW:"\u8A02\u95B1\u898F\u5247",ja:"\u8CFC\u8AAD\u30EB\u30FC\u30EB",ko:"\uAD6C\uB3C5 \uADDC\uCE59"},overwrite_subscribe_rules:{zh:"\u8986\u5199\u8BA2\u9605\u89C4\u5219",en:"Overwrite",zh_TW:"\u8986\u5BEB\u8A02\u95B1\u898F\u5247",ja:"\u8CFC\u8AAD\u30EB\u30FC\u30EB\u3092\u4E0A\u66F8\u304D",ko:"\uAD6C\uB3C5 \uADDC\uCE59 \uB36E\uC5B4\uC4F0\uAE30"},subscribe_url:{zh:"\u8BA2\u9605\u5730\u5740",en:"Subscribe URL",zh_TW:"\u8A02\u95B1\u7DB2\u5740",ja:"\u8CFC\u8AADURL",ko:"\uAD6C\uB3C5 URL"},rules_warn_1:{zh:"1\u3001\u89C4\u5219\u751F\u6548\u7684\u4F18\u5148\u7EA7\u4F9D\u6B21\u4E3A\uFF1A\u4E2A\u4EBA\u89C4\u5219 > \u8BA2\u9605\u89C4\u5219 > \u5168\u5C40\u89C4\u5219\u3002\"\u5168\u5C40\u89C4\u5219\"\u76F8\u5F53\u4E8E\u515C\u5E95\u89C4\u5219\u3002",en:"1. The priority of rules is: personal rules > subscription rules > global rules. \"Global rules\" are like a fallback rule.",zh_TW:"1.\u898F\u5247\u751F\u6548\u7684\u512A\u5148\u9806\u5E8F\u4F9D\u5E8F\u70BA\uFF1A\u500B\u4EBA\u898F\u5247 > \u8A02\u95B1\u898F\u5247 > \u5168\u57DF\u898F\u5247\u3002 \"\u5168\u57DF\u898F\u5247\"\u76F8\u7576\u65BC\u515C\u5E95\u898F\u5247\u3002",ja:"1. \u30EB\u30FC\u30EB\u306E\u512A\u5148\u9806\u4F4D: \u500B\u4EBA\u30EB\u30FC\u30EB > \u8CFC\u8AAD\u30EB\u30FC\u30EB > \u30B0\u30ED\u30FC\u30D0\u30EB\u30EB\u30FC\u30EB\u3002\u300C\u30B0\u30ED\u30FC\u30D0\u30EB\u30EB\u30FC\u30EB\u300D\u306F\u30D5\u30A9\u30FC\u30EB\u30D0\u30C3\u30AF\u30EB\u30FC\u30EB\u306E\u3088\u3046\u306A\u3082\u306E\u3067\u3059\u3002",ko:"1. \uADDC\uCE59 \uC6B0\uC120\uC21C\uC704: \uAC1C\uC778 \uADDC\uCE59 > \uAD6C\uB3C5 \uADDC\uCE59 > \uC804\uC5ED \uADDC\uCE59. \"\uC804\uC5ED \uADDC\uCE59\"\uC740 \uC77C\uC885\uC758 \uD3F4\uBC31(fallback) \uADDC\uCE59\uC785\uB2C8\uB2E4."},rules_warn_2:{zh:"2\u3001\u201C\u8BA2\u9605\u89C4\u5219\u201D\u9009\u62E9\u6CE8\u5165\u540E\u624D\u4F1A\u751F\u6548\u3002",en:"2. \"Subscription rules\" will take effect only after injection is selected.",zh_TW:"2\u3001\u300C\u8A02\u95B1\u898F\u5247\u300D\u9078\u64C7\u6CE8\u5165\u5F8C\u624D\u6703\u751F\u6548\u3002",ja:"2. \u300C\u8CFC\u8AAD\u30EB\u30FC\u30EB\u300D\u306F\u6CE8\u5165\u3092\u9078\u629E\u3057\u305F\u5F8C\u306B\u306E\u307F\u6709\u52B9\u306B\u306A\u308A\u307E\u3059\u3002",ko:"2. \"\uAD6C\uB3C5 \uADDC\uCE59\"\uC740 \uC8FC\uC785\uC744 \uC120\uD0DD\uD55C \uD6C4\uC5D0\uB9CC \uC801\uC6A9\uB429\uB2C8\uB2E4."},rules_warn_3:{zh:"3\u3001\u5173\u4E8E\u89C4\u5219\u586B\u5199\uFF1A\u8F93\u5165\u6846\u7559\u7A7A\u6216\u4E0B\u62C9\u6846\u9009\u201C*\u201D\u8868\u793A\u91C7\u7528\u5168\u5C40\u89C4\u5219\u3002",en:"3. Regarding filling in the rules: Leave the input box blank or select \"*\" in the drop-down box to use global rule.",zh_TW:"3. \u898F\u5247\u586B\u5BEB\u8AAA\u660E\uFF1A\u8F38\u5165\u6846\u7559\u7A7A\u6216\u4E0B\u62C9\u9078\u64C7\u300C*\u300D\u8868\u793A\u4F7F\u7528\u5168\u57DF\u898F\u5247\u3002",ja:"3. \u30EB\u30FC\u30EB\u306E\u8A18\u5165\u306B\u3064\u3044\u3066: \u5165\u529B\u30DC\u30C3\u30AF\u30B9\u3092\u7A7A\u767D\u306B\u3059\u308B\u304B\u3001\u30C9\u30ED\u30C3\u30D7\u30C0\u30A6\u30F3\u3067\u300C*\u300D\u3092\u9078\u629E\u3059\u308B\u3068\u3001\u30B0\u30ED\u30FC\u30D0\u30EB\u30EB\u30FC\u30EB\u304C\u4F7F\u7528\u3055\u308C\u307E\u3059\u3002",ko:"3. \uADDC\uCE59 \uC791\uC131 \uAD00\uB828: \uC785\uB825\uB780\uC744 \uBE44\uC6CC\uB450\uAC70\uB098 \uB4DC\uB86D\uB2E4\uC6B4\uC5D0\uC11C \"*\"\uB97C \uC120\uD0DD\uD558\uBA74 \uC804\uC5ED \uADDC\uCE59\uC774 \uC0AC\uC6A9\uB429\uB2C8\uB2E4."},sync_warn:{zh:"\u6D89\u53CA\u9690\u79C1\u6570\u636E\u7684\u540C\u6B65\u8BF7\u8C28\u614E\u9009\u62E9\u7B2C\u4E09\u65B9\u540C\u6B65\u670D\u52A1\uFF0C\u5EFA\u8BAE\u81EA\u884C\u642D\u5EFA kiss-worker \u6216 WebDAV \u670D\u52A1\u3002",en:"When synchronizing data that involves privacy, please be cautious about choosing third-party sync services. It is recommended to set up your own sync service using kiss-worker or WebDAV.",zh_TW:"\u540C\u6B65\u6D89\u53CA\u96B1\u79C1\u8CC7\u6599\u6642\uFF0C\u8ACB\u8B39\u614E\u9078\u64C7\u7B2C\u4E09\u65B9\u540C\u6B65\u670D\u52D9\uFF1B\u5EFA\u8B70\u81EA\u5EFA kiss-worker \u6216 WebDAV \u670D\u52D9\u3002",ja:"\u30D7\u30E9\u30A4\u30D0\u30B7\u30FC\u306B\u95A2\u308F\u308B\u30C7\u30FC\u30BF\u3092\u540C\u671F\u3059\u308B\u5834\u5408\u3001\u30B5\u30FC\u30C9\u30D1\u30FC\u30C6\u30A3\u306E\u540C\u671F\u30B5\u30FC\u30D3\u30B9\u306F\u614E\u91CD\u306B\u9078\u629E\u3057\u3066\u304F\u3060\u3055\u3044\u3002kiss-worker \u3084 WebDAV \u30B5\u30FC\u30D3\u30B9\u3092\u81EA\u5DF1\u30DB\u30B9\u30C6\u30A3\u30F3\u30B0\u3059\u308B\u3053\u3068\u3092\u304A\u52E7\u3081\u3057\u307E\u3059\u3002",ko:"\uAC1C\uC778\uC815\uBCF4\uAC00 \uD3EC\uD568\uB41C \uB370\uC774\uD130\uB97C \uB3D9\uAE30\uD654\uD560 \uACBD\uC6B0, \uD0C0\uC0AC \uB3D9\uAE30\uD654 \uC11C\uBE44\uC2A4 \uC120\uD0DD\uC5D0 \uC2E0\uC911\uC744 \uAE30\uD558\uC2ED\uC2DC\uC624. \uC790\uCCB4 kiss-worker \uB610\uB294 WebDAV \uC11C\uBE44\uC2A4\uB97C \uAD6C\uCD95\uD558\uB294 \uAC83\uC744 \uAD8C\uC7A5\uD569\uB2C8\uB2E4."},sync_warn_2:{zh:"\u5982\u679C\u670D\u52A1\u5668\u5B58\u5728\u5176\u4ED6\u5BA2\u6237\u7AEF\u540C\u6B65\u7684\u6570\u636E\uFF0C\u7B2C\u4E00\u6B21\u540C\u6B65\u5C06\u76F4\u63A5\u8986\u76D6\u672C\u5730\u914D\u7F6E\uFF0C\u540E\u9762\u5219\u6839\u636E\u4FEE\u6539\u65F6\u95F4\uFF0C\u65B0\u7684\u8986\u76D6\u65E7\u7684\u3002",en:"If the server has data synchronized by other clients, the first synchronization will directly overwrite the local configuration, and later, according to the modification time, the new one will overwrite the old one.",zh_TW:"\u82E5\u4F3A\u670D\u5668\u4E0A\u5B58\u5728\u5176\u4ED6\u7528\u6236\u7AEF\u540C\u6B65\u7684\u8CC7\u6599\uFF0C\u7B2C\u4E00\u6B21\u540C\u6B65\u6703\u76F4\u63A5\u8986\u84CB\u672C\u6A5F\u8A2D\u5B9A\uFF1B\u4E4B\u5F8C\u5247\u4F9D\u4FEE\u6539\u6642\u9593\uFF0C\u7531\u65B0\u7684\u8986\u84CB\u820A\u7684\u3002",ja:"\u30B5\u30FC\u30D0\u30FC\u306B\u4ED6\u306E\u30AF\u30E9\u30A4\u30A2\u30F3\u30C8\u306B\u3088\u3063\u3066\u540C\u671F\u3055\u308C\u305F\u30C7\u30FC\u30BF\u304C\u3042\u308B\u5834\u5408\u3001\u6700\u521D\u306E\u540C\u671F\u306F\u30ED\u30FC\u30AB\u30EB\u8A2D\u5B9A\u3092\u76F4\u63A5\u4E0A\u66F8\u304D\u3057\u3001\u305D\u306E\u5F8C\u306F\u5909\u66F4\u6642\u9593\u306B\u5FDC\u3058\u3066\u65B0\u3057\u3044\u3082\u306E\u304C\u53E4\u3044\u3082\u306E\u3092\u4E0A\u66F8\u304D\u3057\u307E\u3059\u3002",ko:"\uC11C\uBC84\uC5D0 \uB2E4\uB978 \uD074\uB77C\uC774\uC5B8\uD2B8\uAC00 \uB3D9\uAE30\uD654\uD55C \uB370\uC774\uD130\uAC00 \uC788\uB294 \uACBD\uC6B0, \uCCAB \uBC88\uC9F8 \uB3D9\uAE30\uD654\uB294 \uB85C\uCEEC \uAD6C\uC131\uC744 \uC9C1\uC811 \uB36E\uC5B4\uC4F0\uBA70, \uC774\uD6C4\uC5D0\uB294 \uC218\uC815 \uC2DC\uAC04\uC5D0 \uB530\uB77C \uC0C8 \uD56D\uBAA9\uC774 \uAE30\uC874 \uD56D\uBAA9\uC744 \uB36E\uC5B4\uC501\uB2C8\uB2E4."},about_sync_api:{zh:"\u81EA\u5EFAkiss-wroker\u6570\u636E\u540C\u6B65\u670D\u52A1",en:"Self-hosting a Kiss-worker data sync service",zh_TW:"\u81EA\u5EFA kiss-wroker \u8CC7\u6599\u540C\u6B65\u670D\u52D9",ja:"Kiss-worker \u30C7\u30FC\u30BF\u540C\u671F\u30B5\u30FC\u30D3\u30B9\u3092\u30BB\u30EB\u30D5\u30DB\u30B9\u30C8\u3059\u308B",ko:"Kiss-worker \uB370\uC774\uD130 \uB3D9\uAE30\uD654 \uC11C\uBE44\uC2A4 \uC790\uCCB4 \uD638\uC2A4\uD305"},about_api:{zh:"1\u3001\u5176\u4E2D BuiltinAI \u4E3A\u6D4F\u89C8\u5668\u5185\u7F6EAI\u7FFB\u8BD1\uFF0C\u76EE\u524D\u4EC5 Chrome 138 \u53CA\u4EE5\u4E0A\u7248\u672C\u5F97\u5230\u652F\u6301\u3002",en:"1. BuiltinAI is the browser's built-in AI translation, which is currently only supported by Chrome 138 and above.",zh_TW:"1.\u5176\u4E2D BuiltinAI \u70BA\u700F\u89BD\u5668\u5167\u5EFAAI\u7FFB\u8B6F\uFF0C\u76EE\u524D\u50C5 Chrome 138 \u4EE5\u4E0A\u7248\u672C\u652F\u63F4\u3002",ja:"1. BuiltinAI \u306F\u30D6\u30E9\u30A6\u30B6\u5185\u8535\u306EAI\u7FFB\u8A33\u3067\u3001\u73FE\u5728 Chrome 138 \u4EE5\u964D\u306E\u30D0\u30FC\u30B8\u30E7\u30F3\u3067\u306E\u307F\u30B5\u30DD\u30FC\u30C8\u3055\u308C\u3066\u3044\u307E\u3059\u3002",ko:"1. BuiltinAI\uB294 \uBE0C\uB77C\uC6B0\uC800 \uB0B4\uC7A5 AI \uBC88\uC5ED\uC73C\uB85C, \uD604\uC7AC Chrome 138 \uC774\uC0C1 \uBC84\uC804\uC5D0\uC11C\uB9CC \uC9C0\uC6D0\uB429\uB2C8\uB2E4."},about_api_2:{zh:"2\u3001\u5927\u90E8\u5206AI\u63A5\u53E3\u90FD\u4E0EOpenAI\u517C\u5BB9\uFF0C\u56E0\u6B64\u9009\u62E9\u6DFB\u52A0OpenAI\u7C7B\u578B\u5373\u53EF\u3002It should be noted that Prompt has two types: batch translation and nobatch translation. Not all interfaces support batch translation.",en:"2. Most AI interfaces are compatible with OpenAI, so just choose to add the OpenAI type.",zh_TW:"2.\u5927\u90E8\u5206AI\u4ECB\u9762\u90FD\u8207OpenAI\u76F8\u5BB9\uFF0C\u56E0\u6B64\u9078\u64C7\u65B0\u589EOpenAI\u985E\u578B\u5373\u53EF\u3002\u8981\u6CE8\u610F\u7684\u662FPrompt\u5206\u805A\u5408\u7FFB\u8B6F\u548C\u975E\u805A\u5408\u7FFB\u8B6F\u5169\u7A2E\uFF0C\u4E0D\u662F\u6240\u6709\u4ECB\u9762\u90FD\u652F\u63F4\u805A\u5408\u7FFB\u8B6F\u3002",ja:"2. \u307B\u3068\u3093\u3069\u306EAI\u30A4\u30F3\u30BF\u30FC\u30D5\u30A7\u30FC\u30B9\u306FOpenAI\u3068\u4E92\u63DB\u6027\u304C\u3042\u308B\u305F\u3081\u3001OpenAI\u30BF\u30A4\u30D7\u3092\u8FFD\u52A0\u3059\u308B\u3060\u3051\u3067\u5341\u5206\u3067\u3059\u3002",ko:"2. \uB300\uBD80\uBD84\uC758 AI \uC778\uD130\uD398\uC774\uC2A4\uB294 OpenAI\uC640 \uD638\uD658\uB418\uBBC0\uB85C OpenAI \uC720\uD615\uC744 \uCD94\uAC00\uD558\uAE30\uB9CC \uD558\uBA74 \uB429\uB2C8\uB2E4."},about_api_3:{zh:"3\u3001\u6682\u672A\u5217\u51FA\u7684\u63A5\u53E3\uFF0C\u7406\u8BBA\u4E0A\u90FD\u53EF\u4EE5\u901A\u8FC7\u81EA\u5B9A\u4E49\u63A5\u53E3 (Custom) \u7684\u5F62\u5F0F\u652F\u6301\u3002",en:"3. Interfaces that have not yet been launched can theoretically be supported through custom interfaces.",zh_TW:"3.\u66AB\u672A\u5217\u51FA\u7684\u4ECB\u9762\uFF0C\u7406\u8AD6\u4E0A\u90FD\u53EF\u900F\u904E\u81EA\u8A02\u4ECB\u9762 (Custom) \u7684\u5F62\u5F0F\u652F\u63F4\u3002",ja:"3. \u307E\u3060\u30EA\u30B9\u30C8\u3055\u308C\u3066\u3044\u306A\u3044\u30A4\u30F3\u30BF\u30FC\u30D5\u30A7\u30FC\u30B9\u3082\u3001\u7406\u8AD6\u4E0A\u306F\u30AB\u30B9\u30BF\u30E0\u30A4\u30F3\u30BF\u30FC\u30D5\u30A7\u30FC\u30B9 (Custom) \u3092\u901A\u3058\u3066\u30B5\u30DD\u30FC\u30C8\u53EF\u80FD\u3067\u3059\u3002",ko:"3. \uC544\uC9C1 \uB4F1\uB85D\uB418\uC9C0 \uC54A\uC740 \uC778\uD130\uD398\uC774\uC2A4\uB3C4 \uC774\uB860\uC801\uC73C\uB85C\uB294 \uC0AC\uC6A9\uC790 \uC815\uC758 \uC778\uD130\uD398\uC774\uC2A4 (Custom)\uB97C \uD1B5\uD574 \uC9C0\uC6D0\uB420 \uC218 \uC788\uC2B5\uB2C8\uB2E4."},about_api_proxy:{zh:"\u67E5\u770B\u81EA\u5EFA\u4E00\u4E2A\u7FFB\u8BD1\u63A5\u53E3\u4EE3\u7406",en:"Check out the self-built translation interface proxy",zh_TW:"\u67E5\u770B\u5982\u4F55\u81EA\u5EFA\u7FFB\u8B6F\u4ECB\u9762 Proxy",ja:"\u81EA\u4F5C\u306E\u7FFB\u8A33\u30A4\u30F3\u30BF\u30FC\u30D5\u30A7\u30FC\u30B9\u30D7\u30ED\u30AD\u30B7\u3092\u30C1\u30A7\u30C3\u30AF\u3059\u308B",ko:"\uC790\uCCB4 \uAD6C\uCD95 \uBC88\uC5ED \uC778\uD130\uD398\uC774\uC2A4 \uD504\uB85D\uC2DC \uD655\uC778\uD558\uAE30"},setting_helper:{zh:"\u65B0\u65E7\u914D\u7F6E\u5E76\u4E0D\u517C\u5BB9\uFF0C\u5BFC\u51FA\u7684\u65E7\u7248\u914D\u7F6E\uFF0C\u52FF\u518D\u6B21\u5BFC\u5165\u3002",en:"The old and new configurations are not compatible. Do not import the exported old configuration again.",zh_TW:"\u65B0\u820A\u914D\u7F6E\u4E26\u4E0D\u76F8\u5BB9\uFF0C\u532F\u51FA\u7684\u820A\u7248\u914D\u7F6E\uFF0C\u52FF\u518D\u6B21\u532F\u5165\u3002",ja:"\u65B0\u65E7\u306E\u8A2D\u5B9A\u306B\u4E92\u63DB\u6027\u306F\u3042\u308A\u307E\u305B\u3093\u3002\u30A8\u30AF\u30B9\u30DD\u30FC\u30C8\u3057\u305F\u53E4\u3044\u8A2D\u5B9A\u3092\u518D\u5EA6\u30A4\u30F3\u30DD\u30FC\u30C8\u3057\u306A\u3044\u3067\u304F\u3060\u3055\u3044\u3002",ko:"\uC774\uC804 \uAD6C\uC131\uACFC \uC0C8 \uAD6C\uC131\uC740 \uD638\uD658\uB418\uC9C0 \uC54A\uC2B5\uB2C8\uB2E4. \uB0B4\uBCF4\uB0B8 \uC774\uC804 \uAD6C\uC131\uC744 \uB2E4\uC2DC \uAC00\uC838\uC624\uC9C0 \uB9C8\uC2ED\uC2DC\uC624."},style_none:{zh:"\u65E0",en:"None",zh_TW:"\u7121",ja:"\u306A\u3057",ko:"\uC5C6\uC74C"},under_line:{zh:"\u4E0B\u5212\u76F4\u7EBF",en:"Underline",zh_TW:"\u4E0B\u5283\u76F4\u7DDA",ja:"\u4E0B\u7DDA",ko:"\uBC11\uC904"},dot_line:{zh:"\u4E0B\u5212\u70B9\u72B6\u7EBF",en:"Dotted Underline",zh_TW:"\u4E0B\u5283\u9EDE\u72C0\u7DDA",ja:"\u70B9\u7DDA\u306E\u4E0B\u7DDA",ko:"\uC810\uC120 \uBC11\uC904"},dash_line:{zh:"\u4E0B\u5212\u865A\u7EBF",en:"Dashed Underline",zh_TW:"\u4E0B\u5283\u865B\u7DDA",ja:"\u7834\u7DDA\u306E\u4E0B\u7DDA",ko:"\uD30C\uC120 \uBC11\uC904"},dash_box:{zh:"\u865A\u7EBF\u6846",en:"Dashed Box",zh_TW:"\u865B\u7DDA\u6846",ja:"\u7834\u7DDA\u30DC\u30C3\u30AF\u30B9",ko:"\uD30C\uC120 \uC0C1\uC790"},dash_line_bold:{zh:"\u4E0B\u5212\u865A\u7EBF\u52A0\u7C97",en:"Dashed Underline Bold",zh_TW:"\u4E0B\u5283\u865B\u7DDA",ja:"\u7834\u7DDA\u306E\u4E0B\u7DDA (\u592A\u5B57)",ko:"\uAD75\uC740 \uD30C\uC120 \uBC11\uC904"},dash_box_bold:{zh:"\u865A\u7EBF\u6846\u52A0\u7C97",en:"Dashed Box Bold",zh_TW:"\u865B\u7DDA\u6846\u52A0\u7C97",ja:"\u7834\u7DDA\u30DC\u30C3\u30AF\u30B9 (\u592A\u5B57)",ko:"\uAD75\uC740 \uD30C\uC120 \uC0C1\uC790"},marker:{zh:"\u9A6C\u514B\u7B14",en:"Marker",zh_TW:"\u99AC\u514B\u7B46",ja:"\u30DE\u30FC\u30AB\u30FC",ko:"\uB9C8\uCEE4"},gradient_marker:{zh:"\u6E10\u53D8\u9A6C\u514B\u7B14",en:"Gradient Marker",zh_TW:"\u6F38\u5C64\u99AC\u514B\u7B46",ja:"\u30B0\u30E9\u30C7\u30FC\u30B7\u30E7\u30F3\u30DE\u30FC\u30AB\u30FC",ko:"\uADF8\uB77C\uB370\uC774\uC158 \uB9C8\uCEE4"},wavy_line:{zh:"\u4E0B\u5212\u6CE2\u6D6A\u7EBF",en:"Wavy Underline",zh_TW:"\u4E0B\u5283\u6CE2\u6D6A\u7DDA",ja:"\u6CE2\u7DDA\u306E\u4E0B\u7DDA",ko:"\uBB3C\uACB0 \uBC11\uC904"},wavy_line_bold:{zh:"\u4E0B\u5212\u6CE2\u6D6A\u7EBF\u52A0\u7C97",en:"Wavy Underline Bold",zh_TW:"\u4E0B\u5283\u6CE2\u6D6A\u7DDA\u52A0\u7C97",ja:"\u6CE2\u7DDA\u306E\u4E0B\u7DDA (\u592A\u5B57)",ko:"\uAD75\uC740 \uBB3C\uACB0 \uBC11\uC904"},fuzzy:{zh:"\u6A21\u7CCA",en:"Fuzzy",zh_TW:"\u6A21\u7CCA",ja:"\u307C\u304B\u3057",ko:"\uD750\uB9BC"},highlight:{zh:"\u9AD8\u4EAE",en:"Highlight",zh_TW:"\u53CD\u767D\u6A19\u793A",ja:"\u30CF\u30A4\u30E9\u30A4\u30C8",ko:"\uD558\uC774\uB77C\uC774\uD2B8"},blockquote:{zh:"\u5F15\u7528",en:"Blockquote",zh_TW:"\u5F15\u7528",ja:"\u5F15\u7528",ko:"\uC778\uC6A9"},gradient:{zh:"\u6E10\u53D8",en:"Gradient",zh_TW:"\u6F38\u8B8A",ja:"\u30B0\u30E9\u30C7\u30FC\u30B7\u30E7\u30F3",ko:"\uADF8\uB77C\uB370\uC774\uC158"},blink:{zh:"\u95EA\u73B0",en:"Blink",zh_TW:"\u9583\u73FE",ja:"\u70B9\u6EC5",ko:"\uAE5C\uBC15\uC784"},glow:{zh:"\u53D1\u5149",en:"Glow",zh_TW:"\u767C\u5149",ja:"\u767A\u5149",ko:"\uBC1C\uAD11"},colorful:{zh:"\u591A\u5F69",en:"Colorful",zh_TW:"\u591A\u5F69",ja:"\u30AB\u30E9\u30D5\u30EB",ko:"\uB2E4\uCC44\uB86D\uAC8C"},setting:{zh:"\u8BBE\u7F6E",en:"Setting",zh_TW:"\u8A2D\u5B9A",ja:"\u8A2D\u5B9A",ko:"\uC124\uC815"},pattern:{zh:"\u5339\u914D\u7F51\u5740",en:"URL pattern",zh_TW:"\u5339\u914D\u7DB2\u5740",ja:"URL\u30D1\u30BF\u30FC\u30F3",ko:"URL \uD328\uD134"},pattern_helper:{zh:"1\u3001\u652F\u6301\u661F\u53F7(*)\u901A\u914D\u7B26\u30022\u3001\u591A\u4E2AURL\u7528\u6362\u884C\u6216\u82F1\u6587\u9017\u53F7\u201C,\u201D\u5206\u9694\u3002",en:"1. Supports the asterisk (*) wildcard character. 2. Separate multiple URLs with newlines or English commas \",\".",zh_TW:"1. \u652F\u63F4\u661F\u865F (*) \u842C\u7528\u5B57\u5143\u30022. \u591A\u500B URL \u8ACB\u4EE5\u63DB\u884C\u6216\u82F1\u6587\u9017\u865F\u300C,\u300D\u5206\u9694\u3002",ja:"1. \u30A2\u30B9\u30BF\u30EA\u30B9\u30AF (*) \u30EF\u30A4\u30EB\u30C9\u30AB\u30FC\u30C9\u3092\u30B5\u30DD\u30FC\u30C8\u3057\u307E\u3059\u3002 2. \u8907\u6570\u306EURL\u306F\u6539\u884C\u307E\u305F\u306F\u82F1\u8A9E\u306E\u30B3\u30F3\u30DE\u300C,\u300D\u3067\u533A\u5207\u308A\u307E\u3059\u3002",ko:"1. \uBCC4\uD45C(*) \uC640\uC77C\uB4DC\uCE74\uB4DC \uBB38\uC790\uB97C \uC9C0\uC6D0\uD569\uB2C8\uB2E4. 2. \uC5EC\uB7EC URL\uC740 \uC904\uBC14\uAFC8 \uB610\uB294 \uC601\uC5B4 \uC27C\uD45C \",\"\uB85C \uAD6C\uBD84\uD569\uB2C8\uB2E4."},selector_helper:{zh:"1\u3001\u9700\u8981\u7FFB\u8BD1\u7684\u76EE\u6807\u5143\u7D20\u30022\u3001\u5F00\u542F\u81EA\u52A8\u626B\u63CF\u9875\u9762\u540E\uFF0C\u672C\u8BBE\u7F6E\u65E0\u6548\u30023\u3001\u9075\u5FAACSS\u9009\u62E9\u5668\u8BED\u6CD5\u3002",en:"1. The target element to be translated. 2. This setting is invalid when automatic page scanning is enabled. 3. Follow the CSS selector syntax.",zh_TW:"1\u3001\u9700\u8981\u7FFB\u8B6F\u7684\u76EE\u6A19\u5143\u7D20\u3002 2.\u958B\u555F\u81EA\u52D5\u6383\u63CF\u9801\u9762\u5F8C\uFF0C\u672C\u8A2D\u5B9A\u7121\u6548\u3002 3.\u9075\u5FAACSS\u9078\u64C7\u5668\u8A9E\u6CD5\u3002",ja:"1. \u7FFB\u8A33\u5BFE\u8C61\u306E\u8981\u7D20\u3002 2. \u30DA\u30FC\u30B8\u306E\u81EA\u52D5\u30B9\u30AD\u30E3\u30F3\u3092\u6709\u52B9\u306B\u3059\u308B\u3068\u3001\u3053\u306E\u8A2D\u5B9A\u306F\u7121\u52B9\u306B\u306A\u308A\u307E\u3059\u3002 3. CSS\u30BB\u30EC\u30AF\u30BF\u69CB\u6587\u306B\u5F93\u3063\u3066\u304F\u3060\u3055\u3044\u3002",ko:"1. \uBC88\uC5ED\uD560 \uB300\uC0C1 \uC694\uC18C\uC785\uB2C8\uB2E4. 2. \uC790\uB3D9 \uD398\uC774\uC9C0 \uC2A4\uCE94\uC774 \uD65C\uC131\uD654\uB418\uBA74 \uC774 \uC124\uC815\uC740 \uBB34\uD6A8\uD654\uB429\uB2C8\uB2E4. 3. CSS \uC120\uD0DD\uC790 \uAD6C\uBB38\uC744 \uB530\uB985\uB2C8\uB2E4."},translate_switch:{zh:"\u5F00\u542F\u7FFB\u8BD1",en:"Translate Switch",zh_TW:"\u958B\u555F\u7FFB\u8B6F",ja:"\u7FFB\u8A33\u3092\u6709\u52B9\u306B\u3059\u308B",ko:"\uBC88\uC5ED \uCF1C\uAE30"},default_enabled:{zh:"\u9ED8\u8BA4\u5F00\u542F",en:"Enabled",zh_TW:"\u9810\u8A2D\u958B\u555F",ja:"\u30C7\u30D5\u30A9\u30EB\u30C8\u3067\u6709\u52B9",ko:"\uAE30\uBCF8\uC73C\uB85C \uC0AC\uC6A9"},default_disabled:{zh:"\u9ED8\u8BA4\u5173\u95ED",en:"Disabled",zh_TW:"\u9810\u8A2D\u95DC\u9589",ja:"\u30C7\u30D5\u30A9\u30EB\u30C8\u3067\u7121\u52B9",ko:"\uAE30\uBCF8\uC73C\uB85C \uC0AC\uC6A9 \uC548\uD568"},selector:{zh:"\u9009\u62E9\u5668",en:"Selector",zh_TW:"\u9078\u64C7\u5668",ja:"\u30BB\u30EC\u30AF\u30BF",ko:"\uC120\uD0DD\uC790"},target_selector:{zh:"\u76EE\u6807\u5143\u7D20\u9009\u62E9\u5668",en:"Target element selector",zh_TW:"\u76EE\u6A19\u5143\u7D20\u9078\u64C7\u5668",ja:"\u5BFE\u8C61\u8981\u7D20\u30BB\u30EC\u30AF\u30BF",ko:"\uB300\uC0C1 \uC694\uC18C \uC120\uD0DD\uC790"},keep_selector:{zh:"\u4FDD\u7559\u5143\u7D20\u9009\u62E9\u5668",en:"Keep unchanged selector",zh_TW:"\u4FDD\u7559\u5143\u7D20\u9078\u64C7\u5668",ja:"\u4FDD\u6301\u8981\u7D20\u30BB\u30EC\u30AF\u30BF",ko:"\uC720\uC9C0\uD560 \uC694\uC18C \uC120\uD0DD\uC790"},keep_selector_helper:{zh:"1\u3001\u76EE\u6807\u5143\u7D20\u4E0B\u9762\u9700\u8981\u539F\u6837\u4FDD\u7559\u7684\u5B50\u8282\u70B9\u30022\u3001\u9075\u5FAACSS\u9009\u62E9\u5668\u8BED\u6CD5\u3002",en:"1. The child nodes under the target element need to remain intact. 2. Follow the CSS selector syntax.",zh_TW:"1. \u76EE\u6A19\u5143\u7D20\u4E0B\u7684\u5B50\u7BC0\u9EDE\u9700\u8981\u4FDD\u6301\u539F\u6A23\u3002 2. \u9075\u5FAA CSS \u9078\u64C7\u5668\u8A9E\u6CD5\u3002",ja:"1. \u5BFE\u8C61\u8981\u7D20\u306E\u4E0B\u306B\u3042\u308B\u3001\u305D\u306E\u307E\u307E\u4FDD\u6301\u3059\u308B\u5FC5\u8981\u304C\u3042\u308B\u5B50\u30CE\u30FC\u30C9\u3002 2. CSS\u30BB\u30EC\u30AF\u30BF\u69CB\u6587\u306B\u5F93\u3063\u3066\u304F\u3060\u3055\u3044\u3002",ko:"1. \uB300\uC0C1 \uC694\uC18C \uC544\uB798\uC758 \uC790\uC2DD \uB178\uB4DC \uC911 \uADF8\uB300\uB85C \uC720\uC9C0\uD574\uC57C \uD558\uB294 \uB178\uB4DC. 2. CSS \uC120\uD0DD\uC790 \uAD6C\uBB38\uC744 \uB530\uB985\uB2C8\uB2E4."},root_selector:{zh:"\u6839\u8282\u70B9\u9009\u62E9\u5668",en:"Root node selector",zh_TW:"\u6839\u7BC0\u9EDE\u9078\u64C7\u5668",ja:"\u30EB\u30FC\u30C8\u30CE\u30FC\u30C9\u30BB\u30EC\u30AF\u30BF",ko:"\uB8E8\uD2B8 \uB178\uB4DC \uC120\uD0DD\uC790"},root_selector_helper:{zh:"1\u3001\u7528\u4E8E\u7F29\u5C0F\u9875\u9762\u7FFB\u8BD1\u8303\u56F4\u30022\u3001\u9075\u5FAACSS\u9009\u62E9\u5668\u8BED\u6CD5\u3002",en:"1. Used to narrow the translation scope of the page. 2. Follow the CSS selector syntax.",zh_TW:"1.\u7528\u65BC\u7E2E\u5C0F\u9801\u9762\u7FFB\u8B6F\u7BC4\u570D\u3002 2\u3001\u9075\u5FAACSS\u9078\u64C7\u5668\u8A9E\u6CD5\u3002",ja:"1. \u30DA\u30FC\u30B8\u306E\u7FFB\u8A33\u7BC4\u56F2\u3092\u7D5E\u308A\u8FBC\u3080\u305F\u3081\u306B\u4F7F\u7528\u3057\u307E\u3059\u3002 2. CSS\u30BB\u30EC\u30AF\u30BF\u69CB\u6587\u306B\u5F93\u3063\u3066\u304F\u3060\u3055\u3044\u3002",ko:"1. \uD398\uC774\uC9C0\uC758 \uBC88\uC5ED \uBC94\uC704\uB97C \uC881\uD788\uB294 \uB370 \uC0AC\uC6A9\uB429\uB2C8\uB2E4. 2. CSS \uC120\uD0DD\uC790 \uAD6C\uBB38\uC744 \uB530\uB985\uB2C8\uB2E4."},ignore_selector:{zh:"\u4E0D\u7FFB\u8BD1\u8282\u70B9\u9009\u62E9\u5668",en:"Ignore node selectors",zh_TW:"\u4E0D\u7FFB\u8B6F\u7BC0\u9EDE\u9078\u64C7\u5668",ja:"\u7FFB\u8A33\u3057\u306A\u3044\u30CE\u30FC\u30C9\u30BB\u30EC\u30AF\u30BF",ko:"\uBC88\uC5ED \uBB34\uC2DC \uB178\uB4DC \uC120\uD0DD\uC790"},ignore_selector_helper:{zh:"1\u3001\u9700\u8981\u5FFD\u7565\u7684\u8282\u70B9\u30022\u3001\u9075\u5FAACSS\u9009\u62E9\u5668\u8BED\u6CD5\u3002",en:"1. Nodes to be ignored. 2. Follow CSS selector syntax.",zh_TW:"1\u3001\u9700\u8981\u5FFD\u7565\u7684\u7BC0\u9EDE\u3002 2\u3001\u9075\u5FAACSS\u9078\u64C7\u5668\u8A9E\u6CD5\u3002",ja:"1. \u7121\u8996\u3059\u308B\u30CE\u30FC\u30C9\u3002 2. CSS\u30BB\u30EC\u30AF\u30BF\u69CB\u6587\u306B\u5F93\u3063\u3066\u304F\u3060\u3055\u3044\u3002",ko:"1. \uBB34\uC2DC\uD560 \uB178\uB4DC. 2. CSS \uC120\uD0DD\uC790 \uAD6C\uBB38\uC744 \uB530\uB985\uB2C8\uB2E4."},terms:{zh:"\u4E13\u4E1A\u672F\u8BED",en:"Terms",zh_TW:"\u5C08\u696D\u8853\u8A9E",ja:"\u5C02\u9580\u7528\u8A9E",ko:"\uC804\uBB38 \uC6A9\uC5B4"},terms_helper:{zh:"1\u3001\u652F\u6301\u6B63\u5219\u8868\u8FBE\u5F0F\u5339\u914D\uFF0C\u65E0\u9700\u659C\u6746\uFF0C\u4E0D\u652F\u6301\u4FEE\u9970\u7B26\u30022\u3001\u591A\u6761\u672F\u8BED\u7528\u6362\u884C\u6216\u5206\u53F7\u201C;\u201D\u9694\u5F00\u30023\u3001\u672F\u8BED\u548C\u8BD1\u6587\u7528\u82F1\u6587\u9017\u53F7\u201C,\u201D\u9694\u5F00\u30024\u3001\u6CA1\u6709\u8BD1\u6587\u89C6\u4E3A\u4E0D\u7FFB\u8BD1\u672F\u8BED\u3002",en:"1. Supports regular expression matching, no slash required, and no modifiers are supported. 2. Separate multiple terms with newlines or semicolons \";\". 3. Terms and translations are separated by English commas \",\". 4. If there is no translation, the term will be deemed not to be translated.",zh_TW:"1. \u652F\u63F4\u6B63\u5247\u8868\u9054\u5F0F\u6BD4\u5C0D\uFF0C\u7121\u9700\u659C\u7DDA\uFF0C\u4E14\u4E0D\u652F\u63F4\u4FEE\u98FE\u7B26\u30022. \u591A\u689D\u8853\u8A9E\u4EE5\u63DB\u884C\u6216\u5206\u865F\u300C;\u300D\u5206\u9694\u30023. \u8853\u8A9E\u8207\u8B6F\u6587\u4EE5\u82F1\u6587\u9017\u865F\u300C,\u300D\u5206\u9694\u30024. \u7121\u8B6F\u6587\u8005\u8996\u70BA\u4E0D\u7FFB\u8B6F\u8A72\u8853\u8A9E\u3002",ja:"1. \u6B63\u898F\u8868\u73FE\u30DE\u30C3\u30C1\u30F3\u30B0\u3092\u30B5\u30DD\u30FC\u30C8 (\u30B9\u30E9\u30C3\u30B7\u30E5\u4E0D\u8981\u3001\u4FEE\u98FE\u5B50\u975E\u5BFE\u5FDC)\u3002 2. \u8907\u6570\u306E\u7528\u8A9E\u306F\u6539\u884C\u307E\u305F\u306F\u30BB\u30DF\u30B3\u30ED\u30F3\u300C;\u300D\u3067\u533A\u5207\u308A\u307E\u3059\u3002 3. \u7528\u8A9E\u3068\u7FFB\u8A33\u306F\u82F1\u8A9E\u306E\u30B3\u30F3\u30DE\u300C,\u300D\u3067\u533A\u5207\u308A\u307E\u3059\u3002 4. \u7FFB\u8A33\u304C\u306A\u3044\u5834\u5408\u306F\u3001\u305D\u306E\u7528\u8A9E\u3092\u7FFB\u8A33\u3057\u306A\u3044\u3082\u306E\u3068\u307F\u306A\u3057\u307E\u3059\u3002",ko:"1. \uC815\uADDC\uC2DD \uC77C\uCE58\uB97C \uC9C0\uC6D0\uD558\uBA70, \uC2AC\uB798\uC2DC\uAC00 \uD544\uC694 \uC5C6\uACE0 \uC218\uC815\uC790\uB294 \uC9C0\uC6D0\uB418\uC9C0 \uC54A\uC2B5\uB2C8\uB2E4. 2. \uC5EC\uB7EC \uC6A9\uC5B4\uB294 \uC904\uBC14\uAFC8 \uB610\uB294 \uC138\uBBF8\uCF5C\uB860 \";\"\uC73C\uB85C \uAD6C\uBD84\uD569\uB2C8\uB2E4. 3. \uC6A9\uC5B4\uC640 \uBC88\uC5ED\uC740 \uC601\uC5B4 \uC27C\uD45C \",\"\uB85C \uAD6C\uBD84\uD569\uB2C8\uB2E4. 4. \uBC88\uC5ED\uC774 \uC5C6\uB294 \uACBD\uC6B0 \uD574\uB2F9 \uC6A9\uC5B4\uB97C \uBC88\uC5ED\uD558\uC9C0 \uC54A\uB294 \uAC83\uC73C\uB85C \uAC04\uC8FC\uD569\uB2C8\uB2E4."},ai_terms:{zh:"AI\u4E13\u4E1A\u672F\u8BED",en:"AI Terms",zh_TW:"AI\u5C08\u696D\u8853\u8A9E",ja:"AI\u5C02\u9580\u7528\u8A9E",ko:"AI \uC804\uBB38 \uC6A9\uC5B4"},ai_terms_helper:{zh:"1\u3001AI\u667A\u80FD\u66FF\u6362\uFF0C\u4E0D\u652F\u6301\u6B63\u5219\u8868\u8FBE\u5F0F\u30022\u3001\u591A\u6761\u672F\u8BED\u7528\u6362\u884C\u6216\u5206\u53F7\u201C;\u201D\u9694\u5F00\u30023\u3001\u672F\u8BED\u548C\u8BD1\u6587\u7528\u82F1\u6587\u9017\u53F7\u201C,\u201D\u9694\u5F00\u30024\u3001\u6CA1\u6709\u8BD1\u6587\u89C6\u4E3A\u4E0D\u7FFB\u8BD1\u672F\u8BED\u3002",en:"1. AI intelligent replacement does not support regular expressions.2. Separate multiple terms with newlines or semicolons \";\". 3. Terms and translations are separated by English commas \",\". 4. If there is no translation, the term will be deemed not to be translated.",zh_TW:"1.AI\u667A\u80FD\u66FF\u63DB\uFF0C\u4E0D\u652F\u63F4\u6B63\u898F\u8868\u793A\u5F0F\u30022. \u591A\u689D\u8853\u8A9E\u4EE5\u63DB\u884C\u6216\u5206\u865F\u300C;\u300D\u5206\u9694\u30023. \u8853\u8A9E\u8207\u8B6F\u6587\u4EE5\u82F1\u6587\u9017\u865F\u300C,\u300D\u5206\u9694\u30024. \u7121\u8B6F\u6587\u8005\u8996\u70BA\u4E0D\u7FFB\u8B6F\u8A72\u8853\u8A9E\u3002",ja:"1. AI\u306B\u3088\u308B\u30A4\u30F3\u30C6\u30EA\u30B8\u30A7\u30F3\u30C8\u306A\u7F6E\u63DB (\u6B63\u898F\u8868\u73FE\u975E\u5BFE\u5FDC)\u3002 2. \u8907\u6570\u306E\u7528\u8A9E\u306F\u6539\u884C\u307E\u305F\u306F\u30BB\u30DF\u30B3\u30ED\u30F3\u300C;\u300D\u3067\u533A\u5207\u308A\u307E\u3059\u3002 3. \u7528\u8A9E\u3068\u7FFB\u8A33\u306F\u82F1\u8A9E\u306E\u30B3\u30F3\u30DE\u300C,\u300D\u3067\u533A\u5207\u308A\u307E\u3059\u3002 4. \u7FFB\u8A33\u304C\u306A\u3044\u5834\u5408\u306F\u3001\u305D\u306E\u7528\u8A9E\u3092\u7FFB\u8A33\u3057\u306A\u3044\u3082\u306E\u3068\u307F\u306A\u3057\u307E\u3059\u3002",ko:"1. AI \uC9C0\uB2A5\uD615 \uB300\uCCB4, \uC815\uADDC\uC2DD\uC744 \uC9C0\uC6D0\uD558\uC9C0 \uC54A\uC2B5\uB2C8\uB2E4. 2. \uC5EC\uB7EC \uC6A9\uC5B4\uB294 \uC904\uBC14\uAFC8 \uB610\uB294 \uC138\uBBF8\uCF5C\uB860 \";\"\uC73C\uB85C \uAD6C\uBD84\uD569\uB2C8\uB2E4. 3. \uC6A9\uC5B4\uC640 \uBC88\uC5ED\uC740 \uC601\uC5B4 \uC27C\uD45C \",\"\uB85C \uAD6C\uBD84\uD569\uB2C8\uB2E4. 4. \uBC88\uC5ED\uC774 \uC5C6\uB294 \uACBD\uC6B0 \uD574\uB2F9 \uC6A9\uC5B4\uB97C \uBC88\uC5ED\uD558\uC9C0 \uC54A\uB294 \uAC83\uC73C\uB85C \uAC04\uC8FC\uD569\uB2C8\uB2E4."},text_ext_style:{zh:"\u8BD1\u6587\u9644\u52A0\u6837\u5F0F",en:"Translation additional styles",zh_TW:"\u8B6F\u6587\u9644\u52A0\u6A23\u5F0F",ja:"\u7FFB\u8A33\u306E\u8FFD\u52A0\u30B9\u30BF\u30A4\u30EB",ko:"\uBC88\uC5ED \uCD94\uAC00 \uC2A4\uD0C0\uC77C"},selector_style:{zh:"\u9009\u62E9\u5668\u8282\u70B9\u6837\u5F0F",en:"Selector Style",zh_TW:"\u9078\u64C7\u5668\u7BC0\u9EDE\u6A23\u5F0F",ja:"\u30BB\u30EC\u30AF\u30BF\u30CE\u30FC\u30C9\u30B9\u30BF\u30A4\u30EB",ko:"\uC120\uD0DD\uC790 \uB178\uB4DC \uC2A4\uD0C0\uC77C"},terms_style:{zh:"\u4E13\u4E1A\u672F\u8BED\u6837\u5F0F",en:"Terms Style",zh_TW:"\u5C08\u696D\u8853\u8A9E\u6A23\u5F0F",ja:"\u5C02\u9580\u7528\u8A9E\u30B9\u30BF\u30A4\u30EB",ko:"\uC804\uBB38 \uC6A9\uC5B4 \uC2A4\uD0C0\uC77C"},highlight_style:{zh:"\u8BCD\u6C47\u9AD8\u4EAE\u6837\u5F0F",en:"Fav Words highlight style",zh_TW:"\u8A5E\u5F59\u9AD8\u4EAE\u6A23\u5F0F",ja:"\u5358\u8A9E\u30CF\u30A4\u30E9\u30A4\u30C8\u30B9\u30BF\u30A4\u30EB",ko:"\uB2E8\uC5B4 \uD558\uC774\uB77C\uC774\uD2B8 \uC2A4\uD0C0\uC77C"},selector_style_helper:{zh:"\u5F00\u542F\u7FFB\u8BD1\u65F6\u6CE8\u5165\u3002",en:"It is injected when translation is turned on.",zh_TW:"\u5728\u958B\u555F\u7FFB\u8B6F\u6642\u6CE8\u5165\u3002",ja:"\u7FFB\u8A33\u304C\u6709\u52B9\u306A\u3068\u304D\u306B\u6CE8\u5165\u3055\u308C\u307E\u3059\u3002",ko:"\uBC88\uC5ED\uC774 \uCF1C\uC838 \uC788\uC744 \uB54C \uC8FC\uC785\uB429\uB2C8\uB2E4."},selector_parent_style:{zh:"\u9009\u62E9\u5668\u7236\u8282\u70B9\u6837\u5F0F",en:"Parent Selector Style",zh_TW:"\u9078\u64C7\u5668\u7236\u7BC0\u9EDE\u6A23\u5F0F",ja:"\u89AA\u30BB\u30EC\u30AF\u30BF\u30B9\u30BF\u30A4\u30EB",ko:"\uBD80\uBAA8 \uC120\uD0DD\uC790 \uC2A4\uD0C0\uC77C"},selector_grand_style:{zh:"\u9009\u62E9\u5668\u7956\u8282\u70B9\u6837\u5F0F",en:"Grand Selector Style",zh_TW:"\u9078\u64C7\u5668\u7956\u7BC0\u9EDE\u6A23\u5F0F",ja:"\u7956\u5148\u30BB\u30EC\u30AF\u30BF\u30B9\u30BF\u30A4\u30EB",ko:"\uC0C1\uC704 \uC120\uD0DD\uC790 \uC2A4\uD0C0\uC77C"},inject_js:{zh:"\u6CE8\u5165JS",en:"Inject JS",zh_TW:"\u6CE8\u5165 JS",ja:"JS\u3092\u6CE8\u5165",ko:"JS \uC8FC\uC785"},inject_js_helper:{zh:"\u9884\u52A0\u8F7D\u65F6\u6CE8\u5165\uFF0C\u4E00\u4E2A\u9875\u9762\u4EC5\u8FD0\u884C\u4E00\u6B21\u3002\u5185\u7F6E\u5168\u5C40\u5BF9\u8C61 KT: {\n apiTranslate,\n apiDectect,\n apiSetting,\n apisMap,\n toLang,\n docInfo,\n glossary,\n }",en:"Injected during preload, runs only once per page. Built-in global object KT: {\n apiTranslate,\n apiDectect,\n apiSetting,\n apisMap,\n toLang,\n docInfo,\n glossary,\n }",zh_TW:"\u9810\u5148\u8F09\u5165\u6642\u6CE8\u5165\uFF0C\u4E00\u500B\u9801\u9762\u50C5\u904B\u884C\u4E00\u6B21\u3002\u5167\u5EFA\u5168\u57DF\u7269\u4EF6 KT: {\n apiTranslate,\n apiDectect,\n apiSetting,\n apisMap,\n toLang,\n docInfo,\n glossary,\n }",ja:"\u30D7\u30EA\u30ED\u30FC\u30C9\u6642\u306B\u6CE8\u5165\u3055\u308C\u3001\u30DA\u30FC\u30B8\u3054\u3068\u306B1\u56DE\u3060\u3051\u5B9F\u884C\u3055\u308C\u307E\u3059\u3002\u7D44\u307F\u8FBC\u307F\u30B0\u30ED\u30FC\u30D0\u30EB\u30AA\u30D6\u30B8\u30A7\u30AF\u30C8 KT: {\n apiTranslate,\n apiDectect,\n apiSetting,\n apisMap,\n toLang,\n docInfo,\n glossary,\n }",ko:"\uBBF8\uB9AC \uB85C\uB4DC \uC2DC \uC8FC\uC785\uB418\uBA70 \uD398\uC774\uC9C0\uB2F9 \uD55C \uBC88\uB9CC \uC2E4\uD589\uB429\uB2C8\uB2E4. \uB0B4\uC7A5 \uC804\uC5ED \uAC1D\uCCB4 KT: {\n apiTranslate,\n apiDectect,\n apiSetting,\n apisMap,\n toLang,\n docInfo,\n glossary,\n }"},inject_css:{zh:"\u6CE8\u5165CSS",en:"Inject CSS",zh_TW:"\u6CE8\u5165 CSS",ja:"CSS\u3092\u6CE8\u5165",ko:"CSS \uC8FC\uC785"},inject_css_helper:{zh:"\u9884\u52A0\u8F7D\u65F6\u6CE8\u5165\uFF0C\u4E00\u4E2A\u9875\u9762\u4EC5\u8FD0\u884C\u4E00\u6B21\u3002",en:"Injected during preload, runs only once per page.",zh_TW:"\u9810\u5148\u8F09\u5165\u6642\u6CE8\u5165\uFF0C\u4E00\u500B\u9801\u9762\u50C5\u904B\u884C\u4E00\u6B21\u3002",ja:"\u30D7\u30EA\u30ED\u30FC\u30C9\u6642\u306B\u6CE8\u5165\u3055\u308C\u3001\u30DA\u30FC\u30B8\u3054\u3068\u306B1\u56DE\u3060\u3051\u5B9F\u884C\u3055\u308C\u307E\u3059\u3002",ko:"\uBBF8\uB9AC \uB85C\uB4DC \uC2DC \uC8FC\uC785\uB418\uBA70 \uD398\uC774\uC9C0\uB2F9 \uD55C \uBC88\uB9CC \uC2E4\uD589\uB429\uB2C8\uB2E4."},fixer_function:{zh:"\u4FEE\u590D\u51FD\u6570",en:"Fixer Function",zh_TW:"\u4FEE\u5FA9\u51FD\u5F0F",ja:"\u4FEE\u6B63\u95A2\u6570",ko:"\uC218\uC815 \uD568\uC218"},fixer_function_helper:{zh:"1\u3001br\u662F\u5C06
\u6362\u884C\u66FF\u6362\u6210

\u30022\u3001bn\u662F\u5C06\\n\u6362\u884C\u66FF\u6362\u6210

\u30023\u3001brToDiv\u548CbnToDiv\u662F\u66FF\u6362\u6210

\u3002",en:"1. br replaces
line breaks with

. 2. bn replaces \\n newline with

. 3. brToDiv and bnToDiv are replaced with

.",zh_TW:"1. br \u6703\u5C07
\u63DB\u884C\u66FF\u63DB\u70BA

\u30022. bn \u6703\u5C07 \\n \u63DB\u884C\u66FF\u63DB\u70BA

\u30023. brToDiv \u8207 bnToDiv \u6703\u66FF\u63DB\u70BA

\u3002",ja:"1. br \u306F
\u6539\u884C\u3092

\u306B\u7F6E\u304D\u63DB\u3048\u307E\u3059\u3002 2. bn \u306F \\n \u6539\u884C\u3092

\u306B\u7F6E\u304D\u63DB\u3048\u307E\u3059\u3002 3. brToDiv \u3068 bnToDiv \u306F

\u306B\u7F6E\u304D\u63DB\u3048\u307E\u3059\u3002",ko:"1. br\uC740
\uC904\uBC14\uAFC8\uC744

\uB85C \uB300\uCCB4\uD569\uB2C8\uB2E4. 2. bn\uC740 \\n \uC904\uBC14\uAFC8\uC744

\uB85C \uB300\uCCB4\uD569\uB2C8\uB2E4. 3. brToDiv \uBC0F bnToDiv\uB294

\uB85C \uB300\uCCB4\uB429\uB2C8\uB2E4."},import:{zh:"\u5BFC\u5165",en:"Import",zh_TW:"\u532F\u5165",ja:"\u30A4\u30F3\u30DD\u30FC\u30C8",ko:"\uAC00\uC838\uC624\uAE30"},export:{zh:"\u5BFC\u51FA",en:"Export",zh_TW:"\u532F\u51FA",ja:"\u30A8\u30AF\u30B9\u30DD\u30FC\u30C8",ko:"\uB0B4\uBCF4\uB0B4\uAE30"},export_translation:{zh:"\u5BFC\u51FA\u91CA\u4E49",en:"Export Translation",zh_TW:"\u532F\u51FA\u91CB\u7FA9",ja:"\u8A33\u6587\u306E\u30A8\u30AF\u30B9\u30DD\u30FC\u30C8",ko:"\uBC88\uC5ED \uB0B4\uBCF4\uB0B4\uAE30"},error_cant_be_blank:{zh:"\u4E0D\u80FD\u4E3A\u7A7A",en:"Can not be blank",zh_TW:"\u4E0D\u53EF\u70BA\u7A7A",ja:"\u7A7A\u767D\u306B\u3059\u308B\u3053\u3068\u306F\u3067\u304D\u307E\u305B\u3093",ko:"\uBE44\uC6CC\uB458 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4"},error_duplicate_values:{zh:"\u5B58\u5728\u91CD\u590D\u7684\u503C",en:"There are duplicate values",zh_TW:"\u5B58\u5728\u91CD\u8907\u7684\u503C",ja:"\u91CD\u8907\u3059\u308B\u5024\u304C\u5B58\u5728\u3057\u307E\u3059",ko:"\uC911\uBCF5\uB41C \uAC12\uC774 \uC788\uC2B5\uB2C8\uB2E4"},error_wrong_file_type:{zh:"\u9519\u8BEF\u7684\u6587\u4EF6\u7C7B\u578B",en:"Wrong file type",zh_TW:"\u6A94\u6848\u985E\u578B\u932F\u8AA4",ja:"\u4E0D\u6B63\u306A\u30D5\u30A1\u30A4\u30EB\u30BF\u30A4\u30D7\u3067\u3059",ko:"\uC798\uBABB\uB41C \uD30C\uC77C \uD615\uC2DD\uC785\uB2C8\uB2E4"},error_fetch_url:{zh:"\u8BF7\u68C0\u67E5url\u5730\u5740\u662F\u5426\u6B63\u786E\u6216\u7A0D\u540E\u518D\u8BD5\u3002",en:"Please check if the url address is correct or try again later.",zh_TW:"\u8ACB\u6AA2\u67E5 URL \u662F\u5426\u6B63\u78BA\u6216\u7A0D\u5F8C\u518D\u8A66\u3002",ja:"URL\u30A2\u30C9\u30EC\u30B9\u304C\u6B63\u3057\u3044\u304B\u78BA\u8A8D\u3059\u308B\u304B\u3001\u5F8C\u3067\u3082\u3046\u4E00\u5EA6\u304A\u8A66\u3057\u304F\u3060\u3055\u3044\u3002",ko:"URL \uC8FC\uC18C\uAC00 \uC62C\uBC14\uB978\uC9C0 \uD655\uC778\uD558\uAC70\uB098 \uB098\uC911\uC5D0 \uB2E4\uC2DC \uC2DC\uB3C4\uD558\uC2ED\uC2DC\uC624."},deepl_api:{zh:"DeepL \u63A5\u53E3",en:"DeepL API",zh_TW:"DeepL \u4ECB\u9762",ja:"DeepL API",ko:"DeepL API"},deepl_key:{zh:"DeepL \u5BC6\u94A5",en:"DeepL Key",zh_TW:"DeepL \u91D1\u9470",ja:"DeepL \u30AD\u30FC",ko:"DeepL \uD0A4"},openai_api:{zh:"OpenAI \u63A5\u53E3",en:"OpenAI API",zh_TW:"OpenAI \u4ECB\u9762",ja:"OpenAI API",ko:"OpenAI API"},openai_key:{zh:"OpenAI \u5BC6\u94A5",en:"OpenAI Key",zh_TW:"OpenAI \u91D1\u9470",ja:"OpenAI \u30AD\u30FC",ko:"OpenAI \uD0A4"},openai_model:{zh:"OpenAI \u6A21\u578B",en:"OpenAI Model",zh_TW:"OpenAI \u6A21\u578B",ja:"OpenAI \u30E2\u30C7\u30EB",ko:"OpenAI \uBAA8\uB378"},openai_prompt:{zh:"OpenAI \u63D0\u793A\u8BCD",en:"OpenAI Prompt",zh_TW:"OpenAI \u63D0\u793A\u8A5E",ja:"OpenAI \u30D7\u30ED\u30F3\u30D7\u30C8",ko:"OpenAI \uD504\uB86C\uD504\uD2B8"},if_clear_cache:{zh:"\u662F\u5426\u6E05\u9664\u7F13\u5B58\uFF08\u9ED8\u8BA4\u7F13\u5B587\u5929\uFF09",en:"Whether clear cache (Default cache is 7 days)",zh_TW:"\u662F\u5426\u6E05\u9664\u5FEB\u53D6\uFF08\u9810\u8A2D\u5FEB\u53D67\u5929\uFF09",ja:"\u30AD\u30E3\u30C3\u30B7\u30E5\u3092\u30AF\u30EA\u30A2\u3057\u307E\u3059\u304B\uFF08\u30C7\u30D5\u30A9\u30EB\u30C8\u306E\u30AD\u30E3\u30C3\u30B7\u30E5\u671F\u9593\u306F7\u65E5\u9593\u3067\u3059\uFF09",ko:"\uCE90\uC2DC\uB97C \uC9C0\uC6B0\uC2DC\uACA0\uC2B5\uB2C8\uAE4C (\uAE30\uBCF8 \uCE90\uC2DC 7\uC77C)"},clear_cache_never:{zh:"\u4E0D\u6E05\u9664\u7F13\u5B58",en:"Never clear cache",zh_TW:"\u4E0D\u6E05\u9664\u5FEB\u53D6",ja:"\u30AD\u30E3\u30C3\u30B7\u30E5\u3092\u30AF\u30EA\u30A2\u3057\u306A\u3044",ko:"\uCE90\uC2DC \uC9C0\uC6B0\uC9C0 \uC54A\uC74C"},clear_cache_restart:{zh:"\u91CD\u542F\u6D4F\u89C8\u5668\u65F6\u6E05\u9664\u7F13\u5B58",en:"Clear cache when restarting browser",zh_TW:"\u91CD\u65B0\u555F\u52D5\u700F\u89BD\u5668\u6642\u6E05\u9664\u5FEB\u53D6",ja:"\u30D6\u30E9\u30A6\u30B6\u518D\u8D77\u52D5\u6642\u306B\u30AD\u30E3\u30C3\u30B7\u30E5\u3092\u30AF\u30EA\u30A2",ko:"\uBE0C\uB77C\uC6B0\uC800 \uC7AC\uC2DC\uC791 \uC2DC \uCE90\uC2DC \uC9C0\uC6B0\uAE30"},data_sync_type:{zh:"\u6570\u636E\u540C\u6B65\u65B9\u5F0F",en:"Data Sync Type",zh_TW:"\u8CC7\u6599\u540C\u6B65\u65B9\u5F0F",ja:"\u30C7\u30FC\u30BF\u540C\u671F\u30BF\u30A4\u30D7",ko:"\uB370\uC774\uD130 \uB3D9\uAE30\uD654 \uC720\uD615"},data_sync_url:{zh:"\u6570\u636E\u540C\u6B65\u63A5\u53E3",en:"Data Sync API",zh_TW:"\u8CC7\u6599\u540C\u6B65\u4ECB\u9762",ja:"\u30C7\u30FC\u30BF\u540C\u671FAPI",ko:"\uB370\uC774\uD130 \uB3D9\uAE30\uD654 API"},data_sync_user:{zh:"\u6570\u636E\u540C\u6B65\u8D26\u6237",en:"Data Sync User",zh_TW:"\u8CC7\u6599\u540C\u6B65\u5E33\u865F",ja:"\u30C7\u30FC\u30BF\u540C\u671F\u30A2\u30AB\u30A6\u30F3\u30C8",ko:"\uB370\uC774\uD130 \uB3D9\uAE30\uD654 \uACC4\uC815"},data_sync_key:{zh:"\u6570\u636E\u540C\u6B65\u5BC6\u94A5",en:"Data Sync Key",zh_TW:"\u8CC7\u6599\u540C\u6B65\u91D1\u9470",ja:"\u30C7\u30FC\u30BF\u540C\u671F\u30AD\u30FC",ko:"\uB370\uC774\uD130 \uB3D9\uAE30\uD654 \uD0A4"},sync_now:{zh:"\u7ACB\u5373\u540C\u6B65",en:"Sync Now",zh_TW:"\u7ACB\u5373\u540C\u6B65",ja:"\u4ECA\u3059\u3050\u540C\u671F",ko:"\uC9C0\uAE08 \uB3D9\uAE30\uD654"},sync_success:{zh:"\u540C\u6B65\u6210\u529F\uFF01",en:"Sync Success",zh_TW:"\u540C\u6B65\u6210\u529F\uFF01",ja:"\u540C\u671F\u6210\u529F\uFF01",ko:"\uB3D9\uAE30\uD654 \uC131\uACF5!"},sync_failed:{zh:"\u540C\u6B65\u5931\u8D25\uFF01",en:"Sync Error",zh_TW:"\u540C\u6B65\u5931\u6557\uFF01",ja:"\u540C\u671F\u5931\u6557\uFF01",ko:"\uB3D9\uAE30\uD654 \uC2E4\uD328!"},error_got_some_wrong:{zh:"\u62B1\u6B49\uFF0C\u51FA\u9519\u4E86\uFF01",en:"Sorry, something went wrong!",zh_TW:"\u62B1\u6B49\uFF0C\u767C\u751F\u932F\u8AA4\uFF01",ja:"\u7533\u3057\u8A33\u3042\u308A\u307E\u305B\u3093\u3001\u30A8\u30E9\u30FC\u304C\u767A\u751F\u3057\u307E\u3057\u305F\uFF01",ko:"\uC8C4\uC1A1\uD569\uB2C8\uB2E4, \uC624\uB958\uAC00 \uBC1C\uC0DD\uD588\uC2B5\uB2C8\uB2E4!"},error_sync_setting:{zh:"\u60A8\u7684\u540C\u6B65\u7C7B\u578B\u5FC5\u987B\u4E3A\u201CKISS-Worker\u201D\uFF0C\u4E14\u9700\u586B\u5199\u5B8C\u6574",en:"Your sync type must be \"KISS-Worker\" and must be filled in completely",zh_TW:"\u60A8\u7684\u540C\u6B65\u578B\u614B\u5FC5\u9808\u70BA\u300CKISS-Worker\u300D\uFF0C\u4E14\u9700\u586B\u5BEB\u5B8C\u6574\u3002",ja:"\u540C\u671F\u30BF\u30A4\u30D7\u306F\u300CKISS-Worker\u300D\u3067\u3042\u308B\u5FC5\u8981\u304C\u3042\u308A\u3001\u3059\u3079\u3066\u5165\u529B\u3059\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059\u3002",ko:"\uB3D9\uAE30\uD654 \uC720\uD615\uC740 \"KISS-Worker\"\uC5EC\uC57C \uD558\uBA70, \uBAA8\uB4E0 \uD56D\uBAA9\uC744 \uBE60\uC9D0\uC5C6\uC774 \uC785\uB825\uD574\uC57C \uD569\uB2C8\uB2E4."},click_test:{zh:"\u70B9\u51FB\u6D4B\u8BD5",en:"Click Test",zh_TW:"\u9EDE\u64CA\u6E2C\u8A66",ja:"\u30AF\u30EA\u30C3\u30AF\u3057\u3066\u30C6\u30B9\u30C8",ko:"\uD074\uB9AD \uD14C\uC2A4\uD2B8"},test_success:{zh:"\u6D4B\u8BD5\u6210\u529F",en:"Test success",zh_TW:"\u6E2C\u8A66\u6210\u529F",ja:"\u30C6\u30B9\u30C8\u6210\u529F",ko:"\uD14C\uC2A4\uD2B8 \uC131\uACF5"},test_failed:{zh:"\u6D4B\u8BD5\u5931\u8D25",en:"Test failed",zh_TW:"\u6E2C\u8A66\u5931\u6557",ja:"\u30C6\u30B9\u30C8\u5931\u6557",ko:"\uD14C\uC2A4\uD2B8 \uC2E4\uD328"},clear_all_cache_now:{zh:"\u7ACB\u5373\u6E05\u9664\u5168\u90E8\u7F13\u5B58",en:"Clear all cache now",zh_TW:"\u7ACB\u5373\u6E05\u9664\u5168\u90E8\u5FEB\u53D6",ja:"\u3059\u3079\u3066\u306E\u30AD\u30E3\u30C3\u30B7\u30E5\u3092\u4ECA\u3059\u3050\u30AF\u30EA\u30A2",ko:"\uBAA8\uB4E0 \uCE90\uC2DC \uC9C0\uAE08 \uC9C0\uC6B0\uAE30"},clear_cache:{zh:"\u6E05\u9664\u7F13\u5B58",en:"Clear Cache",zh_TW:"\u6E05\u9664\u5FEB\u53D6",ja:"\u30AD\u30E3\u30C3\u30B7\u30E5\u3092\u30AF\u30EA\u30A2",ko:"\uCE90\uC2DC \uC9C0\uC6B0\uAE30"},clear_success:{zh:"\u6E05\u9664\u6210\u529F",en:"Clear success",zh_TW:"\u6E05\u9664\u6210\u529F",ja:"\u30AF\u30EA\u30A2\u6210\u529F",ko:"\uC9C0\uC6B0\uAE30 \uC131\uACF5"},clear_failed:{zh:"\u6E05\u9664\u5931\u8D25",en:"Clear failed",zh_TW:"\u6E05\u9664\u5931\u6557",ja:"\u30AF\u30EA\u30A2\u5931\u6557",ko:"\uC9C0\uC6B0\uAE30 \uC2E4\uD328"},share:{zh:"\u5206\u4EAB",en:"Share",zh_TW:"\u5206\u4EAB",ja:"\u5171\u6709",ko:"\uACF5\uC720"},clear_all:{zh:"\u6E05\u7A7A",en:"Clear All",zh_TW:"\u6E05\u7A7A",ja:"\u3059\u3079\u3066\u30AF\u30EA\u30A2",ko:"\uBAA8\uB450 \uC9C0\uC6B0\uAE30"},help:{zh:"\u6C42\u52A9",en:"Help",zh_TW:"\u6C42\u52A9",ja:"\u30D8\u30EB\u30D7",ko:"\uB3C4\uC6C0\uB9D0"},restore_default:{zh:"\u6062\u590D\u9ED8\u8BA4",en:"Restore Default",zh_TW:"\u6062\u5FA9\u9810\u8A2D",ja:"\u30C7\u30D5\u30A9\u30EB\u30C8\u306B\u623B\u3059",ko:"\uAE30\uBCF8\uAC12 \uBCF5\uC6D0"},shortcuts_setting:{zh:"\u5FEB\u6377\u952E\u8BBE\u7F6E",en:"Shortcuts Setting",zh_TW:"\u5FEB\u6377\u9375\u8A2D\u5B9A",ja:"\u30B7\u30E7\u30FC\u30C8\u30AB\u30C3\u30C8\u8A2D\u5B9A",ko:"\uB2E8\uCD95\uD0A4 \uC124\uC815"},toggle_translate_shortcut:{zh:"\"\u5F00\u542F\u7FFB\u8BD1\"\u5FEB\u6377\u952E",en:"\"Toggle Translate\" Shortcut",zh_TW:"\u300C\u958B\u555F\u7FFB\u8B6F\u300D\u5FEB\u6377\u9375",ja:"\u300C\u7FFB\u8A33\u5207\u308A\u66FF\u3048\u300D\u30B7\u30E7\u30FC\u30C8\u30AB\u30C3\u30C8",ko:"\"\uBC88\uC5ED \uCF1C\uAE30\" \uB2E8\uCD95\uD0A4"},toggle_style_shortcut:{zh:"\"\u5207\u6362\u6837\u5F0F\"\u5FEB\u6377\u952E",en:"\"Toggle Style\" Shortcut",zh_TW:"\u300C\u5207\u63DB\u6A23\u5F0F\u300D\u5FEB\u6377\u9375",ja:"\u300C\u30B9\u30BF\u30A4\u30EB\u5207\u308A\u66FF\u3048\u300D\u30B7\u30E7\u30FC\u30C8\u30AB\u30C3\u30C8",ko:"\"\uC2A4\uD0C0\uC77C \uC804\uD658\" \uB2E8\uCD95\uD0A4"},toggle_popup_shortcut:{zh:"\"\u6253\u5F00\u5F39\u7A97\"\u5FEB\u6377\u952E",en:"\"Open Popup\" Shortcut",zh_TW:"\u300C\u958B\u555F\u5F48\u7A97\u300D\u5FEB\u6377\u9375",ja:"\u300C\u30DD\u30C3\u30D7\u30A2\u30C3\u30D7\u3092\u958B\u304F\u300D\u30B7\u30E7\u30FC\u30C8\u30AB\u30C3\u30C8",ko:"\"\uD31D\uC5C5 \uC5F4\uAE30\" \uB2E8\uCD95\uD0A4"},open_setting_shortcut:{zh:"\"\u6253\u5F00\u8BBE\u7F6E\"\u5FEB\u6377\u952E",en:"\"Open Setting\" Shortcut",zh_TW:"\u300C\u958B\u555F\u8A2D\u5B9A\u300D\u5FEB\u6377\u9375",ja:"\u300C\u8A2D\u5B9A\u3092\u958B\u304F\u300D\u30B7\u30E7\u30FC\u30C8\u30AB\u30C3\u30C8",ko:"\"\uC124\uC815 \uC5F4\uAE30\" \uB2E8\uCD95\uD0A4"},hide_fab_button:{zh:"\u9690\u85CF\u60AC\u6D6E\u6309\u94AE",en:"Hide Fab Button",zh_TW:"\u96B1\u85CF\u61F8\u6D6E\u6309\u9215",ja:"\u30D5\u30ED\u30FC\u30C6\u30A3\u30F3\u30B0\u30DC\u30BF\u30F3\u3092\u96A0\u3059",ko:"\uD50C\uB85C\uD305 \uBC84\uD2BC \uC228\uAE30\uAE30"},fab_click_action:{zh:"\u5355\u51FB\u60AC\u6D6E\u6309\u94AE\u52A8\u4F5C",en:"Single Click Fab Action",zh_TW:"\u55AE\u64CA\u61F8\u6D6E\u6309\u94AE\u52D5\u4F5C",ja:"\u30D5\u30ED\u30FC\u30C6\u30A3\u30F3\u30B0\u30DC\u30BF\u30F3\u306E\u30AF\u30EA\u30C3\u30AF\u52D5\u4F5C",ko:"\uD50C\uB85C\uD305 \uBC84\uD2BC \uD074\uB9AD \uB3D9\uC791"},fab_click_menu:{zh:"\u5F39\u51FA\u83DC\u5355",en:"Popup Menu",zh_TW:"\u5F48\u51FA\u9078\u55AE",ja:"\u30E1\u30CB\u30E5\u30FC\u3092\u958B\u304F",ko:"\uD31D\uC5C5 \uBA54\uB274"},fab_click_translate:{zh:"\u76F4\u63A5\u7FFB\u8BD1",en:"Translate",zh_TW:"\u76F4\u63A5\u7FFB\u8B6F",ja:"\u76F4\u63A5\u7FFB\u8A33",ko:"\uBC14\uB85C \uBC88\uC5ED"},hide_tran_button:{zh:"\u9690\u85CF\u7FFB\u8BD1\u6309\u94AE",en:"Hide Translate Button",zh_TW:"\u96B1\u85CF\u7FFB\u8B6F\u6309\u9215",ja:"\u7FFB\u8A33\u30DC\u30BF\u30F3\u3092\u96A0\u3059",ko:"\uBC88\uC5ED \uBC84\uD2BC \uC228\uAE30\uAE30"},hide_click_away:{zh:"\u70B9\u51FB\u5916\u90E8\u5173\u95ED\u5F39\u7A97",en:"Click outside to close the pop-up window",zh_TW:"\u9EDE\u64CA\u5916\u90E8\u95DC\u9589\u5F48\u7A97",ja:"\u5916\u90E8\u30AF\u30EA\u30C3\u30AF\u3067\u30DD\u30C3\u30D7\u30A2\u30C3\u30D7\u3092\u9589\u3058\u308B",ko:"\uBC14\uAE65\uCABD \uD074\uB9AD \uC2DC \uD31D\uC5C5 \uB2EB\uAE30"},use_simple_style:{zh:"\u4F7F\u7528\u7B80\u6D01\u754C\u9762",en:"Use a simple interface",zh_TW:"\u4F7F\u7528\u7C21\u6F54\u4ECB\u9762",ja:"\u30B7\u30F3\u30D7\u30EBUI\u3092\u4F7F\u7528",ko:"\uAC04\uB2E8\uD55C \uC778\uD130\uD398\uC774\uC2A4 \uC0AC\uC6A9"},show:{zh:"\u663E\u793A",en:"Show",zh_TW:"\u986F\u793A",ja:"\u8868\u793A",ko:"\uD45C\uC2DC"},hide:{zh:"\u9690\u85CF",en:"Hide",zh_TW:"\u96B1\u85CF",ja:"\u975E\u8868\u793A",ko:"\uC228\uAE30\uAE30"},save_rule:{zh:"\u4FDD\u5B58\u672C\u7AD9\u89C4\u5219",en:"Save this site rule",zh_TW:"\u4FDD\u5B58\u672C\u7AD9\u898F\u5247",ja:"\u3053\u306E\u30B5\u30A4\u30C8\u306E\u30EB\u30FC\u30EB\u3092\u4FDD\u5B58",ko:"\uC774 \uC0AC\uC774\uD2B8 \uADDC\uCE59 \uC800\uC7A5"},global_rule:{zh:"\u5168\u5C40\u89C4\u5219",en:"Global Rule",zh_TW:"\u5168\u57DF\u898F\u5247",ja:"\u30B0\u30ED\u30FC\u30D0\u30EB\u30EB\u30FC\u30EB",ko:"\uC804\uC5ED \uADDC\uCE59"},input_translate:{zh:"\u8F93\u5165\u6846\u7FFB\u8BD1",en:"Input Box Translation",zh_TW:"\u8F38\u5165\u6846\u7FFB\u8B6F",ja:"\u5165\u529B\u30DC\u30C3\u30AF\u30B9\u7FFB\u8A33",ko:"\uC785\uB825\uCC3D \uBC88\uC5ED"},use_input_box_translation:{zh:"\u542F\u7528\u8F93\u5165\u6846\u7FFB\u8BD1",en:"Input Box Translation",zh_TW:"\u555F\u7528\u8F38\u5165\u6846\u7FFB\u8B6F",ja:"\u5165\u529B\u30DC\u30C3\u30AF\u30B9\u7FFB\u8A33\u3092\u6709\u52B9\u306B\u3059\u308B",ko:"\uC785\uB825\uCC3D \uBC88\uC5ED \uC0AC\uC6A9"},input_selector:{zh:"\u8F93\u5165\u6846\u9009\u62E9\u5668",en:"Input Selector",zh_TW:"\u8F38\u5165\u6846\u9078\u64C7\u5668",ja:"\u5165\u529B\u30DC\u30C3\u30AF\u30B9\u30BB\u30EC\u30AF\u30BF",ko:"\uC785\uB825\uCC3D \uC120\uD0DD\uC790"},input_selector_helper:{zh:"\u7528\u4E8E\u8F93\u5165\u6846\u7FFB\u8BD1\u3002",en:"Used for input box translation.",zh_TW:"\u7528\u65BC\u8F38\u5165\u6846\u7FFB\u8B6F\u3002",ja:"\u5165\u529B\u30DC\u30C3\u30AF\u30B9\u306E\u7FFB\u8A33\u306B\u4F7F\u7528\u3057\u307E\u3059\u3002",ko:"\uC785\uB825\uCC3D \uBC88\uC5ED\uC5D0 \uC0AC\uC6A9\uB429\uB2C8\uB2E4."},trigger_trans_shortcut:{zh:"\u89E6\u53D1\u7FFB\u8BD1\u5FEB\u6377\u952E",en:"Trigger Translation Shortcut Keys",zh_TW:"\u89F8\u767C\u7FFB\u8B6F\u5FEB\u6377\u9375",ja:"\u7FFB\u8A33\u30B7\u30E7\u30FC\u30C8\u30AB\u30C3\u30C8\u30AD\u30FC",ko:"\uBC88\uC5ED \uC2E4\uD589 \uB2E8\uCD95\uD0A4"},trigger_trans_shortcut_help:{zh:"\u9ED8\u8BA4\u4E3A\u5355\u51FB\u201CAltLeft+KeyI\u201D",en:"Default is \"AltLeft+KeyI\"",zh_TW:"\u9810\u8A2D\u70BA\u6309\u4E0B\u300CAltLeft+KeyI\u300D",ja:"\u30C7\u30D5\u30A9\u30EB\u30C8\u306F\u300CAltLeft+KeyI\u300D\u3067\u3059",ko:"\uAE30\uBCF8\uAC12 \"AltLeft+KeyI\""},shortcut_press_count:{zh:"\u5FEB\u6377\u952E\u8FDE\u51FB\u6B21\u6570",en:"Shortcut Press Number",zh_TW:"\u5FEB\u6377\u9375\u9023\u64CA\u6B21\u6578",ja:"\u30B7\u30E7\u30FC\u30C8\u30AB\u30C3\u30C8\u306E\u9023\u7D9A\u30D7\u30EC\u30B9\u56DE\u6570",ko:"\uB2E8\uCD95\uD0A4 \uC5F0\uC18D \uC785\uB825 \uD69F\uC218"},combo_timeout:{zh:"\u8FDE\u51FB\u8D85\u65F6\u65F6\u95F4 (10-1000ms)",en:"Combo Timeout (10-1000ms)",zh_TW:"\u9023\u64CA\u903E\u6642 (10-1000ms)",ja:"\u9023\u7D9A\u30D7\u30EC\u30B9\u30BF\u30A4\u30E0\u30A2\u30A6\u30C8 (10-1000ms)",ko:"\uC5F0\uC18D \uC785\uB825 \uC2DC\uAC04 \uCD08\uACFC (10-1000ms)"},input_trans_start_sign:{zh:"\u7FFB\u8BD1\u8D77\u59CB\u6807\u8BC6",en:"Translation Start Sign",zh_TW:"\u7FFB\u8B6F\u8D77\u59CB\u6A19\u8A18",ja:"\u7FFB\u8A33\u958B\u59CB\u8A18\u53F7",ko:"\uBC88\uC5ED \uC2DC\uC791 \uD45C\uC2DC"},input_trans_start_sign_help:{zh:"\u6807\u8BC6\u540E\u9762\u53EF\u4EE5\u52A0\u76EE\u6807\u8BED\u8A00\u4EE3\u7801\uFF0C\u5982\uFF1A \u201C/en \u4F60\u597D\u201D\u3001\u201C/zh hello\u201D",en:"The target language code can be added after the sign, such as: \"/en \u4F60\u597D\", \"/zh hello\"",zh_TW:"\u6A19\u8A18\u5F8C\u53EF\u52A0\u4E0A\u76EE\u6A19\u8A9E\u8A00\u4EE3\u78BC\uFF0C\u4F8B\u5982\uFF1A\u300C/en \u4F60\u597D\u300D\u3001\u300C/zh hello\u300D",ja:"\u8A18\u53F7\u306E\u5F8C\u306B\u5BFE\u8C61\u8A00\u8A9E\u30B3\u30FC\u30C9\u3092\u8FFD\u52A0\u3067\u304D\u307E\u3059\u3002\u4F8B\uFF1A\u300C/en \u4F60\u597D\u300D\u3001\u300C/zh hello\u300D",ko:"\uD45C\uC2DC \uB4A4\uC5D0 \uB300\uC0C1 \uC5B8\uC5B4 \uCF54\uB4DC\uB97C \uCD94\uAC00\uD560 \uC218 \uC788\uC2B5\uB2C8\uB2E4. \uC608: \"/en \u4F60\u597D\", \"/zh hello\""},detect_lang_remote:{zh:"\u8FDC\u7A0B\u8BED\u8A00\u68C0\u6D4B",en:"Remote language detection",zh_TW:"\u9060\u7AEF\u8A9E\u8A00\u5075\u6E2C",ja:"\u30EA\u30E2\u30FC\u30C8\u8A00\u8A9E\u691C\u51FA",ko:"\uC6D0\uACA9 \uC5B8\uC5B4 \uAC10\uC9C0"},detect_lang_remote_help:{zh:"\u542F\u7528\u540E\u68C0\u6D4B\u51C6\u786E\u5EA6\u589E\u52A0\uFF0C\u4F46\u4F1A\u964D\u4F4E\u7FFB\u8BD1\u901F\u5EA6\uFF0C\u8BF7\u914C\u60C5\u5F00\u542F",en:"After enabling, the detection accuracy will increase, but it will reduce the translation speed. Please enable it as appropriate.",zh_TW:"\u555F\u7528\u5F8C\u53EF\u63D0\u5347\u5075\u6E2C\u6E96\u78BA\u5EA6\uFF0C\u4F46\u6703\u964D\u4F4E\u7FFB\u8B6F\u901F\u5EA6\uFF0C\u8ACB\u8996\u9700\u8981\u958B\u555F\u3002",ja:"\u6709\u52B9\u306B\u3059\u308B\u3068\u691C\u51FA\u7CBE\u5EA6\u304C\u5411\u4E0A\u3057\u307E\u3059\u304C\u3001\u7FFB\u8A33\u901F\u5EA6\u304C\u4F4E\u4E0B\u3059\u308B\u53EF\u80FD\u6027\u304C\u3042\u308A\u307E\u3059\u3002\u5FC5\u8981\u306B\u5FDC\u3058\u3066\u6709\u52B9\u306B\u3057\u3066\u304F\u3060\u3055\u3044\u3002",ko:"\uD65C\uC131\uD654\uD558\uBA74 \uAC10\uC9C0 \uC815\uD655\uB3C4\uAC00 \uB192\uC544\uC9C0\uC9C0\uB9CC \uBC88\uC5ED \uC18D\uB3C4\uAC00 \uB290\uB824\uC9C8 \uC218 \uC788\uC2B5\uB2C8\uB2E4. \uC801\uC808\uD788 \uD65C\uC131\uD654\uD558\uC2ED\uC2DC\uC624."},detect_lang_service:{zh:"\u8BED\u8A00\u68C0\u6D4B\u670D\u52A1",en:"Language detect service",zh_TW:"\u8A9E\u8A00\u6AA2\u6E2C\u670D\u52D9",ja:"\u8A00\u8A9E\u691C\u51FA\u30B5\u30FC\u30D3\u30B9",ko:"\uC5B8\uC5B4 \uAC10\uC9C0 \uC11C\uBE44\uC2A4"},disable:{zh:"\u7981\u7528",en:"Disable",zh_TW:"\u505C\u7528",ja:"\u7121\u52B9",ko:"\uBE44\uD65C\uC131\uD654"},enable:{zh:"\u542F\u7528",en:"Enable",zh_TW:"\u555F\u7528",ja:"\u6709\u52B9",ko:"\uD65C\uC131\uD654"},selection_translate:{zh:"\u5212\u8BCD\u7FFB\u8BD1",en:"Selection Translation",zh_TW:"\u5283\u8A5E\u7FFB\u8B6F",ja:"\u9078\u629E\u7FFB\u8A33",ko:"\uC120\uD0DD \uBC88\uC5ED"},toggle_selection_translate:{zh:"\u542F\u7528\u5212\u8BCD\u7FFB\u8BD1",en:"Use Selection Translate",zh_TW:"\u555F\u7528\u5283\u8A5E\u7FFB\u8B6F",ja:"\u9078\u629E\u7FFB\u8A33\u3092\u6709\u52B9\u306B\u3059\u308B",ko:"\uC120\uD0DD \uBC88\uC5ED \uC0AC\uC6A9"},trigger_tranbox_shortcut:{zh:"\u663E\u793A\u7FFB\u8BD1\u6846/\u7FFB\u8BD1\u9009\u4E2D\u6587\u5B57\u5FEB\u6377\u952E",en:"Open Translate Popup/Translate Selected Shortcut",zh_TW:"\u986F\u793A\u7FFB\u8B6F\u6846\uFF0F\u7FFB\u8B6F\u9078\u4E2D\u6587\u5B57\u5FEB\u6377\u9375",ja:"\u7FFB\u8A33\u30DD\u30C3\u30D7\u30A2\u30C3\u30D7\u8868\u793A/\u9078\u629E\u7FFB\u8A33\u30B7\u30E7\u30FC\u30C8\u30AB\u30C3\u30C8",ko:"\uBC88\uC5ED\uCC3D \uD45C\uC2DC/\uC120\uD0DD \uBC88\uC5ED \uB2E8\uCD95\uD0A4"},tranbtn_offset_x:{zh:"\u7FFB\u8BD1\u6309\u94AE\u504F\u79FBX\uFF08\xB1200\uFF09",en:"Translate Button Offset X (\xB1200)",zh_TW:"\u7FFB\u8B6F\u6309\u9215\u4F4D\u79FB X\uFF08\xB1200\uFF09",ja:"\u7FFB\u8A33\u30DC\u30BF\u30F3\u30AA\u30D5\u30BB\u30C3\u30C8X (\xB1200)",ko:"\uBC88\uC5ED \uBC84\uD2BC \uC624\uD504\uC14B X (\xB1200)"},tranbtn_offset_y:{zh:"\u7FFB\u8BD1\u6309\u94AE\u504F\u79FBY\uFF08\xB1200\uFF09",en:"Translate Button Offset Y (\xB1200)",zh_TW:"\u7FFB\u8B6F\u6309\u9215\u4F4D\u79FB Y\uFF08\xB1200\uFF09",ja:"\u7FFB\u8A33\u30DC\u30BF\u30F3\u30AA\u30D5\u30BB\u30C3\u30C8Y (\xB1200)",ko:"\uBC88\uC5ED \uBC84\uD2BC \uC624\uD504\uC14B Y (\xB1200)"},tranbox_offset_x:{zh:"\u7FFB\u8BD1\u6846\u504F\u79FBX\uFF08\xB1200\uFF09",en:"Translate Box Offset X (\xB1200)",zh_TW:"\u7FFB\u8B6F\u6846\u4F4D\u79FB X\uFF08\xB1200\uFF09",ja:"\u7FFB\u8A33\u30DC\u30C3\u30AF\u30B9\u30AA\u30D5\u30BB\u30C3\u30C8X (\xB1200)",ko:"\uBC88\uC5ED\uCC3D \uC624\uD504\uC14B X (\xB1200)"},tranbox_offset_y:{zh:"\u7FFB\u8BD1\u6846\u504F\u79FBY\uFF08\xB1200\uFF09",en:"Translate Box Offset Y (\xB1200)",zh_TW:"\u7FFB\u8B6F\u6846\u4F4D\u79FB Y\uFF08\xB1200\uFF09",ja:"\u7FFB\u8A33\u30DC\u30C3\u30AF\u30B9\u30AA\u30D5\u30BB\u30C3\u30C8Y (\xB1200)",ko:"\uBC88\uC5ED\uCC3D \uC624\uD504\uC14B Y (\xB1200)"},translated_text:{zh:"\u8BD1\u6587",en:"Translated Text",zh_TW:"\u8B6F\u6587",ja:"\u7FFB\u8A33\u6E08\u307F\u30C6\u30AD\u30B9\u30C8",ko:"\uBC88\uC5ED\uB41C \uD14D\uC2A4\uD2B8"},original_text:{zh:"\u539F\u6587",en:"Original Text",zh_TW:"\u539F\u6587",ja:"\u539F\u6587",ko:"\uC6D0\uBCF8 \uD14D\uC2A4\uD2B8"},favorite_words:{zh:"\u6536\u85CF\u8BCD\u6C47",en:"Favorite Words",zh_TW:"\u6536\u85CF\u8A5E\u5F59",ja:"\u304A\u6C17\u306B\u5165\u308A\u5358\u8A9E",ko:"\uC990\uACA8\uCC3E\uB294 \uB2E8\uC5B4"},touch_setting:{zh:"\u89E6\u5C4F\u8BBE\u7F6E",en:"Touch Setting",zh_TW:"\u89F8\u63A7\u8A2D\u5B9A",ja:"\u30BF\u30C3\u30C1\u8A2D\u5B9A",ko:"\uD130\uCE58 \uC124\uC815"},touch_translate_shortcut:{zh:"\u89E6\u5C4F\u7FFB\u8BD1\u5FEB\u6377\u65B9\u5F0F (\u652F\u6301\u591A\u9009)",en:"Touch Translate Shortcut (multiple supported)",zh_TW:"\u89F8\u63A7\u7FFB\u8B6F\u6377\u5F91 (\u652F\u63F4\u591A\u9078)",ja:"\u30BF\u30C3\u30C1\u7FFB\u8A33\u30B7\u30E7\u30FC\u30C8\u30AB\u30C3\u30C8 (\u8907\u6570\u9078\u629E\u53EF)",ko:"\uD130\uCE58 \uBC88\uC5ED \uB2E8\uCD95\uD0A4 (\uB2E4\uC911 \uC120\uD0DD \uC9C0\uC6D0)"},touch_tap_0:{zh:"\u7981\u7528",en:"Disable",zh_TW:"\u505C\u7528",ja:"\u7121\u52B9",ko:"\uBE44\uD65C\uC131\uD654"},touch_tap_2:{zh:"\u53CC\u6307\u8F7B\u89E6",en:"Two finger tap",zh_TW:"\u96D9\u6307\u8F15\u89F8",ja:"2\u672C\u6307\u30BF\u30C3\u30D7",ko:"\uB450 \uC190\uAC00\uB77D \uD0ED"},touch_tap_3:{zh:"\u4E09\u6307\u8F7B\u89E6",en:"Three finger tap",zh_TW:"\u4E09\u6307\u8F15\u89F8",ja:"3\u672C\u6307\u30BF\u30C3\u30D7",ko:"\uC138 \uC190\uAC00\uB77D \uD0ED"},touch_tap_4:{zh:"\u56DB\u6307\u8F7B\u89E6",en:"Four finger tap",zh_TW:"\u56DB\u6307\u8F15\u89F8",ja:"4\u672C\u6307\u30BF\u30C3\u30D7",ko:"\uB124 \uC190\uAC00\uB77D \uD0ED"},touch_tap_5:{zh:"\u5355\u6307\u53CC\u51FB",en:"Double-click",zh_TW:"\u55AE\u6307\u96D9\u64CA",ja:"\u30C0\u30D6\u30EB\u30AF\u30EA\u30C3\u30AF",ko:"\uB354\uBE14 \uD074\uB9AD"},touch_tap_6:{zh:"\u5355\u6307\u4E09\u51FB",en:"Triple-click",zh_TW:"\u55AE\u6307\u4E09\u64CA",ja:"\u30C8\u30EA\u30D7\u30EB\u30AF\u30EA\u30C3\u30AF",ko:"\uD2B8\uB9AC\uD50C \uD074\uB9AD"},touch_tap_7:{zh:"\u53CC\u6307\u53CC\u51FB",en:"Two-finger double-click",zh_TW:"\u96D9\u6307\u96D9\u64CA",ja:"2\u672C\u6307\u30C0\u30D6\u30EB\u30AF\u30EA\u30C3\u30AF",ko:"\uB450 \uC190\uAC00\uB77D \uB354\uBE14 \uD074\uB9AD"},translate_blacklist:{zh:"\u7981\u7528\u7FFB\u8BD1\u540D\u5355",en:"Translate Blacklist",zh_TW:"\u505C\u7528\u7FFB\u8B6F\u540D\u55AE",ja:"\u7FFB\u8A33\u30D6\u30E9\u30C3\u30AF\u30EA\u30B9\u30C8",ko:"\uBC88\uC5ED \uBE14\uB799\uB9AC\uC2A4\uD2B8"},disabled_orilist:{zh:"\u7981\u7528Origin\u540D\u5355",en:"Disabled Origin List",zh_TW:"\u505C\u7528 Origin \u540D\u55AE",ja:"\u7121\u52B9\u5316Origin\u30EA\u30B9\u30C8",ko:"\uBE44\uD65C\uC131\uD654\uB41C Origin \uBAA9\uB85D"},disabled_csplist:{zh:"\u7981\u7528CSP\u540D\u5355",en:"Disabled CSP List",zh_TW:"\u505C\u7528 CSP \u540D\u55AE",ja:"\u7121\u52B9\u5316CSP\u30EA\u30B9\u30C8",ko:"\uBE44\uD65C\uC131\uD654\uB41C CSP \uBAA9\uB85D"},disabled_csplist_helper:{zh:"3\u3001\u901A\u8FC7\u8C03\u6574CSP\u7B56\u7565\uFF0C\u4F7F\u5F97\u67D0\u4E9B\u9875\u9762\u80FD\u591F\u6CE8\u5165JS/CSS/Media\uFF0C\u8BF7\u8C28\u614E\u4F7F\u7528\uFF0C\u9664\u975E\u60A8\u5DF2\u77E5\u6653\u76F8\u5173\u98CE\u9669\u3002",en:"3. By adjusting the CSP policy, some pages can inject JS/CSS/Media. Please use it with caution unless you are aware of the related risks.",zh_TW:"3. \u900F\u904E\u8ABF\u6574 CSP \u653F\u7B56\uFF0C\u4F7F\u90E8\u5206\u9801\u9762\u53EF\u6CE8\u5165 JS/CSS/Media\u3002\u8ACB\u8B39\u614E\u4F7F\u7528\uFF0C\u9664\u975E\u60A8\u5DF2\u77E5\u6089\u76F8\u95DC\u98A8\u96AA\u3002",ja:"3. CSP\u30DD\u30EA\u30B7\u30FC\u3092\u8ABF\u6574\u3059\u308B\u3053\u3068\u306B\u3088\u308A\u3001\u4E00\u90E8\u306E\u30DA\u30FC\u30B8\u3067JS/CSS/Media\u306E\u6CE8\u5165\u304C\u53EF\u80FD\u306B\u306A\u308A\u307E\u3059\u3002\u95A2\u9023\u3059\u308B\u30EA\u30B9\u30AF\u3092\u627F\u77E5\u3057\u3066\u3044\u306A\u3044\u9650\u308A\u3001\u614E\u91CD\u306B\u4F7F\u7528\u3057\u3066\u304F\u3060\u3055\u3044\u3002",ko:"3. CSP \uC815\uCC45\uC744 \uC870\uC815\uD558\uC5EC \uC77C\uBD80 \uD398\uC774\uC9C0\uC5D0\uC11C JS/CSS/Media\uB97C \uC8FC\uC785\uD560 \uC218 \uC788\uC2B5\uB2C8\uB2E4. \uAD00\uB828\uB41C \uC704\uD5D8\uC744 \uC778\uC9C0\uD558\uACE0 \uC788\uB294 \uACBD\uC6B0\uAC00 \uC544\uB2C8\uB77C\uBA74 \uC8FC\uC758\uD574\uC11C \uC0AC\uC6A9\uD558\uC2ED\uC2DC\uC624."},skip_langs:{zh:"\u4E0D\u7FFB\u8BD1\u7684\u8BED\u8A00",en:"Disable Languages",zh_TW:"\u4E0D\u7FFB\u8B6F\u7684\u8A9E\u8A00",ja:"\u7FFB\u8A33\u3057\u306A\u3044\u8A00\u8A9E",ko:"\uBC88\uC5ED\uD558\uC9C0 \uC54A\uC744 \uC5B8\uC5B4"},skip_langs_helper:{zh:"\u6B64\u529F\u80FD\u4F9D\u8D56\u51C6\u786E\u7684\u8BED\u8A00\u68C0\u6D4B\uFF0C\u5EFA\u8BAE\u542F\u7528\u8FDC\u7A0B\u8BED\u8A00\u68C0\u6D4B\u3002",en:"This feature relies on accurate language detection. It is recommended to enable remote language detection.",zh_TW:"\u6B64\u529F\u80FD\u4EF0\u8CF4\u6E96\u78BA\u7684\u8A9E\u8A00\u5075\u6E2C\uFF0C\u5EFA\u8B70\u555F\u7528\u9060\u7AEF\u8A9E\u8A00\u5075\u6E2C\u3002",ja:"\u3053\u306E\u6A5F\u80FD\u306F\u6B63\u78BA\u306A\u8A00\u8A9E\u691C\u51FA\u306B\u4F9D\u5B58\u3057\u3066\u3044\u308B\u305F\u3081\u3001\u30EA\u30E2\u30FC\u30C8\u8A00\u8A9E\u691C\u51FA\u3092\u6709\u52B9\u306B\u3059\u308B\u3053\u3068\u3092\u304A\u52E7\u3081\u3057\u307E\u3059\u3002",ko:"\uC774 \uAE30\uB2A5\uC740 \uC815\uD655\uD55C \uC5B8\uC5B4 \uAC10\uC9C0\uC5D0 \uC758\uC874\uD558\uBBC0\uB85C \uC6D0\uACA9 \uC5B8\uC5B4 \uAC10\uC9C0\uB97C \uD65C\uC131\uD654\uD558\uB294 \uAC83\uC774 \uC88B\uC2B5\uB2C8\uB2E4."},context_menus:{zh:"\u53F3\u952E\u83DC\u5355",en:"Context Menus",zh_TW:"\u53F3\u9375\u9078\u55AE",ja:"\u30B3\u30F3\u30C6\u30AD\u30B9\u30C8\u30E1\u30CB\u30E5\u30FC",ko:"\uCEE8\uD14D\uC2A4\uD2B8 \uBA54\uB274"},hide_context_menus:{zh:"\u9690\u85CF\u53F3\u952E\u83DC\u5355",en:"Hide Context Menus",zh_TW:"\u96B1\u85CF\u53F3\u9375\u9078\u55AE",ja:"\u30B3\u30F3\u30C6\u30AD\u30B9\u30C8\u30E1\u30CB\u30E5\u30FC\u3092\u96A0\u3059",ko:"\uCEE8\uD14D\uC2A4\uD2B8 \uBA54\uB274 \uC228\uAE30\uAE30"},simple_context_menus:{zh:"\u7B80\u5355\u53F3\u952E\u83DC\u5355",en:"Simple_context_menus Context Menus",zh_TW:"\u7C21\u6613\u53F3\u9375\u9078\u55AE",ja:"\u30B7\u30F3\u30D7\u30EB\u30B3\u30F3\u30C6\u30AD\u30B9\u30C8\u30E1\u30CB\u30E5\u30FC",ko:"\uAC04\uB2E8\uD55C \uCEE8\uD14D\uC2A4\uD2B8 \uBA54\uB274"},secondary_context_menus:{zh:"\u4E8C\u7EA7\u53F3\u952E\u83DC\u5355",en:"Secondary Context Menus",zh_TW:"\u6B21\u7D1A\u53F3\u9375\u9078\u55AE",ja:"\u30B5\u30D6\u30B3\u30F3\u30C6\u30AD\u30B9\u30C8\u30E1\u30CB\u30E5\u30FC",ko:"\uBCF4\uC870 \uCEE8\uD14D\uC2A4\uD2B8 \uBA54\uB274"},mulkeys_help:{zh:"\u652F\u6301\u7528\u6362\u884C\u6216\u82F1\u6587\u9017\u53F7\u201C,\u201D\u5206\u9694\uFF0C\u8F6E\u8BE2\u8C03\u7528\u3002",en:"Supports polling calls separated by newlines or English commas \",\".",zh_TW:"\u652F\u63F4\u4EE5\u63DB\u884C\u6216\u82F1\u6587\u9017\u865F\u300C,\u300D\u5206\u9694\uFF0C\u8F2A\u8A62\u547C\u53EB\u3002",ja:"\u6539\u884C\u307E\u305F\u306F\u82F1\u8A9E\u306E\u30B3\u30F3\u30DE\u300C,\u300D\u3067\u533A\u5207\u3063\u3066\u30DD\u30FC\u30EA\u30F3\u30B0\u30B3\u30FC\u30EB\u3092\u30B5\u30DD\u30FC\u30C8\u3057\u307E\u3059\u3002",ko:"\uC904\uBC14\uAFC8 \uB610\uB294 \uC601\uC5B4 \uC27C\uD45C \",\"\uB85C \uAD6C\uBD84\uB41C \uD3F4\uB9C1 \uD638\uCD9C\uC744 \uC9C0\uC6D0\uD569\uB2C8\uB2E4."},translation_element_tag:{zh:"\u8BD1\u6587\u5143\u7D20\u6807\u7B7E",en:"Translation Element Tag",zh_TW:"\u8B6F\u6587\u5143\u7D20\u6A19\u7C64",ja:"\u7FFB\u8A33\u8981\u7D20\u30BF\u30B0",ko:"\uBC88\uC5ED \uC694\uC18C \uD0DC\uADF8"},show_only_translations:{zh:"\u4EC5\u663E\u793A\u8BD1\u6587",en:"Show Only Translations",zh_TW:"\u50C5\u986F\u793A\u8B6F\u6587",ja:"\u7FFB\u8A33\u306E\u307F\u8868\u793A",ko:"\uBC88\uC5ED\uB9CC \uBCF4\uAE30"},show_only_translations_help:{zh:"\u975E\u5B8C\u7F8E\u5B9E\u73B0\uFF0C\u67D0\u4E9B\u9875\u9762\u53EF\u80FD\u6709\u6837\u5F0F\u7B49\u95EE\u9898\u3002",en:"It is not a perfect implementation and some pages may have style issues.",zh_TW:"\u6B64\u70BA\u975E\u5B8C\u7F8E\u5BE6\u4F5C\uFF0C\u90E8\u5206\u9801\u9762\u53EF\u80FD\u51FA\u73FE\u6A23\u5F0F\u7B49\u554F\u984C\u3002",ja:"\u5B8C\u5168\u306A\u5B9F\u88C5\u3067\u306F\u306A\u304F\u3001\u4E00\u90E8\u306E\u30DA\u30FC\u30B8\u3067\u30B9\u30BF\u30A4\u30EB\u306E\u554F\u984C\u304C\u767A\u751F\u3059\u308B\u53EF\u80FD\u6027\u304C\u3042\u308A\u307E\u3059\u3002",ko:"\uC644\uBCBD\uD55C \uAD6C\uD604\uC774 \uC544\uB2C8\uBA70 \uC77C\uBD80 \uD398\uC774\uC9C0\uC5D0\uC11C \uC2A4\uD0C0\uC77C \uBB38\uC81C\uAC00 \uBC1C\uC0DD\uD560 \uC218 \uC788\uC2B5\uB2C8\uB2E4."},translate_page_title:{zh:"\u662F\u5426\u7FFB\u8BD1\u9875\u9762\u6807\u9898",en:"Translate Page Title",zh_TW:"\u662F\u5426\u7FFB\u8B6F\u9801\u9762\u6A19\u984C",ja:"\u30DA\u30FC\u30B8\u30BF\u30A4\u30C8\u30EB\u3092\u7FFB\u8A33\u3059\u308B",ko:"\uD398\uC774\uC9C0 \uC81C\uBAA9 \uBC88\uC5ED"},more:{zh:"\u66F4\u591A",en:"More",zh_TW:"\u66F4\u591A",ja:"\u3082\u3063\u3068\u898B\u308B",ko:"\uB354\uBCF4\uAE30"},less:{zh:"\u66F4\u5C11",en:"Less",zh_TW:"\u66F4\u5C11",ja:"\u5C11\u306A\u304F",ko:"\uC904\uC774\uAE30"},fixer_selector:{zh:"\u7F51\u9875\u4FEE\u590D\u9009\u62E9\u5668",en:"Fixer Selector",zh_TW:"\u7DB2\u9801\u4FEE\u5FA9\u9078\u64C7\u5668",ja:"Web\u4FEE\u6B63\u30BB\u30EC\u30AF\u30BF",ko:"\uC6F9\uD398\uC774\uC9C0 \uC218\uC815 \uC120\uD0DD\uC790"},reg_niutrans:{zh:"\u83B7\u53D6\u5C0F\u725B\u7FFB\u8BD1\u5BC6\u94A5\u3010\u7B80\u7EA6\u7FFB\u8BD1\u4E13\u5C5E\u65B0\u7528\u6237\u6CE8\u518C\u8D60\u9001300\u4E07\u5B57\u7B26\u3011",en:"Get NiuTrans APIKey [KISS Translator Exclusive New User Registration Free 3 Million Characters]",zh_TW:"\u53D6\u5F97\u5C0F\u725B\u7FFB\u8B6F\u91D1\u9470\u3010\u7C21\u7D04\u7FFB\u8B6F\u5C08\u5C6C\u65B0\u7528\u6236\u8A3B\u518A\u8D08\u9001 300 \u842C\u5B57\u5143\u3011",ja:"NiuTrans API\u30AD\u30FC\u3092\u53D6\u5F97 [KISS\u7FFB\u8A33 \u5C02\u7528 \u65B0\u898F\u30E6\u30FC\u30B6\u30FC\u767B\u9332\u3067300\u4E07\u6587\u5B57\u7121\u6599]",ko:"NiuTrans API \uD0A4 \uBC1B\uAE30 [KISS \uBC88\uC5ED\uAE30 \uC2E0\uADDC \uC0AC\uC6A9\uC790 \uB4F1\uB85D \uC2DC 300\uB9CC \uC790 \uBB34\uB8CC \uC81C\uACF5]"},trigger_mode:{zh:"\u89E6\u53D1\u65B9\u5F0F",en:"Trigger Mode",zh_TW:"\u89F8\u767C\u65B9\u5F0F",ja:"\u30C8\u30EA\u30AC\u30FC\u30E2\u30FC\u30C9",ko:"\uD2B8\uB9AC\uAC70 \uBAA8\uB4DC"},trigger_click:{zh:"\u70B9\u51FB\u89E6\u53D1",en:"Click Trigger",zh_TW:"\u9EDE\u64CA\u89F8\u767C",ja:"\u30AF\u30EA\u30C3\u30AF\u30C8\u30EA\u30AC\u30FC",ko:"\uD074\uB9AD \uD2B8\uB9AC\uAC70"},trigger_hover:{zh:"\u9F20\u6807\u60AC\u505C\u89E6\u53D1",en:"Hover Trigger",zh_TW:"\u6ED1\u9F20\u61F8\u505C\u89F8\u767C",ja:"\u30DB\u30D0\u30FC\u30C8\u30EA\u30AC\u30FC",ko:"\uD638\uBC84 \uD2B8\uB9AC\uAC70"},trigger_select:{zh:"\u9009\u4E2D\u89E6\u53D1",en:"Select Trigger",zh_TW:"\u9078\u53D6\u89F8\u767C",ja:"\u9078\u629E\u30C8\u30EA\u30AC\u30FC",ko:"\uC120\uD0DD \uD2B8\uB9AC\uAC70"},extend_styles:{zh:"\u9644\u52A0\u6837\u5F0F",en:"Extend Styles",zh_TW:"\u9644\u52A0\u6A23\u5F0F",ja:"\u62E1\u5F35\u30B9\u30BF\u30A4\u30EB",ko:"\uD655\uC7A5 \uC2A4\uD0C0\uC77C"},custom_option:{zh:"\u81EA\u5B9A\u4E49\u9009\u9879",en:"Custom Option",zh_TW:"\u81EA\u8A02\u9078\u9805",ja:"\u30AB\u30B9\u30BF\u30E0\u30AA\u30D7\u30B7\u30E7\u30F3",ko:"\uC0AC\uC6A9\uC790 \uC9C0\uC815 \uC635\uC158"},translate_selected_text:{zh:"\u7FFB\u8BD1\u9009\u4E2D\u6587\u5B57",en:"Translate Selected Text",zh_TW:"\u7FFB\u8B6F\u9078\u53D6\u6587\u5B57",ja:"\u9078\u629E\u3057\u305F\u30C6\u30AD\u30B9\u30C8\u3092\u7FFB\u8A33",ko:"\uC120\uD0DD\uD55C \uD14D\uC2A4\uD2B8 \uBC88\uC5ED"},toggle_style:{zh:"\u5207\u6362\u6837\u5F0F",en:"Toggle Style",zh_TW:"\u5207\u63DB\u6A23\u5F0F",ja:"\u30B9\u30BF\u30A4\u30EB\u3092\u5207\u308A\u66FF\u3048",ko:"\uC2A4\uD0C0\uC77C \uC804\uD658"},open_menu:{zh:"\u6253\u5F00\u5F39\u7A97\u83DC\u5355",en:"Open Popup Menu",zh_TW:"\u958B\u555F\u5F48\u7A97\u9078\u55AE",ja:"\u30DD\u30C3\u30D7\u30A2\u30C3\u30D7\u30E1\u30CB\u30E5\u30FC\u3092\u958B\u304F",ko:"\uD31D\uC5C5 \uBA54\uB274 \uC5F4\uAE30"},open_setting:{zh:"\u6253\u5F00\u8BBE\u7F6E",en:"Open Setting",zh_TW:"\u958B\u555F\u8A2D\u5B9A",ja:"\u8A2D\u5B9A\u3092\u958B\u304F",ko:"\uC124\uC815 \uC5F4\uAE30"},follow_selection:{zh:"\u7FFB\u8BD1\u6846\u8DDF\u968F\u9009\u4E2D\u6587\u672C",en:"Transbox Follow Selection",zh_TW:"\u7FFB\u8B6F\u6846\u8DDF\u96A8\u9078\u53D6\u6587\u5B57",ja:"\u7FFB\u8A33\u30DC\u30C3\u30AF\u30B9\u3092\u9078\u629E\u7BC4\u56F2\u306B\u8FFD\u5F93",ko:"\uBC88\uC5ED \uC0C1\uC790\uAC00 \uC120\uD0DD \uD56D\uBAA9 \uB530\uB77C\uAC00\uAE30"},tranbox_auto_height:{zh:"\u7FFB\u8BD1\u6846\u81EA\u9002\u5E94\u9AD8\u5EA6",en:"Translation box adaptive height",zh_TW:"\u7FFB\u8B6F\u6846\u81EA\u9069\u61C9\u9AD8\u5EA6",ja:"\u7FFB\u8A33\u30DC\u30C3\u30AF\u30B9\u306E\u9AD8\u3055\u81EA\u52D5\u8ABF\u6574",ko:"\uBC88\uC5ED \uC0C1\uC790 \uB192\uC774 \uC790\uB3D9 \uC870\uC808"},translate_start_hook:{zh:"\u7FFB\u8BD1\u5F00\u59CB\u94A9\u5B50\u51FD\u6570",en:"Translate Start Hook",zh_TW:"\u7FFB\u8B6F\u958B\u59CB Hook",ja:"\u7FFB\u8A33\u958B\u59CB\u30D5\u30C3\u30AF",ko:"\uBC88\uC5ED \uC2DC\uC791 \uD6C4\uD06C"},translate_start_hook_helper:{zh:"\u7FFB\u8BD1\u524D\u65F6\u8FD0\u884C\uFF0C\u5165\u53C2\u4E3A\uFF1A {text,\n fromLang,\n toLang,\n apiSetting,\n docInfo,\n glossary,}",en:"Run before translation, input parameters are: {text,\n fromLang,\n toLang,\n apiSetting,\n docInfo,\n glossary,}",zh_TW:"\u7FFB\u8B6F\u524D\u6642\u904B\u884C\uFF0C\u5165\u53C3\u70BA\uFF1A {text,\n fromLang,\n toLang,\n apiSetting,\n docInfo,\n glossary,}",ja:"\u7FFB\u8A33\u524D\u306B\u5B9F\u884C\u3001\u5165\u529B\u30D1\u30E9\u30E1\u30FC\u30BF: {text,\n fromLang,\n toLang,\n apiSetting,\n docInfo,\n glossary,}",ko:"\uBC88\uC5ED \uC804 \uC2E4\uD589, \uC785\uB825 \uB9E4\uAC1C\uBCC0\uC218: {text,\n fromLang,\n toLang,\n apiSetting,\n docInfo,\n glossary,}"},translate_end_hook:{zh:"\u7FFB\u8BD1\u5B8C\u6210\u94A9\u5B50\u51FD\u6570",en:"Translate End Hook",zh_TW:"\u7FFB\u8B6F\u5B8C\u6210 Hook",ja:"\u7FFB\u8A33\u5B8C\u4E86\u30D5\u30C3\u30AF",ko:"\uBC88\uC5ED \uC644\uB8CC \uD6C4\uD06C"},translate_end_hook_helper:{zh:"\u7FFB\u8BD1\u5B8C\u6210\u65F6\u8FD0\u884C\uFF0C\u5165\u53C2\u4E3A\uFF1A ({hostNode, parentNode, nodes, wrapperNode, innerNode})",en:"Run when translation is complete, input parameters are: ({hostNode, parentNode, nodes, wrapperNode, innerNode})",zh_TW:"\u7FFB\u8B6F\u5B8C\u6210\u6642\u904B\u884C\uFF0C\u5165\u53C3\u70BA\uFF1A ({hostNode, parentNode, nodes, wrapperNode, innerNode})",ja:"\u7FFB\u8A33\u5B8C\u4E86\u6642\u306B\u5B9F\u884C\u3001\u5165\u529B\u30D1\u30E9\u30E1\u30FC\u30BF: ({hostNode, parentNode, nodes, wrapperNode, innerNode})",ko:"\uBC88\uC5ED \uC644\uB8CC \uC2DC \uC2E4\uD589, \uC785\uB825 \uB9E4\uAC1C\uBCC0\uC218: ({hostNode, parentNode, nodes, wrapperNode, innerNode})"},translate_remove_hook:{zh:"\u7FFB\u8BD1\u79FB\u9664\u94A9\u5B50\u51FD\u6570",en:"Translate Removed Hook",zh_TW:"\u7FFB\u8B6F\u79FB\u9664 Hook",ja:"\u7FFB\u8A33\u524A\u9664\u30D5\u30C3\u30AF",ko:"\uBC88\uC5ED \uC81C\uAC70 \uD6C4\uD06C"},translate_remove_hook_helper:{zh:"\u7FFB\u8BD1\u79FB\u9664\u65F6\u8FD0\u884C\uFF0C\u5165\u53C2\u4E3A\uFF1A \u7FFB\u8BD1\u8282\u70B9\u3002",en:"Run when translation is removed, the input parameters are: translation node.",zh_TW:"\u79FB\u9664\u7FFB\u8B6F\u6642\u57F7\u884C\uFF0C\u5165\u53C3\u70BA\uFF1A\u7FFB\u8B6F\u7BC0\u9EDE\u3002",ja:"\u7FFB\u8A33\u524A\u9664\u6642\u306B\u5B9F\u884C\u3001\u5165\u529B\u30D1\u30E9\u30E1\u30FC\u30BF: \u7FFB\u8A33\u30CE\u30FC\u30C9\u3002",ko:"\uBC88\uC5ED \uC81C\uAC70 \uC2DC \uC2E4\uD589, \uC785\uB825 \uB9E4\uAC1C\uBCC0\uC218: \uBC88\uC5ED \uB178\uB4DC."},english_dict:{zh:"\u82F1\u6587\u8BCD\u5178",en:"English Dictionary",zh_TW:"\u82F1\u6587\u5B57\u5178",ja:"\u82F1\u8A9E\u8F9E\u66F8",ko:"\uC601\uC5B4 \uC0AC\uC804"},english_suggest:{zh:"\u82F1\u6587\u5EFA\u8BAE",en:"English Suggest",zh_TW:"\u82F1\u6587\u5EFA\u8B70",ja:"\u82F1\u8A9E\u30B5\u30B8\u30A7\u30B9\u30C8",ko:"\uC601\uC5B4 \uC81C\uC548"},api_name:{zh:"\u63A5\u53E3\u540D\u79F0",en:"API Name",zh_TW:"\u4ECB\u9762\u540D\u7A31",ja:"API\u540D",ko:"API \uC774\uB984"},is_disabled:{zh:"\u662F\u5426\u7981\u7528",en:"Is Disabled",zh_TW:"\u662F\u5426\u505C\u7528",ja:"\u7121\u52B9\u306B\u3059\u308B",ko:"\uBE44\uD65C\uC131\uD654 \uC5EC\uBD80"},translate_selected:{zh:"\u662F\u5426\u542F\u7528\u5212\u8BCD\u7FFB\u8BD1",en:"If translate selected",zh_TW:"\u662F\u5426\u555F\u7528\u5283\u8A5E\u7FFB\u8B6F",ja:"\u9078\u629E\u7BC4\u56F2\u306E\u7FFB\u8A33\u3092\u6709\u52B9\u306B\u3059\u308B",ko:"\uC120\uD0DD \uBC88\uC5ED \uC0AC\uC6A9 \uC5EC\uBD80"},use_batch_fetch:{zh:"\u662F\u5426\u805A\u5408\u53D1\u9001\u7FFB\u8BD1\u8BF7\u6C42",en:"Whether to aggregate and send translation requests",zh_TW:"\u662F\u5426\u805A\u5408\u767C\u9001\u7FFB\u8B6F\u8ACB\u6C42",ja:"\u7FFB\u8A33\u30EA\u30AF\u30A8\u30B9\u30C8\u3092\u307E\u3068\u3081\u3066\u9001\u4FE1",ko:"\uBC88\uC5ED \uC694\uCCAD \uC77C\uAD04 \uC804\uC1A1 \uC5EC\uBD80"},batch_interval:{zh:"\u805A\u5408\u8BF7\u6C42\u7B49\u5F85\u65F6\u95F4(100-10000)",en:"Aggregation request waiting time (100-10000)",zh_TW:"\u805A\u5408\u8ACB\u6C42\u7B49\u5F85\u6642\u9593(100-10000)",ja:"\u4E00\u62EC\u30EA\u30AF\u30A8\u30B9\u30C8\u306E\u5F85\u6A5F\u6642\u9593(100-10000)",ko:"\uC77C\uAD04 \uC694\uCCAD \uB300\uAE30 \uC2DC\uAC04(100-10000)"},batch_size:{zh:"\u805A\u5408\u8BF7\u6C42\u6700\u5927\u6BB5\u843D\u6570(1-100)",en:"Maximum number of paragraphs in an aggregation request (1-100)",zh_TW:"\u805A\u5408\u8ACB\u6C42\u6700\u5927\u6BB5\u843D\u6578(1-100)",ja:"\u4E00\u62EC\u30EA\u30AF\u30A8\u30B9\u30C8\u306E\u6700\u5927\u6BB5\u843D\u6570(1-100)",ko:"\uC77C\uAD04 \uC694\uCCAD \uCD5C\uB300 \uB2E8\uB77D \uC218(1-100)"},batch_length:{zh:"\u805A\u5408\u8BF7\u6C42\u6700\u5927\u6587\u672C\u957F\u5EA6(1000-100000)",en:"Maximum text length for aggregation requests (1000-100000)",zh_TW:"\u805A\u5408\u8ACB\u6C42\u6700\u5927\u6587\u5B57\u9577\u5EA6(1000-100000)",ja:"\u4E00\u62EC\u30EA\u30AF\u30A8\u30B9\u30C8\u306E\u6700\u5927\u30C6\u30AD\u30B9\u30C8\u9577(1000-100000)",ko:"\uC77C\uAD04 \uC694\uCCAD \uCD5C\uB300 \uD14D\uC2A4\uD2B8 \uAE38\uC774(1000-100000)"},use_context:{zh:"\u662F\u5426\u542F\u7528\u667A\u80FD\u4E0A\u4E0B\u6587",en:"Whether to enable AI context",zh_TW:"\u662F\u5426\u555F\u7528\u667A\u6167\u4E0A\u4E0B\u6587",ja:"AI\u30B3\u30F3\u30C6\u30AD\u30B9\u30C8\u3092\u6709\u52B9\u306B\u3059\u308B",ko:"AI \uCEE8\uD14D\uC2A4\uD2B8 \uD65C\uC131\uD654 \uC5EC\uBD80"},context_size:{zh:"\u4E0A\u4E0B\u6587\u4F1A\u8BDD\u6570\u91CF(1-20)",en:"Number of context sessions(1-20)",zh_TW:"\u4E0A\u4E0B\u6587\u6703\u8A71\u6578\u91CF(1-20)",ja:"\u30B3\u30F3\u30C6\u30AD\u30B9\u30C8\u30BB\u30C3\u30B7\u30E7\u30F3\u6570(1-20)",ko:"\uCEE8\uD14D\uC2A4\uD2B8 \uC138\uC158 \uC218(1-20)"},auto_scan_page:{zh:"\u81EA\u52A8\u626B\u63CF\u9875\u9762",en:"Auto scan page",zh_TW:"\u81EA\u52D5\u6383\u63CF\u9801\u9762",ja:"\u30DA\u30FC\u30B8\u3092\u81EA\u52D5\u30B9\u30AD\u30E3\u30F3",ko:"\uD398\uC774\uC9C0 \uC790\uB3D9 \uC2A4\uCE94"},has_rich_text:{zh:"\u542F\u7528\u5BCC\u6587\u672C\u7FFB\u8BD1",en:"Enable rich text translation",zh_TW:"\u555F\u7528\u5BCC\u6587\u672C\u7FFB\u8B6F",ja:"\u30EA\u30C3\u30C1\u30C6\u30AD\u30B9\u30C8\u7FFB\u8A33\u3092\u6709\u52B9\u306B\u3059\u308B",ko:"\uB9AC\uCE58 \uD14D\uC2A4\uD2B8 \uBC88\uC5ED \uD65C\uC131\uD654"},has_shadowroot:{zh:"\u626B\u63CFShadowroot",en:"Scan Shadowroot",zh_TW:"\u6383\u63CFShadowroot",ja:"Shadowroot\u3092\u30B9\u30AD\u30E3\u30F3",ko:"Shadowroot \uC2A4\uCE94"},mousehover_translate:{zh:"\u9F20\u6807\u60AC\u505C\u7FFB\u8BD1",en:"Mouseover Translation",zh_TW:"\u6ED1\u9F20\u61F8\u505C\u7FFB\u8B6F",ja:"\u30DE\u30A6\u30B9\u30AA\u30FC\u30D0\u30FC\u7FFB\u8A33",ko:"\uB9C8\uC6B0\uC2A4\uC624\uBC84 \uBC88\uC5ED"},use_mousehover_translation:{zh:"\u542F\u7528\u9F20\u6807\u60AC\u505C\u7FFB\u8BD1",en:"Enable mouseover translation",zh_TW:"\u555F\u7528\u6ED1\u9F20\u61F8\u505C\u7FFB\u8B6F",ja:"\u30DE\u30A6\u30B9\u30AA\u30FC\u30D0\u30FC\u7FFB\u8A33\u3092\u6709\u52B9\u306B\u3059\u308B",ko:"\uB9C8\uC6B0\uC2A4\uC624\uBC84 \uBC88\uC5ED \uD65C\uC131\uD654"},selected_translation_alert:{zh:"\u5212\u8BCD\u7FFB\u8BD1\u7684\u5F00\u542F\u548C\u5173\u95ED\u8BF7\u5230\u201C\u89C4\u5219\u8BBE\u7F6E\u201D\u91CC\u9762\u8BBE\u7F6E\u3002",en:"To turn selected translation on or off, please go to \"Rule Settings\".",zh_TW:"\u5283\u8A5E\u7FFB\u8B6F\u7684\u958B\u555F\u548C\u95DC\u9589\u8ACB\u5230\u300C\u898F\u5247\u8A2D\u5B9A\u300D\u88E1\u9762\u8A2D\u5B9A\u3002",ja:"\u9078\u629E\u7FFB\u8A33\u306E\u30AA\u30F3/\u30AA\u30D5\u306F\u300C\u30EB\u30FC\u30EB\u8A2D\u5B9A\u300D\u3067\u884C\u3063\u3066\u304F\u3060\u3055\u3044\u3002",ko:"\uC120\uD0DD \uBC88\uC5ED \uD65C\uC131\uD654/\uBE44\uD65C\uC131\uD654\uB294 \"\uADDC\uCE59 \uC124\uC815\"\uC5D0\uC11C \uD558\uC2ED\uC2DC\uC624."},mousehover_key_help:{zh:"\u5F53\u5FEB\u6377\u952E\u7F6E\u7A7A\u65F6\u8868\u793A\u9F20\u6807\u61F8\u505C\u76F4\u63A5\u7FFB\u8BD1",en:"When the shortcut key is empty, it means that the mouse hovers to translate directly",zh_TW:"\u7576\u5FEB\u6377\u9375\u7F6E\u7A7A\u6642\u8868\u793A\u6ED1\u9F20\u61F8\u505C\u76F4\u63A5\u7FFB\u8B6F",ja:"\u30B7\u30E7\u30FC\u30C8\u30AB\u30C3\u30C8\u30AD\u30FC\u304C\u7A7A\u306E\u5834\u5408\u3001\u30DE\u30A6\u30B9\u30AA\u30FC\u30D0\u30FC\u3067\u76F4\u63A5\u7FFB\u8A33\u3057\u307E\u3059",ko:"\uB2E8\uCD95\uD0A4\uAC00 \uBE44\uC5B4 \uC788\uC73C\uBA74 \uB9C8\uC6B0\uC2A4\uC624\uBC84 \uC2DC \uBC14\uB85C \uBC88\uC5ED\uD569\uB2C8\uB2E4"},autoscan_alt:{zh:"\u81EA\u52A8\u626B\u63CF",en:"Auto Scan",zh_TW:"\u81EA\u52D5\u6383\u63CF",ja:"\u81EA\u52D5\u30B9\u30AD\u30E3\u30F3",ko:"\uC790\uB3D9 \uC2A4\uCE94"},shadowroot_alt:{zh:"ShadowRoot",en:"ShadowRoot",zh_TW:"ShadowRoot",ja:"ShadowRoot",ko:"ShadowRoot"},richtext_alt:{zh:"\u4FDD\u7559\u5BCC\u6587\u672C",en:"Rich Text",zh_TW:"\u4FDD\u7559\u5BCC\u6587\u672C",ja:"\u30EA\u30C3\u30C1\u30C6\u30AD\u30B9\u30C8",ko:"\uB9AC\uCE58 \uD14D\uC2A4\uD2B8"},transonly_alt:{zh:"\u9690\u85CF\u539F\u6587",en:"Hide Original",zh_TW:"\u96B1\u85CF\u539F\u6587",ja:"\u539F\u6587\u3092\u96A0\u3059",ko:"\uC6D0\uBB38 \uC228\uAE30\uAE30"},confirm_title:{zh:"\u786E\u8BA4",en:"Confirm",zh_TW:"\u78BA\u8A8D",ja:"\u78BA\u8A8D",ko:"\uD655\uC778"},confirm_message:{zh:"\u786E\u5B9A\u64CD\u4F5C\u5417\uFF1F",en:"Are you sure you want to proceed?",zh_TW:"\u78BA\u5B9A\u64CD\u4F5C\u55CE\uFF1F",ja:"\u64CD\u4F5C\u3092\u7D9A\u884C\u3057\u307E\u3059\u304B\uFF1F",ko:"\uACC4\uC18D\uD558\uC2DC\uACA0\uC2B5\uB2C8\uAE4C?"},confirm_action:{zh:"\u786E\u5B9A",en:"Confirm",zh_TW:"\u78BA\u5B9A",ja:"\u78BA\u8A8D",ko:"\uD655\uC778"},cancel_action:{zh:"\u53D6\u6D88",en:"Cancel",zh_TW:"\u53D6\u6D88",ja:"\u30AD\u30E3\u30F3\u30BB\u30EB",ko:"\uCDE8\uC18C"},pls_press_shortcut:{zh:"\u8BF7\u6309\u4E0B\u5FEB\u6377\u952E\u7EC4\u5408",en:"Please press the shortcut key combination",zh_TW:"\u8ACB\u6309\u4E0B\u5FEB\u901F\u9375\u7D44\u5408",ja:"\u30B7\u30E7\u30FC\u30C8\u30AB\u30C3\u30C8\u30AD\u30FC\u3092\u62BC\u3057\u3066\u304F\u3060\u3055\u3044",ko:"\uB2E8\uCD95\uD0A4 \uC870\uD569\uC744 \uB204\uB974\uC138\uC694"},load_setting_err:{zh:"\u6570\u636E\u52A0\u8F7D\u51FA\u9519\uFF0C\u8BF7\u5237\u65B0\u9875\u9762\u6216\u5378\u8F7D\u540E\u91CD\u65B0\u5B89\u88C5\u3002",en:"Please press the shortcut key combination",// 注意:这里的英文和繁体是用户上次错误的拷贝 +zh_TW:"\u8ACB\u6309\u4E0B\u5FEB\u901F\u9375\u7D44\u5408",// 注意:这里的英文和繁体是用户上次错误的拷贝 +ja:"\u30C7\u30FC\u30BF\u8AAD\u307F\u8FBC\u307F\u30A8\u30E9\u30FC\u3002\u30DA\u30FC\u30B8\u3092\u66F4\u65B0\u3059\u308B\u304B\u3001\u30A2\u30F3\u30A4\u30F3\u30B9\u30C8\u30FC\u30EB\u5F8C\u306B\u518D\u30A4\u30F3\u30B9\u30C8\u30FC\u30EB\u3057\u3066\u304F\u3060\u3055\u3044\u3002",// 翻译自 "zh" +ko:"\uB370\uC774\uD130 \uB85C\uB529 \uC624\uB958. \uD398\uC774\uC9C0\uB97C \uC0C8\uB85C \uACE0\uCE58\uAC70\uB098 \uC81C\uAC70 \uD6C4 \uB2E4\uC2DC \uC124\uCE58\uD558\uC138\uC694."// 翻译自 "zh" +},translation_style:{zh:"\u7FFB\u8BD1\u98CE\u683C",en:"Translation style",zh_TW:"\u7FFB\u8B6F\u98A8\u683C",ja:"\u7FFB\u8A33\u30B9\u30BF\u30A4\u30EB",ko:"\uBC88\uC5ED \uC2A4\uD0C0\uC77C"},placeholder:{zh:"\u5360\u4F4D\u7B26",en:"Placeholder",zh_TW:"\u4F54\u4F4D\u7B26",ja:"\u30D7\u30EC\u30FC\u30B9\u30DB\u30EB\u30C0\u30FC",ko:"\uD50C\uB808\uC774\uC2A4\uD640\uB354"},tag_name:{zh:"\u5360\u4F4D\u6807\u7B7E\u540D",en:"Placeholder tag name",zh_TW:"\u4F54\u4F4D\u6A19\u540D",ja:"\u30D7\u30EC\u30FC\u30B9\u30DB\u30EB\u30C0\u30FC\u30BF\u30B0\u540D",ko:"\uD50C\uB808\uC774\uC2A4\uD640\uB354 \uD0DC\uADF8 \uC774\uB984"},system_prompt_helper:{zh:"\u5728\u672A\u5B8C\u5168\u7406\u89E3\u9ED8\u8BA4Prompt\u7684\u60C5\u51B5\u4E0B\uFF0C\u8BF7\u52FF\u968F\u610F\u4FEE\u6539\uFF0C\u5426\u5219\u53EF\u80FD\u65E0\u6CD5\u5DE5\u4F5C\u3002",en:"Do not modify the default prompt without fully understanding it, otherwise it may not work.",zh_TW:"\u5728\u672A\u5B8C\u5168\u7406\u89E3\u9810\u8A2DPrompt\u7684\u60C5\u6CC1\u4E0B\uFF0C\u8ACB\u52FF\u96A8\u610F\u4FEE\u6539\uFF0C\u5426\u5247\u53EF\u80FD\u7121\u6CD5\u904B\u4F5C\u3002",ja:"\u30C7\u30D5\u30A9\u30EB\u30C8\u306E\u30D7\u30ED\u30F3\u30D7\u30C8\u3092\u5B8C\u5168\u306B\u7406\u89E3\u305B\u305A\u306B\u5909\u66F4\u3057\u306A\u3044\u3067\u304F\u3060\u3055\u3044\u3002\u52D5\u4F5C\u3057\u306A\u304F\u306A\u308B\u53EF\u80FD\u6027\u304C\u3042\u308A\u307E\u3059\u3002",ko:"\uAE30\uBCF8 \uD504\uB86C\uD504\uD2B8\uB97C \uC644\uC804\uD788 \uC774\uD574\uD558\uC9C0 \uC54A\uACE0 \uC218\uC815\uD558\uC9C0 \uB9C8\uC2ED\uC2DC\uC624. \uC791\uB3D9\uD558\uC9C0 \uC54A\uC744 \uC218 \uC788\uC2B5\uB2C8\uB2E4."},if_pre_init:{zh:"\u662F\u5426\u9884\u521D\u59CB\u5316",en:"Whether to pre-initialize",zh_TW:"\u662F\u5426\u9810\u521D\u59CB\u5316",ja:"\u4E8B\u524D\u521D\u671F\u5316\u3059\u308B\u304B",ko:"\uC0AC\uC804 \uCD08\uAE30\uD654 \uC5EC\uBD80"},export_old:{zh:"\u5BFC\u51FA\u65E7\u7248",en:"Export old version",zh_TW:"\u532F\u51FA\u820A\u7248",ja:"\u65E7\u30D0\u30FC\u30B8\u30E7\u30F3\u3092\u30A8\u30AF\u30B9\u30DD\u30FC\u30C8",ko:"\uC774\uC804 \uBC84\uC804 \uB0B4\uBCF4\uB0B4\uAE30"},favorite_words_helper:{zh:"\u5BFC\u5165\u8BCD\u6C47\u8BF7\u4F7F\u7528txt\u6587\u4EF6\uFF0C\u6BCF\u4E00\u884C\u4E00\u4E2A\u5355\u8BCD\u3002",en:"To import vocabulary, please use a txt file with one word per line.",zh_TW:"\u532F\u5165\u8A5E\u5F59\u8ACB\u4F7F\u7528txt\u6587\u4EF6\uFF0C\u6BCF\u4E00\u884C\u4E00\u500B\u55AE\u5B57\u3002",ja:"\u5358\u8A9E\u3092\u30A4\u30F3\u30DD\u30FC\u30C8\u3059\u308B\u306B\u306F\u30011\u884C\u306B1\u5358\u8A9E\u305A\u3064\u8A18\u8FF0\u3057\u305Ftxt\u30D5\u30A1\u30A4\u30EB\u3092\u4F7F\u7528\u3057\u3066\u304F\u3060\u3055\u3044\u3002",ko:"\uB2E8\uC5B4\uB97C \uAC00\uC838\uC624\uB824\uBA74 \uD55C \uC904\uC5D0 \uD55C \uB2E8\uC5B4\uC529 .txt \uD30C\uC77C\uC744 \uC0AC\uC6A9\uD558\uC138\uC694."},btn_tip_click_away:{zh:"\u5931\u7126\u9690\u85CF/\u663E\u793A",en:"Loss of focus hide/show",zh_TW:"\u5931\u7126\u96B1\u85CF/\u986F\u793A",ja:"\u30D5\u30A9\u30FC\u30AB\u30B9\u3092\u5931\u3063\u305F\u6642\u306B\u975E\u8868\u793A/\u8868\u793A",ko:"\uD3EC\uCEE4\uC2A4 \uC783\uC744 \uC2DC \uC228\uAE30\uAE30/\uD45C\uC2DC"},btn_tip_follow_selection:{zh:"\u8DDF\u968F/\u56FA\u5B9A\u6A21\u5F0F",en:"Follow/Fixed Mode",zh_TW:"\u8DDF\u96A8/\u56FA\u5B9A\u6A21\u5F0F",ja:"\u8FFD\u5F93/\u56FA\u5B9A\u30E2\u30FC\u30C9",ko:"\uB530\uB77C\uAC00\uAE30/\uACE0\uC815 \uBAA8\uB4DC"},btn_tip_simple_style:{zh:"\u8FF7\u4F60/\u5E38\u89C4\u6A21\u5F0F",en:"Mini/Regular Mode",zh_TW:"\u8FF7\u4F60/\u5E38\u898F\u6A21\u5F0F",ja:"\u30DF\u30CB/\u901A\u5E38\u30E2\u30FC\u30C9",ko:"\uBBF8\uB2C8/\uC77C\uBC18 \uBAA8\uB4DC"},api_placeholder:{zh:"\u5360\u4F4D\u7B26",en:"Placeholder",zh_TW:"\u4F54\u4F4D\u7B26",ja:"\u30D7\u30EC\u30FC\u30B9\u30DB\u30EB\u30C0\u30FC",ko:"\uD50C\uB808\uC774\uC2A4\uD640\uB354"},api_placetag:{zh:"\u5360\u4F4D\u6807\u7B7E",en:"Placeholder tags",zh_TW:"\u4F54\u4F4D\u6A19",ja:"\u30D7\u30EC\u30FC\u30B9\u30DB\u30EB\u30C0\u30BF\u30B0",ko:"\uD50C\uB808\uC774\uC2A4\uD640\uB354 \uD0DC\uADF8"},detected_lang:{zh:"\u8BED\u8A00\u68C0\u6D4B",en:"Language detection",zh_TW:"\u8A9E\u8A00\u5075\u6E2C",ja:"\u8A00\u8A9E\u691C\u51FA",ko:"\uC5B8\uC5B4 \uAC10\uC9C0"},detected_result:{zh:"\u68C0\u6D4B\u7ED3\u679C",en:"Detect result",zh_TW:"\u6AA2\u6E2C\u7D50\u679C",ja:"\u691C\u51FA\u7D50\u679C",ko:"\uAC10\uC9C0 \uACB0\uACFC"},subtitle_translate:{zh:"\u5B57\u5E55\u7FFB\u8BD1",en:"Subtitle Translation",zh_TW:"\u5B57\u5E55\u7FFB\u8B6F",ja:"\u5B57\u5E55\u7FFB\u8A33",ko:"\uC790\uB9C9 \uBC88\uC5ED"},toggle_subtitle_translate:{zh:"\u542F\u7528\u5B57\u5E55\u7FFB\u8BD1",en:"Enable subtitle translation",zh_TW:"\u555F\u7528\u5B57\u5E55\u7FFB\u8B6F",ja:"\u5B57\u5E55\u7FFB\u8A33\u3092\u6709\u52B9\u306B\u3059\u308B",ko:"\uC790\uB9C9 \uBC88\uC5ED \uD65C\uC131\uD654"},is_bilingual_view:{zh:"\u53CC\u8BED\u663E\u793A",en:"Enable bilingual display",zh_TW:"\u96D9\u8A9E\u986F\u793A",ja:"\u30D0\u30A4\u30EA\u30F3\u30AC\u30EB\u8868\u793A",ko:"\uC774\uC911 \uC5B8\uC5B4 \uD45C\uC2DC"},is_skip_ad:{zh:"\u5FEB\u8FDB\u5E7F\u544A",en:"Skip AD",zh_TW:"\u5FEB\u8F49\u5EE3\u544A",ja:"\u5E83\u544A\u3092\u30B9\u30AD\u30C3\u30D7",ko:"\uAD11\uACE0 \uAC74\uB108\uB6F0\uAE30"},download_subtitles:{zh:"\u4E0B\u8F7D\u5B57\u5E55",en:"Download subtitles",zh_TW:"\u4E0B\u8F7D\u5B57\u5E55",ja:"\u5B57\u5E55\u3092\u30C0\u30A6\u30F3\u30ED\u30FC\u30C9",ko:"\uC790\uB9C9 \uB2E4\uC6B4\uB85C\uB4DC"},background_styles:{zh:"\u80CC\u666F\u6837\u5F0F",en:"DBackground Style",zh_TW:"\u80CC\u666F\u6A23\u5F0F",ja:"\u80CC\u666F\u30B9\u30BF\u30A4\u30EB",ko:"\uBC30\uACBD \uC2A4\uD0C0\uC77C"},origin_styles:{zh:"\u539F\u6587\u6837\u5F0F",en:"Original style",zh_TW:"\u539F\u6587\u6A23\u5F0F",ja:"\u539F\u6587\u30B9\u30BF\u30A4\u30EB",ko:"\uC6D0\uBB38 \uC2A4\uD0C0\uC77C"},translation_styles:{zh:"\u8BD1\u6587\u6837\u5F0F",en:"Translation style",zh_TW:"\u8B6F\u6587\u6A23\u5F0F",ja:"\u7FFB\u8A33\u30B9\u30BF\u30A4\u30EB",ko:"\uBC88\uC5ED\uBB38 \uC2A4\uD0C0\uC77C"},ai_segmentation:{zh:"AI\u667A\u80FD\u65AD\u53E5",en:"AI intelligent punctuation",zh_TW:"AI\u667A\u6167\u65B7\u53E5",ja:"AI\u306B\u3088\u308B\u30A4\u30F3\u30C6\u30EA\u30B8\u30A7\u30F3\u30C8\u306A\u6587\u5206\u5272",ko:"AI \uC9C0\uB2A5\uD615 \uBB38\uC7A5 \uBD84\uB9AC"},ai_chunk_length:{zh:"AI\u5904\u7406\u5207\u5272\u957F\u5EA6(200-20000)",en:"AI processing chunk length(200-20000)",zh_TW:"AI\u5904\u7406\u5207\u5272\u957F\u5EA6(200-20000)",ja:"AI\u51E6\u7406\u306E\u30C1\u30E3\u30F3\u30AF\u9577(200-20000)",ko:"AI \uCC98\uB9AC \uCCAD\uD06C \uAE38\uC774(200-20000)"},subtitle_helper_1:{zh:"1\u3001\u76EE\u524D\u4EC5\u652F\u6301Youtube\u684C\u9762\u7F51\u7AD9\u3002",en:"1. Currently only supports Youtube desktop website.",zh_TW:"1.\u76EE\u524D\u50C5\u652F\u63F4Youtube\u684C\u9762\u7DB2\u7AD9\uFF0C\u4E14\u50C5\u652F\u63F4\u700F\u89BD\u5668\u64F4\u5145\u529F\u80FD\u3002",ja:"1. \u73FE\u5728\u3001Youtube\u306E\u30C7\u30B9\u30AF\u30C8\u30C3\u30D7\u30B5\u30A4\u30C8\u306E\u307F\u30B5\u30DD\u30FC\u30C8\u3057\u3066\u3044\u307E\u3059\u3002",ko:"1. \uD604\uC7AC Youtube \uB370\uC2A4\uD06C\uD1B1 \uC6F9\uC0AC\uC774\uD2B8\uB9CC \uC9C0\uC6D0\uD569\uB2C8\uB2E4."},subtitle_helper_2:{zh:"2\u3001\u63D2\u4EF6\u5185\u7F6E\u57FA\u7840\u7684\u5B57\u5E55\u5408\u5E76\u3001\u65AD\u53E5\u7B97\u6CD5\uFF0C\u53EF\u6EE1\u8DB3\u5927\u90E8\u5206\u60C5\u51B5\u3002",en:"2. The plug-in has built-in basic subtitle merging and sentence segmentation algorithms, which can meet most situations.",zh_TW:"2.\u63D2\u4EF6\u5167\u5EFA\u57FA\u790E\u7684\u5B57\u5E55\u5408\u4F75\u3001\u65B7\u53E5\u6F14\u7B97\u6CD5\uFF0C\u53EF\u6EFF\u8DB3\u5927\u90E8\u5206\u60C5\u6CC1\u3002",ja:"2. \u30D7\u30E9\u30B0\u30A4\u30F3\u306B\u306F\u57FA\u672C\u7684\u306A\u5B57\u5E55\u7D50\u5408\u3068\u6587\u5206\u5272\u30A2\u30EB\u30B4\u30EA\u30BA\u30E0\u304C\u7D44\u307F\u8FBC\u307E\u308C\u3066\u304A\u308A\u3001\u307B\u3068\u3093\u3069\u306E\u72B6\u6CC1\u306B\u5BFE\u5FDC\u3067\u304D\u307E\u3059\u3002",ko:"2. \uD50C\uB7EC\uADF8\uC778\uC5D0\uB294 \uAE30\uBCF8\uC801\uC778 \uC790\uB9C9 \uBCD1\uD569 \uBC0F \uBB38\uC7A5 \uBD84\uB9AC \uC54C\uACE0\uB9AC\uC998\uC774 \uB0B4\uC7A5\uB418\uC5B4 \uC788\uC5B4 \uB300\uBD80\uBD84\uC758 \uC0C1\uD669\uC5D0 \uB300\uC751\uD560 \uC218 \uC788\uC2B5\uB2C8\uB2E4."},subtitle_helper_3:{zh:"3\u3001\u4EA6\u53EF\u4EE5\u542F\u7528AI\u667A\u80FD\u65AD\u53E5\uFF0C\u4F46\u9700\u8003\u8651\u5207\u5272\u957F\u5EA6\u53CAAI\u63A5\u53E3\u80FD\u529B\uFF0C\u53EF\u80FD\u5904\u7406\u65F6\u95F4\u4F1A\u5F88\u957F\uFF0C\u751A\u81F3\u5904\u7406\u5931\u8D25\uFF0C\u5BFC\u81F4\u65E0\u6CD5\u770B\u5230\u5B57\u5E55\u3002",en:"3. You can also enable AI intelligent segmentation, but you need to consider the segmentation length and AI interface capabilities. The processing time may be very long or even fail, resulting in the inability to see subtitles.",zh_TW:"3.\u4EA6\u53EF\u555F\u7528AI\u667A\u80FD\u65B7\u53E5\uFF0C\u4F46\u9700\u8003\u616E\u5207\u5272\u9577\u5EA6\u53CAAI\u4ECB\u9762\u80FD\u529B\uFF0C\u53EF\u80FD\u8655\u7406\u6642\u9593\u6703\u5F88\u9577\uFF0C\u751A\u81F3\u8655\u7406\u5931\u6557\uFF0C\u5C0E\u81F4\u7121\u6CD5\u770B\u5230\u5B57\u5E55\u3002",ja:"3. AI\u30A4\u30F3\u30C6\u30EA\u30B8\u30A7\u30F3\u30C8\u6587\u5206\u5272\u3092\u6709\u52B9\u306B\u3059\u308B\u3053\u3068\u3082\u3067\u304D\u307E\u3059\u304C\u3001\u5206\u5272\u9577\u3068AI\u30A4\u30F3\u30BF\u30FC\u30D5\u30A7\u30FC\u30B9\u306E\u80FD\u529B\u3092\u8003\u616E\u3059\u308B\u5FC5\u8981\u304C\u3042\u308A\u3001\u51E6\u7406\u6642\u9593\u304C\u9577\u304F\u306A\u3063\u305F\u308A\u3001\u5931\u6557\u3057\u3066\u5B57\u5E55\u304C\u8868\u793A\u3055\u308C\u306A\u304F\u306A\u308B\u53EF\u80FD\u6027\u304C\u3042\u308A\u307E\u3059\u3002",ko:"3. AI \uC9C0\uB2A5\uD615 \uBD84\uB9AC\uB97C \uD65C\uC131\uD654\uD560 \uC218\uB3C4 \uC788\uC9C0\uB9CC, \uBD84\uB9AC \uAE38\uC774\uC640 AI \uC778\uD130\uD398\uC774\uC2A4\uC758 \uB2A5\uB825\uC744 \uACE0\uB824\uD574\uC57C \uD558\uBA70, \uCC98\uB9AC \uC2DC\uAC04\uC774 \uB9E4\uC6B0 \uAE38\uAC70\uB098 \uC2E4\uD328\uD558\uC5EC \uC790\uB9C9\uC744 \uBCFC \uC218 \uC5C6\uAC8C \uB420 \uC218\uB3C4 \uC788\uC2B5\uB2C8\uB2E4."},default_styles_example:{zh:"\u9ED8\u8BA4\u6837\u5F0F\u53C2\u8003\uFF1A",en:"Default styles reference:",zh_TW:"\u8A8D\u6A23\u5F0F\u53C3\u8003\uFF1A",ja:"\u30C7\u30D5\u30A9\u30EB\u30C8\u30B9\u30BF\u30A4\u30EB\u306E\u4F8B\uFF1A",ko:"\uAE30\uBCF8 \uC2A4\uD0C0\uC77C \uC608\uC2DC:"},subtitle_load_succeed:{zh:"\u53CC\u8BED\u5B57\u5E55\u52A0\u8F7D\u6210\u529F\uFF01",en:"Bilingual subtitles loaded successfully!",zh_TW:"\u53CC\u8BED\u5B57\u5E55\u52A0\u8F7D\u6210\u529F\uFF01",ja:"\u30D0\u30A4\u30EA\u30F3\u30AC\u30EB\u5B57\u5E55\u306E\u8AAD\u307F\u8FBC\u307F\u306B\u6210\u529F\u3057\u307E\u3057\u305F\uFF01",ko:"\uC774\uC911 \uC5B8\uC5B4 \uC790\uB9C9 \uB85C\uB529 \uC131\uACF5!"},subtitle_load_failed:{zh:"\u53CC\u8BED\u5B57\u5E55\u52A0\u8F7D\u5931\u8D25\uFF01",en:"Failed to load bilingual subtitles!",zh_TW:"\u53CC\u8BED\u5B57\u5E55\u52A0\u8F7D\u5931\u8D25\uFF01",ja:"\u30D0\u30A4\u30EA\u30F3\u30AC\u30EB\u5B57\u5E55\u306E\u8AAD\u307F\u8FBC\u307F\u306B\u5931\u6557\u3057\u307E\u3057\u305F\uFF01",ko:"\uC774\uC911 \uC5B8\uC5B4 \uC790\uB9C9 \uB85C\uB529 \uC2E4\uD328!"},try_get_subtitle_data:{zh:"\u5C1D\u8BD5\u83B7\u53D6\u5B57\u5E55\u6570\u636E\uFF0C\u8BF7\u7A0D\u5019...",en:"Trying to get subtitle data, please wait...",zh_TW:"\u5C1D\u8BD5\u83B7\u53D6\u5B57\u5E55\u6570\u636E\uFF0C\u8BF7\u7A0D\u5019...",ja:"\u5B57\u5E55\u30C7\u30FC\u30BF\u3092\u53D6\u5F97\u3057\u3066\u3044\u307E\u3059\u3002\u304A\u5F85\u3061\u304F\u3060\u3055\u3044...",ko:"\uC790\uB9C9 \uB370\uC774\uD130\uB97C \uAC00\uC838\uC624\uB294 \uC911\uC785\uB2C8\uB2E4. \uC7A0\uC2DC \uAE30\uB2E4\uB824\uC8FC\uC138\uC694..."},subtitle_data_processing:{zh:"\u5B57\u5E55\u6570\u636E\u5904\u7406\u4E2D...",en:"Subtitle data processing...",zh_TW:"\u5B57\u5E55\u6570\u636E\u5904\u7406\u4E2D...",ja:"\u5B57\u5E55\u30C7\u30FC\u30BF\u3092\u51E6\u7406\u4E2D...",ko:"\uC790\uB9C9 \uB370\uC774\uD130 \uCC98\uB9AC \uC911..."},starting_to_process_subtitle:{zh:"\u5F00\u59CB\u5904\u7406\u5B57\u5E55\u6570\u636E...",en:"Starting to process subtitle data...",zh_TW:"\u5F00\u59CB\u5904\u7406\u5B57\u5E55\u6570\u636E...",ja:"\u5B57\u5E55\u30C7\u30FC\u30BF\u306E\u51E6\u7406\u3092\u958B\u59CB\u3057\u307E\u3059...",ko:"\uC790\uB9C9 \uB370\uC774\uD130 \uCC98\uB9AC\uB97C \uC2DC\uC791\uD569\uB2C8\uB2E4..."},subtitle_data_is_ready:{zh:"\u5B57\u5E55\u6570\u636E\u5DF2\u51C6\u5907\u5C31\u7EEA\uFF0C\u8BF7\u70B9\u51FBKT\u6309\u94AE\u52A0\u8F7D",en:"The subtitle data is ready, please click the KT button to load it",zh_TW:"\u5B57\u5E55\u8CC7\u6599\u5DF2\u6E96\u5099\u5C31\u7DD2\uFF0C\u8ACB\u9EDE\u64CAKT\u6309\u9215\u52A0\u8F09",ja:"\u5B57\u5E55\u30C7\u30FC\u30BF\u306E\u6E96\u5099\u304C\u3067\u304D\u307E\u3057\u305F\u3002KT\u30DC\u30BF\u30F3\u3092\u30AF\u30EA\u30C3\u30AF\u3057\u3066\u8AAD\u307F\u8FBC\u3093\u3067\u304F\u3060\u3055\u3044",ko:"\uC790\uB9C9 \uB370\uC774\uD130\uAC00 \uC900\uBE44\uB418\uC5C8\uC2B5\uB2C8\uB2E4. KT \uBC84\uD2BC\uC744 \uD074\uB9AD\uD558\uC5EC \uB85C\uB4DC\uD558\uC138\uC694"},starting_reprocess_events:{zh:"\u91CD\u65B0\u5904\u7406\u5B57\u5E55\u6570\u636E...",en:"Reprocess the subtitle data...",zh_TW:"\u91CD\u65B0\u5904\u7406\u5B57\u5E55\u6570\u636E...",ja:"\u5B57\u5E55\u30C7\u30FC\u30BF\u3092\u518D\u51E6\u7406\u3057\u3066\u3044\u307E\u3059...",ko:"\uC790\uB9C9 \uB370\uC774\uD130\uB97C \uB2E4\uC2DC \uCC98\uB9AC \uC911..."},waitting_for_subtitle:{zh:"\u8BF7\u7B49\u5F85\u5B57\u5E55\u6570\u636E",en:"Please wait for the subtitle data.",zh_TW:"\u8BF7\u7B49\u5F85\u5B57\u5E55\u6570\u636E",ja:"\u5B57\u5E55\u30C7\u30FC\u30BF\u3092\u5F85\u6A5F\u4E2D",ko:"\uC790\uB9C9 \uB370\uC774\uD130\uB97C \uAE30\uB2E4\uB824\uC8FC\uC138\uC694"},ai_processing_pls_wait:{zh:"AI\u5904\u7406\u4E2D\uFF0C\u8BF7\u7A0D\u7B49...",en:"AI processing in progress, please wait...",zh_TW:"AI\u5904\u7406\u4E2D\uFF0C\u8BF7\u7A0D\u7B49...",ja:"AI\u51E6\u7406\u4E2D\u3067\u3059\u3002\u304A\u5F85\u3061\u304F\u3060\u3055\u3044...",ko:"AI \uCC98\uB9AC \uC911\uC785\uB2C8\uB2E4. \uC7A0\uC2DC \uAE30\uB2E4\uB824\uC8FC\uC138\uC694..."},processing_subtitles:{zh:"\u5B57\u5E55\u5904\u7406\u4E2D...",en:"Subtitle processing...",zh_TW:"\u5B57\u5E55\u5904\u7406\u4E2D...",ja:"\u5B57\u5E55\u51E6\u7406\u4E2D...",ko:"\uC790\uB9C9 \uCC98\uB9AC \uC911..."},waiting_subtitles:{zh:"\u7B49\u5F85\u5B57\u5E55\u4E2D",en:"Waiting for subtitles",zh_TW:"\u7B49\u5F85\u5B57\u5E55\u4E2D",ja:"\u5B57\u5E55\u5F85\u6A5F\u4E2D",ko:"\uC790\uB9C9 \uB300\uAE30 \uC911"},subtitle_is_not_yet_ready:{zh:"\u5B57\u5E55\u6570\u636E\u5C1A\u672A\u51C6\u5907\u597D",en:"Subtitle is not yet ready.",zh_TW:"\u5B57\u5E55\u6570\u636E\u5C1A\u672A\u51C6\u5907\u597D",ja:"\u5B57\u5E55\u30C7\u30FC\u30BF\u306E\u6E96\u5099\u304C\u307E\u3060\u3067\u304D\u3066\u3044\u307E\u305B\u3093\u3002",ko:"\uC790\uB9C9 \uB370\uC774\uD130\uAC00 \uC544\uC9C1 \uC900\uBE44\uB418\uC9C0 \uC54A\uC558\uC2B5\uB2C8\uB2E4."},log_level:{zh:"\u65E5\u5FD7\u7EA7\u522B",en:"Log Level",zh_TW:"\u65E5\u8A8C\u7B49\u7D1A",ja:"\u30ED\u30B0\u30EC\u30D9\u30EB",ko:"\uB85C\uADF8 \uB808\uBCA8"},goto_custom_api_example:{zh:"\u70B9\u51FB\u67E5\u770B\u3010\u81EA\u5B9A\u4E49\u63A5\u53E3\u793A\u4F8B\u3011",en:"Click to view [Custom Interface Example]",zh_TW:"\u9EDE\u9078\u67E5\u770B\u3010\u81EA\u8A02\u4ECB\u9762\u7BC4\u4F8B\u3011",ja:"\u3010\u30AB\u30B9\u30BF\u30E0\u30A4\u30F3\u30BF\u30FC\u30D5\u30A7\u30FC\u30B9\u306E\u4F8B\u3011\u3092\u898B\u308B",ko:"[\uC0AC\uC6A9\uC790 \uC9C0\uC815 \uC778\uD130\uD398\uC774\uC2A4 \uC608\uC2DC] \uBCF4\uAE30"},split_paragraph:{zh:"\u5207\u5206\u957F\u6BB5\u843D",en:"Split long paragraph",zh_TW:"\u5207\u5206\u9577\u6BB5\u843D",ja:"\u9577\u3044\u6BB5\u843D\u3092\u5206\u5272",ko:"\uAE34 \uB2E8\uB77D \uB098\uB204\uAE30"},split_length:{zh:"\u5207\u5206\u957F\u5EA6 (0-10000)",en:"Segmentation length(0-10000)",zh_TW:"\u5207\u5206\u9577\u5EA6(0-10000)",ja:"\u5206\u5272\u9577(0-10000)",ko:"\uBD84\uD560 \uAE38\uC774(0-10000)"},highlight_words:{zh:"\u9AD8\u4EAE\u6536\u85CF\u8BCD\u6C47",en:"Highlight favorite words",zh_TW:"\u9AD8\u4EAE\u6536\u85CF\u8A5E\u5F59",ja:"\u304A\u6C17\u306B\u5165\u308A\u5358\u8A9E\u3092\u30CF\u30A4\u30E9\u30A4\u30C8",ko:"\uC990\uACA8\uCC3E\uB294 \uB2E8\uC5B4 \uD558\uC774\uB77C\uC774\uD2B8"},split_disable:{zh:"\u7981\u7528",en:"Disable",zh_TW:"\u505C\u7528",ja:"\u7121\u52B9",ko:"\uBE44\uD65C\uC131\uD654"},split_textlength:{zh:"\u6309\u7167\u957F\u5EA6\u5207\u5206",en:"Split by length",zh_TW:"\u4F9D\u9577\u5EA6\u5207\u5206",ja:"\u9577\u3055\u3067\u5206\u5272",ko:"\uAE38\uC774\uB85C \uB098\uB204\uAE30"},split_punctuation:{zh:"\u6309\u7167\u53E5\u5B50\u5207\u5206",en:"Split by sentence",zh_TW:"\u6309\u7167\u53E5\u5B50\u5207\u5206",ja:"\u6587\u3067\u5206\u5272",ko:"\uBB38\uC7A5\uC73C\uB85C \uB098\uB204\uAE30"},highlight_disable:{zh:"\u7981\u7528",en:"Disable",zh_TW:"\u505C\u7528",ja:"\u7121\u52B9",ko:"\uBE44\uD65C\uC131\uD654"},highlight_beforetrans:{zh:"\u7FFB\u8BD1\u524D\u9AD8\u4EAE",en:"Highlight before translation",zh_TW:"\u7FFB\u8B6F\u524D\u9AD8\u4EAE",ja:"\u7FFB\u8A33\u524D\u306B\u30CF\u30A4\u30E9\u30A4\u30C8",ko:"\uBC88\uC5ED \uC804 \uD558\uC774\uB77C\uC774\uD2B8"},highlight_aftertrans:{zh:"\u7FFB\u8BD1\u540E\u9AD8\u4EAE",en:"Highlight after translation",zh_TW:"\u7FFB\u8B6F\u5F8C\u9AD8\u4EAE",ja:"\u7FFB\u8A33\u5F8C\u306B\u30CF\u30A4\u30E9\u30A4\u30C8",ko:"\uBC88\uC5ED \uD6C4 \uD558\uC774\uB77C\uC774\uD2B8"},pagescroll_root_margin:{zh:"\u6EDA\u52A8\u52A0\u8F7D\u63D0\u524D\u89E6\u53D1 (0-10000px)",en:"Early triggering of scroll loading (0-10000px)",zh_TW:"\u6EFE\u52D5\u8F09\u5165\u63D0\u524D\u89F8\u767C (0-10000px)",ja:"\u30B9\u30AF\u30ED\u30FC\u30EB\u8AAD\u307F\u8FBC\u307F\u306E\u4E8B\u524D\u30C8\u30EA\u30AC\u30FC (0-10000px)",ko:"\uC2A4\uD06C\uB864 \uB85C\uB529 \uBBF8\uB9AC \uD2B8\uB9AC\uAC70 (0-10000px)"},styles_setting:{zh:"\u6837\u5F0F\u8BBE\u7F6E",en:"Style Setting",zh_TW:"\u6A23\u5F0F\u8A2D\u5B9A",ja:"\u30B9\u30BF\u30A4\u30EB\u8A2D\u5B9A",ko:"\uC2A4\uD0C0\uC77C \uC124\uC815"},style_name:{zh:"\u6837\u5F0F\u540D\u79F0",en:"Style Name",zh_TW:"\u6A23\u5F0F\u540D\u7A31",ja:"\u30B9\u30BF\u30A4\u30EB\u540D",ko:"\uC2A4\uD0C0\uC77C \uC774\uB984"},style_code:{zh:"\u6837\u5F0F\u4EE3\u7801",en:"Style Code",zh_TW:"\u6A23\u5F0F\u7A0B\u5F0F\u78BC",ja:"\u30B9\u30BF\u30A4\u30EB\u30B3\u30FC\u30C9",ko:"\uC2A4\uD0C0\uC77C \uCF54\uB4DC"},pre_trans_seconds:{zh:"\u63D0\u524D\u7FFB\u8BD1\u65F6\u957F (10-36000s)",en:"Pre translation seconds (10-36000s)",zh_TW:"\u63D0\u524D\u7FFB\u8BD1\u65F6\u957F (10-36000s)",ja:"\u4E8B\u524D\u7FFB\u8A33\u6642\u9593 (10-36000s)",ko:"\uBBF8\uB9AC \uBC88\uC5ED \uC2DC\uAC04 (10-36000s)"},throttle_trans_interval:{zh:"\u8282\u6D41\u7FFB\u8BD1\u95F4\u9694 (1-3600s)",en:"Throttling translation interval (1-3600s)",zh_TW:"\u8282\u6D41\u7FFB\u8BD1\u95F4\u9694 (1-3600s)",ja:"\u7FFB\u8A33\u9593\u9694\u306E\u30B9\u30ED\u30C3\u30C8\u30EA\u30F3\u30B0 (1-3600s)",ko:"\uBC88\uC5ED \uAC04\uACA9 \uC870\uC808 (1-3600s)"},show_origin_subtitle:{zh:"\u663E\u793A\u539F\u5B57\u5E55",en:"Show original subtitles",zh_TW:"\u663E\u793A\u539F\u5B57\u5E55",ja:"\u539F\u5B57\u5E55\u3092\u8868\u793A",ko:"\uC6D0\uBCF8 \uC790\uB9C9 \uD45C\uC2DC"}};const newI18n=lang=>key=>{var _I18N$key;return((_I18N$key=I18N[key])===null||_I18N$key===void 0?void 0:_I18N$key[lang])||"";}; ;// CONCATENATED MODULE: ./src/config/storage.js const KV_RULES_KEY="kiss-rules_v".concat(APP_VERSION[0],".json");const KV_WORDS_KEY="kiss-words.json";const KV_RULES_SHARE_KEY="kiss-rules-share_v".concat(APP_VERSION[0],".json");const KV_SETTING_KEY="kiss-setting_v".concat(APP_VERSION[0],".json");const KV_SALT_SYNC="KISS-Translator-SYNC";const KV_SALT_SHARE="KISS-Translator-SHARE";const STOKEY_MSAUTH="".concat(APP_NAME,"_msauth");const STOKEY_BDAUTH="".concat(APP_NAME,"_bdauth");const STOKEY_SETTING_OLD="".concat(APP_NAME,"_setting");const STOKEY_RULES_OLD="".concat(APP_NAME,"_rules");const STOKEY_SETTING="".concat(APP_NAME,"_setting_v").concat(APP_VERSION[0]);const STOKEY_RULES="".concat(APP_NAME,"_rules_v").concat(APP_VERSION[0]);const STOKEY_WORDS="".concat(APP_NAME,"_words");const STOKEY_SYNC="".concat(APP_NAME,"_sync");const STOKEY_FAB="".concat(APP_NAME,"_fab");const STOKEY_TRANBOX="".concat(APP_NAME,"_tranbox");const STOKEY_RULESCACHE_PREFIX="".concat(APP_NAME,"_rulescache_");const CACHE_NAME="".concat(APP_NAME,"_cache");const DEFAULT_CACHE_TIMEOUT=(/* unused pure expression or super */ null && (3600*24*7));// 缓存超时时间(7天) ;// CONCATENATED MODULE: ./src/config/url.js @@ -35211,7 +35217,7 @@ const CLIENT_WEB="web";const CLIENT_CHROME="chrome";const CLIENT_EDGE="edge";con ;// CONCATENATED MODULE: ./src/config/index.js ;// CONCATENATED MODULE: ./src/index.js -function App(){var _I18N$about_md;const[lang,setLang]=(0,react.useState)("zh");const{data,loading,error}=useGet("".concat(URL_RAW_PREFIX,"/").concat(I18N===null||I18N===void 0?void 0:(_I18N$about_md=I18N["about_md"])===null||_I18N$about_md===void 0?void 0:_I18N$about_md[lang]));return/*#__PURE__*/(0,jsx_runtime.jsxs)(Paper_Paper,{sx:{padding:2,margin:2},children:[/*#__PURE__*/(0,jsx_runtime.jsx)(Stack_Stack,{spacing:2,direction:"row",justifyContent:"flex-end",children:/*#__PURE__*/(0,jsx_runtime.jsx)(Button_Button,{variant:"text",onClick:()=>{setLang(pre=>pre==="zh"?"en":"zh");},children:lang==="zh"?"ENGLISH":"中文"})}),/*#__PURE__*/(0,jsx_runtime.jsx)(Divider_Divider,{children:/*#__PURE__*/(0,jsx_runtime.jsx)(Link_Link,{href:"https://github.com/fishjar/kiss-translator",children:"KISS Translator v".concat("2.0.8")})}),/*#__PURE__*/(0,jsx_runtime.jsxs)(Stack_Stack,{spacing:2,children:[/*#__PURE__*/(0,jsx_runtime.jsx)(Link_Link,{href:"https://fishjar.github.io/kiss-translator/kiss-translator.user.js",children:"Install/Update Userscript for Tampermonkey/Violentmonkey"}),/*#__PURE__*/(0,jsx_runtime.jsx)(Link_Link,{href:"https://fishjar.github.io/kiss-translator/kiss-translator-ios-safari.user.js",children:"Install/Update Userscript for iOS Safari"}),/*#__PURE__*/(0,jsx_runtime.jsx)(Link_Link,{href:"https://fishjar.github.io/kiss-translator/options.html",children:"Open Options Page"})]}),loading?/*#__PURE__*/(0,jsx_runtime.jsx)("center",{children:/*#__PURE__*/(0,jsx_runtime.jsx)(CircularProgress_CircularProgress,{})}):/*#__PURE__*/(0,jsx_runtime.jsx)(ReactMarkdown,{children:error||data})]});}const src_root=client.createRoot(document.getElementById("root"));src_root.render(/*#__PURE__*/(0,jsx_runtime.jsx)(react.StrictMode,{children:/*#__PURE__*/(0,jsx_runtime.jsx)(App,{})})); +function App(){var _I18N$about_md;const[lang,setLang]=(0,react.useState)("zh");const{data,loading,error}=useGet("".concat(URL_RAW_PREFIX,"/").concat(I18N===null||I18N===void 0?void 0:(_I18N$about_md=I18N["about_md"])===null||_I18N$about_md===void 0?void 0:_I18N$about_md[lang]));return/*#__PURE__*/(0,jsx_runtime.jsxs)(Paper_Paper,{sx:{padding:2,margin:2},children:[/*#__PURE__*/(0,jsx_runtime.jsx)(Stack_Stack,{spacing:2,direction:"row",justifyContent:"flex-end",children:/*#__PURE__*/(0,jsx_runtime.jsx)(Button_Button,{variant:"text",onClick:()=>{setLang(pre=>pre==="zh"?"en":"zh");},children:lang==="zh"?"ENGLISH":"中文"})}),/*#__PURE__*/(0,jsx_runtime.jsx)(Divider_Divider,{children:/*#__PURE__*/(0,jsx_runtime.jsx)(Link_Link,{href:"https://github.com/fishjar/kiss-translator",children:"KISS Translator v".concat("2.0.9")})}),/*#__PURE__*/(0,jsx_runtime.jsxs)(Stack_Stack,{spacing:2,children:[/*#__PURE__*/(0,jsx_runtime.jsx)(Link_Link,{href:"https://fishjar.github.io/kiss-translator/kiss-translator.user.js",children:"Install/Update Userscript for Tampermonkey/Violentmonkey"}),/*#__PURE__*/(0,jsx_runtime.jsx)(Link_Link,{href:"https://fishjar.github.io/kiss-translator/kiss-translator-ios-safari.user.js",children:"Install/Update Userscript for iOS Safari"}),/*#__PURE__*/(0,jsx_runtime.jsx)(Link_Link,{href:"https://fishjar.github.io/kiss-translator/options.html",children:"Open Options Page"})]}),loading?/*#__PURE__*/(0,jsx_runtime.jsx)("center",{children:/*#__PURE__*/(0,jsx_runtime.jsx)(CircularProgress_CircularProgress,{})}):/*#__PURE__*/(0,jsx_runtime.jsx)(ReactMarkdown,{children:error||data})]});}const src_root=client.createRoot(document.getElementById("root"));src_root.render(/*#__PURE__*/(0,jsx_runtime.jsx)(react.StrictMode,{children:/*#__PURE__*/(0,jsx_runtime.jsx)(App,{})})); })(); /******/ })() diff --git a/manifest.firefox.json b/manifest.firefox.json index 92be47a..f6e595d 100644 --- a/manifest.firefox.json +++ b/manifest.firefox.json @@ -2,7 +2,7 @@ "manifest_version": 2, "name": "__MSG_app_name__", "description": "__MSG_app_description__", - "version": "2.0.8", + "version": "2.0.9", "default_locale": "en", "author": "Gabe", "homepage_url": "https://github.com/fishjar/kiss-translator", diff --git a/manifest.json b/manifest.json index 5edd35f..7065b41 100644 --- a/manifest.json +++ b/manifest.json @@ -2,7 +2,7 @@ "manifest_version": 3, "name": "__MSG_app_name__", "description": "__MSG_app_description__", - "version": "2.0.8", + "version": "2.0.9", "default_locale": "en", "author": "Gabe", "homepage_url": "https://github.com/fishjar/kiss-translator", diff --git a/manifest.thunderbird.json b/manifest.thunderbird.json index fe9aef9..b946eb9 100644 --- a/manifest.thunderbird.json +++ b/manifest.thunderbird.json @@ -2,7 +2,7 @@ "manifest_version": 2, "name": "__MSG_app_name__", "description": "__MSG_app_description__", - "version": "2.0.8", + "version": "2.0.9", "default_locale": "en", "author": "Gabe", "homepage_url": "https://github.com/fishjar/kiss-translator", diff --git a/options.js b/options.js index 236a73a..c6238c3 100644 --- a/options.js +++ b/options.js @@ -55599,7 +55599,7 @@ const Alert = /*#__PURE__*/react.forwardRef(function Alert(inProps, ref) { false ? 0 : void 0; /* harmony default export */ const Alert_Alert = (Alert); ;// CONCATENATED MODULE: ./src/config/app.js -const APP_NAME="KISS Translator".trim().split(/\s+/).join("-");const APP_LCNAME=APP_NAME.toLowerCase();const APP_UPNAME=APP_NAME.toUpperCase();const APP_CONSTS={fabID:"".concat(APP_LCNAME,"-fab"),boxID:"".concat(APP_LCNAME,"-box"),popupID:"".concat(APP_LCNAME,"-popup")};const APP_VERSION="2.0.8".split(".");const THEME_LIGHT="light";const THEME_DARK="dark"; +const APP_NAME="KISS Translator".trim().split(/\s+/).join("-");const APP_LCNAME=APP_NAME.toLowerCase();const APP_UPNAME=APP_NAME.toUpperCase();const APP_CONSTS={fabID:"".concat(APP_LCNAME,"-fab"),boxID:"".concat(APP_LCNAME,"-box"),popupID:"".concat(APP_LCNAME,"-popup")};const APP_VERSION="2.0.9".split(".");const THEME_LIGHT="light";const THEME_DARK="dark"; ;// CONCATENATED MODULE: ./src/config/api.js const DEFAULT_HTTP_TIMEOUT=10000;// 调用超时时间 const DEFAULT_FETCH_LIMIT=10;// 默认最大任务数量 @@ -55682,7 +55682,7 @@ temperature:0.0,maxTokens:20480,// think: false, // (OpenAI 兼容接口未支 // thinkIgnore: "qwen3,deepseek-r1", // (OpenAI 兼容接口未支持,暂时移除) isDisabled:false,// 是否不显示, region:""// Azure 专用 -};const defaultApiOpts={[OPT_TRANS_BUILTINAI]:defaultApi,[OPT_TRANS_GOOGLE]:_objectSpread2(_objectSpread2({},defaultApi),{},{url:"https://translate.googleapis.com/translate_a/single"}),[OPT_TRANS_GOOGLE_2]:_objectSpread2(_objectSpread2({},defaultApi),{},{url:"https://translate-pa.googleapis.com/v1/translateHtml",key:"AIzaSyATBXajvzQLTDHEQbcpq0Ihe0vWDHmO520",useBatchFetch:true}),[OPT_TRANS_MICROSOFT]:_objectSpread2(_objectSpread2({},defaultApi),{},{useBatchFetch:true}),[OPT_TRANS_AZUREAI]:_objectSpread2(_objectSpread2({},defaultApi),{},{url:"https://api.cognitive.microsofttranslator.com/translate?api-version=3.0",useBatchFetch:true}),[OPT_TRANS_BAIDU]:_objectSpread2({},defaultApi),[OPT_TRANS_TENCENT]:_objectSpread2(_objectSpread2({},defaultApi),{},{useBatchFetch:true}),[OPT_TRANS_VOLCENGINE]:_objectSpread2({},defaultApi),[OPT_TRANS_DEEPL]:_objectSpread2(_objectSpread2({},defaultApi),{},{url:"https://api-free.deepl.com/v2/translate",useBatchFetch:true}),[OPT_TRANS_DEEPLFREE]:_objectSpread2(_objectSpread2({},defaultApi),{},{fetchLimit:1}),[OPT_TRANS_DEEPLX]:_objectSpread2(_objectSpread2({},defaultApi),{},{url:"http://localhost:1188/translate"}),[OPT_TRANS_NIUTRANS]:_objectSpread2(_objectSpread2({},defaultApi),{},{url:"https://api.niutrans.com/NiuTransServer/translation",dictNo:"",memoryNo:""}),[api_OPT_TRANS_OPENAI]:_objectSpread2(_objectSpread2({},defaultApi),{},{url:"https://api.openai.com/v1/chat/completions",model:"gpt-4",useBatchFetch:true}),[api_OPT_TRANS_GEMINI]:_objectSpread2(_objectSpread2({},defaultApi),{},{url:"https://generativelanguage.googleapis.com/v1/models/".concat(INPUT_PLACE_MODEL,":generateContent?key=").concat(INPUT_PLACE_KEY),model:"gemini-2.5-flash",useBatchFetch:true}),[api_OPT_TRANS_GEMINI_2]:_objectSpread2(_objectSpread2({},defaultApi),{},{url:"https://generativelanguage.googleapis.com/v1beta/openai/chat/completions",model:"gemini-2.0-flash",useBatchFetch:true}),[api_OPT_TRANS_CLAUDE]:_objectSpread2(_objectSpread2({},defaultApi),{},{url:"https://api.anthropic.com/v1/messages",model:"claude-3-haiku-20240307",useBatchFetch:true}),[OPT_TRANS_CLOUDFLAREAI]:_objectSpread2(_objectSpread2({},defaultApi),{},{url:"https://api.cloudflare.com/client/v4/accounts/{{ACCOUNT_ID}}/ai/run/@cf/meta/m2m100-1.2b"}),[api_OPT_TRANS_OLLAMA]:_objectSpread2(_objectSpread2({},defaultApi),{},{url:"http://localhost:11434/v1/chat/completions",model:"llama3.1",useBatchFetch:true}),[api_OPT_TRANS_OPENROUTER]:_objectSpread2(_objectSpread2({},defaultApi),{},{url:"https://openrouter.ai/api/v1/chat/completions",model:"openai/gpt-4o",useBatchFetch:true}),[api_OPT_TRANS_CUSTOMIZE]:_objectSpread2(_objectSpread2({},defaultApi),{},{url:"https://translate.googleapis.com/translate_a/single?client=gtx&dj=1&dt=t&ie=UTF-8&q={{text}}&sl=en&tl=zh-CN",reqHook:defaultRequestHook,resHook:defaultResponseHook})};// 内置翻译接口列表(带参数) +};const defaultApiOpts={[OPT_TRANS_BUILTINAI]:defaultApi,[OPT_TRANS_GOOGLE]:_objectSpread2(_objectSpread2({},defaultApi),{},{url:"https://translate.googleapis.com/translate_a/single"}),[OPT_TRANS_GOOGLE_2]:_objectSpread2(_objectSpread2({},defaultApi),{},{url:"https://translate-pa.googleapis.com/v1/translateHtml",key:"AIzaSyATBXajvzQLTDHEQbcpq0Ihe0vWDHmO520",useBatchFetch:true}),[OPT_TRANS_MICROSOFT]:_objectSpread2(_objectSpread2({},defaultApi),{},{useBatchFetch:true}),[OPT_TRANS_AZUREAI]:_objectSpread2(_objectSpread2({},defaultApi),{},{url:"https://api.cognitive.microsofttranslator.com/translate?api-version=3.0",useBatchFetch:true}),[OPT_TRANS_BAIDU]:_objectSpread2({},defaultApi),[OPT_TRANS_TENCENT]:_objectSpread2(_objectSpread2({},defaultApi),{},{useBatchFetch:true}),[OPT_TRANS_VOLCENGINE]:_objectSpread2({},defaultApi),[OPT_TRANS_DEEPL]:_objectSpread2(_objectSpread2({},defaultApi),{},{url:"https://api-free.deepl.com/v2/translate",useBatchFetch:true}),[OPT_TRANS_DEEPLFREE]:_objectSpread2(_objectSpread2({},defaultApi),{},{fetchLimit:1}),[OPT_TRANS_DEEPLX]:_objectSpread2(_objectSpread2({},defaultApi),{},{url:"http://localhost:1188/translate"}),[OPT_TRANS_NIUTRANS]:_objectSpread2(_objectSpread2({},defaultApi),{},{url:"https://api.niutrans.com/NiuTransServer/translation",dictNo:"",memoryNo:""}),[api_OPT_TRANS_OPENAI]:_objectSpread2(_objectSpread2({},defaultApi),{},{url:"https://api.openai.com/v1/chat/completions",model:"gpt-4",useBatchFetch:true}),[api_OPT_TRANS_GEMINI]:_objectSpread2(_objectSpread2({},defaultApi),{},{url:"https://generativelanguage.googleapis.com/v1/models/".concat(INPUT_PLACE_MODEL,":generateContent?key=").concat(INPUT_PLACE_KEY),model:"gemini-2.5-flash",useBatchFetch:true}),[api_OPT_TRANS_GEMINI_2]:_objectSpread2(_objectSpread2({},defaultApi),{},{url:"https://generativelanguage.googleapis.com/v1beta/openai/chat/completions",model:"gemini-2.0-flash",useBatchFetch:true}),[api_OPT_TRANS_CLAUDE]:_objectSpread2(_objectSpread2({},defaultApi),{},{url:"https://api.anthropic.com/v1/messages",model:"claude-3-haiku-20240307",useBatchFetch:true}),[OPT_TRANS_CLOUDFLAREAI]:_objectSpread2(_objectSpread2({},defaultApi),{},{url:"https://api.cloudflare.com/client/v4/accounts/{{ACCOUNT_ID}}/ai/run/@cf/meta/m2m100-1.2b"}),[api_OPT_TRANS_OLLAMA]:_objectSpread2(_objectSpread2({},defaultApi),{},{url:"http://localhost:11434/v1/chat/completions",model:"llama3.1",useBatchFetch:true}),[api_OPT_TRANS_OPENROUTER]:_objectSpread2(_objectSpread2({},defaultApi),{},{url:"https://openrouter.ai/api/v1/chat/completions",model:"openai/gpt-4o",useBatchFetch:true}),[api_OPT_TRANS_CUSTOMIZE]:_objectSpread2(_objectSpread2({},defaultApi),{},{reqHook:defaultRequestHook,resHook:defaultResponseHook})};// 内置翻译接口列表(带参数) const DEFAULT_API_LIST=OPT_ALL_TRANS_TYPES.map(apiType=>_objectSpread2(_objectSpread2({},defaultApiOpts[apiType]),{},{apiSlug:apiType,apiName:apiType,apiType}));const DEFAULT_API_TYPE=OPT_TRANS_MICROSOFT;const DEFAULT_API_SETTING=DEFAULT_API_LIST.find(a=>a.apiType===DEFAULT_API_TYPE); ;// CONCATENATED MODULE: ./src/config/styles.js const OPT_STYLE_NONE="style_none";// 无 @@ -55919,7 +55919,13 @@ rootMargin:500,// 提前触发翻译 customStyles:DEFAULT_CUSTOM_STYLES// 自定义样式列表 }; ;// CONCATENATED MODULE: ./src/config/i18n.js -const UI_LANGS=[["en","English"],["zh","简体中文"],["zh_TW","繁體中文"]];const customApiLangs="[\"en\", \"English - English\"],\n[\"zh-CN\", \"Simplified Chinese - \u7B80\u4F53\u4E2D\u6587\"],\n[\"zh-TW\", \"Traditional Chinese - \u7E41\u9AD4\u4E2D\u6587\"],\n[\"ar\", \"Arabic - \u0627\u0644\u0639\u0631\u0628\u064A\u0629\"],\n[\"bg\", \"Bulgarian - \u0411\u044A\u043B\u0433\u0430\u0440\u0441\u043A\u0438\"],\n[\"ca\", \"Catalan - Catal\xE0\"],\n[\"hr\", \"Croatian - Hrvatski\"],\n[\"cs\", \"Czech - \u010Ce\u0161tina\"],\n[\"da\", \"Danish - Dansk\"],\n[\"nl\", \"Dutch - Nederlands\"],\n[\"fi\", \"Finnish - Suomi\"],\n[\"fr\", \"French - Fran\xE7ais\"],\n[\"de\", \"German - Deutsch\"],\n[\"el\", \"Greek - \u0395\u03BB\u03BB\u03B7\u03BD\u03B9\u03BA\u03AC\"],\n[\"hi\", \"Hindi - \u0939\u093F\u0928\u094D\u0926\u0940\"],\n[\"hu\", \"Hungarian - Magyar\"],\n[\"id\", \"Indonesian - Indonesia\"],\n[\"it\", \"Italian - Italiano\"],\n[\"ja\", \"Japanese - \u65E5\u672C\u8A9E\"],\n[\"ko\", \"Korean - \uD55C\uAD6D\uC5B4\"],\n[\"ms\", \"Malay - Melayu\"],\n[\"mt\", \"Maltese - Malti\"],\n[\"nb\", \"Norwegian - Norsk Bokm\xE5l\"],\n[\"pl\", \"Polish - Polski\"],\n[\"pt\", \"Portuguese - Portugu\xEAs\"],\n[\"ro\", \"Romanian - Rom\xE2n\u0103\"],\n[\"ru\", \"Russian - \u0420\u0443\u0441\u0441\u043A\u0438\u0439\"],\n[\"sk\", \"Slovak - Sloven\u010Dina\"],\n[\"sl\", \"Slovenian - Sloven\u0161\u010Dina\"],\n[\"es\", \"Spanish - Espa\xF1ol\"],\n[\"sv\", \"Swedish - Svenska\"],\n[\"ta\", \"Tamil - \u0BA4\u0BAE\u0BBF\u0BB4\u0BCD\"],\n[\"te\", \"Telugu - \u0C24\u0C46\u0C32\u0C41\u0C17\u0C41\"],\n[\"th\", \"Thai - \u0E44\u0E17\u0E22\"],\n[\"tr\", \"Turkish - T\xFCrk\xE7e\"],\n[\"uk\", \"Ukrainian - \u0423\u043A\u0440\u0430\u0457\u043D\u0441\u044C\u043A\u0430\"],\n[\"vi\", \"Vietnamese - Ti\u1EBFng Vi\u1EC7t\"],\n";const customApiHelpZH="// \u8BF7\u6C42\u6570\u636E\u9ED8\u8BA4\u683C\u5F0F\n{\n \"url\": \"{{url}}\",\n \"method\": \"POST\",\n \"headers\": {\n \"Content-type\": \"application/json\",\n \"Authorization\": \"Bearer {{key}}\"\n },\n \"body\": {\n \"text\": \"{{text}}\", // \u5F85\u7FFB\u8BD1\u6587\u5B57\n \"from\": \"{{from}}\", // \u6587\u5B57\u7684\u8BED\u8A00\uFF08\u53EF\u80FD\u4E3A\u7A7A\uFF09\n \"to\": \"{{to}}\", // \u76EE\u6807\u8BED\u8A00\n },\n}\n\n\n// \u8FD4\u56DE\u6570\u636E\u9ED8\u8BA4\u683C\u5F0F\n{\n text: \"\", // \u7FFB\u8BD1\u540E\u7684\u6587\u5B57\n from: \"\", // \u8BC6\u522B\u7684\u6E90\u8BED\u8A00\n to: \"\", // \u76EE\u6807\u8BED\u8A00\uFF08\u53EF\u9009\uFF09\n}\n\n\n// Hook \u8303\u4F8B\n// URL\nhttps://translate.googleapis.com/translate_a/single?client=gtx&dj=1&dt=t&ie=UTF-8&q={{text}}&sl=en&tl=zh-CN\n\n// Request Hook\n(text, from, to, url, key) => [url, {\n headers: {\n \"Content-type\": \"application/json\",\n },\n method: \"GET\",\n body: null,\n}]\n\n// Response Hook\n// \u5176\u4E2D\u8FD4\u56DE\u6570\u7EC4\u7B2C\u4E00\u4E2A\u503C\u8868\u793A\u8BD1\u6587\u5B57\u7B26\u4E32\uFF0C\u7B2C\u4E8C\u4E2A\u503C\u4E3A\u5E03\u5C14\u503C\uFF0C\u8868\u793A\u539F\u6587\u8BED\u8A00\u4E0E\u76EE\u6807\u8BED\u8A00\u662F\u5426\u76F8\u540C\n(res, text, from, to) => [res.sentences.map((item) => item.trans).join(\" \"), to === res.src]\n\n\n// \u652F\u6301\u7684\u8BED\u8A00\u4EE3\u7801\u5982\u4E0B\n".concat(customApiLangs,"\n");const customApiHelpEN="// Default request\n{\n \"url\": \"{{url}}\",\n \"method\": \"POST\",\n \"headers\": {\n \"Content-type\": \"application/json\",\n \"Authorization\": \"Bearer {{key}}\"\n },\n \"body\": {\n \"text\": \"{{text}}\", // Text to be translated\n \"from\": \"{{from}}\", // The language of the text (may be empty)\n \"to\": \"{{to}}\", // Target language\n },\n}\n\n\n// Default response\n{\n text: \"\", // translated text\n from: \"\", // Recognized source language\n to: \"\", // Target language (optional)\n}\n\n\n/// Hook Example\n// URL\nhttps://translate.googleapis.com/translate_a/single?client=gtx&dj=1&dt=t&ie=UTF-8&q={{text}}&sl=en&tl=zh-CN\n\n// Request Hook\n(text, from, to, url, key) => [url, {\n headers: {\n \"Content-type\": \"application/json\",\n },\n method: \"GET\",\n body: null,\n}]\n\n// Response Hook\n// In the returned array, the first value is the translated string, while the second value is a boolean\n// that indicates whether the source language is the same as the target language.\n(res, text, from, to) => [res.sentences.map((item) => item.trans).join(\" \"), to === res.src]\n\n\n// The supported language codes are as follows\n".concat(customApiLangs,"\n");const requestHookHelperZH="1\u3001\u7B2C\u4E00\u4E2A\u53C2\u6570\u5305\u542B\u5982\u4E0B\u5B57\u6BB5\uFF1A'texts', 'from', 'to', 'url', 'key', 'model', 'systemPrompt', ...\n2\u3001\u8FD4\u56DE\u503C\u5FC5\u987B\u662F\u5305\u542B\u4EE5\u4E0B\u5B57\u6BB5\u7684\u5BF9\u8C61\uFF1A 'url', 'body', 'headers', 'method'\n3\u3001\u5982\u8FD4\u56DE\u7A7A\u503C\uFF0C\u5219hook\u51FD\u6570\u4E0D\u4F1A\u4EA7\u751F\u4EFB\u4F55\u6548\u679C\u3002\n\n// \u793A\u4F8B\nasync (args, { url, body, headers, userMsg, method } = {}) => {\n return { url, body, headers, userMsg, method };\n}";const requestHookHelperEN="1. The first parameter contains the following fields: 'texts', 'from', 'to', 'url', 'key', 'model', 'systemPrompt', ...\n2. The return value must be an object containing the following fields: 'url', 'body', 'headers', 'method'\n3. If a null value is returned, the hook function will have no effect.\n\n// Example\nasync (args, { url, body, headers, userMsg, method } = {}) => {\n return { url, body, headers, userMsg, method };\n}";const responsetHookHelperZH="1\u3001\u7B2C\u4E00\u4E2A\u53C2\u6570\u5305\u542B\u5982\u4E0B\u5B57\u6BB5\uFF1A'res', ...\n2\u3001\u8FD4\u56DE\u503C\u5FC5\u987B\u662F\u5305\u542B\u4EE5\u4E0B\u5B57\u6BB5\u7684\u5BF9\u8C61\uFF1A 'translations'\n \uFF08'translations' \u5E94\u4E3A\u4E00\u4E2A\u4E8C\u7EF4\u6570\u7EC4\uFF1A[[\u8BD1\u6587, \u539F\u6587\u8BED\u8A00]]\uFF09\n3\u3001\u5982\u8FD4\u56DE\u7A7A\u503C\uFF0C\u5219hook\u51FD\u6570\u4E0D\u4F1A\u4EA7\u751F\u4EFB\u4F55\u6548\u679C\u3002\n\n// \u793A\u4F8B\nasync ({ res, ...args }) => {\n const translations = [[\"\u4F60\u597D\", \"en\"]];\n const modelMsg = {}; // \u7528\u4E8EAI\u4E0A\u4E0B\u6587\n return { translations, modelMsg };\n}";const responsetHookHelperEN="1. The first parameter contains the following fields: 'res', ...\n2. The return value must be an object containing the following fields: 'translations'\n ('translations' should be a two-dimensional array: [[translation, source language]]).\n3. If a null value is returned, the hook function will have no effect.\n\n// Example\nasync ({ res, ...args }) => {\n const translations = [[\"\u4F60\u597D\", \"en\"]];\n const modelMsg = {}; // For AI context\n return { translations, modelMsg };\n}";const I18N={app_name:{zh:"\u7B80\u7EA6\u7FFB\u8BD1",en:"KISS Translator",zh_TW:"\u7C21\u7D04\u7FFB\u8B6F"},translate:{zh:"\u7FFB\u8BD1",en:"Translate",zh_TW:"\u7FFB\u8B6F"},custom_api_help:{zh:customApiHelpZH,en:customApiHelpEN,zh_TW:customApiHelpZH},request_hook_helper:{zh:requestHookHelperZH,en:requestHookHelperEN,zh_TW:requestHookHelperZH},response_hook_helper:{zh:responsetHookHelperZH,en:responsetHookHelperEN,zh_TW:responsetHookHelperZH},translate_alt:{zh:"\u7FFB\u8BD1",en:"Translate",zh_TW:"\u7FFB\u8B6F"},basic_setting:{zh:"\u57FA\u672C\u8BBE\u7F6E",en:"Basic Setting",zh_TW:"\u57FA\u672C\u8A2D\u5B9A"},rules_setting:{zh:"\u89C4\u5219\u8BBE\u7F6E",en:"Rules Setting",zh_TW:"\u898F\u5247\u8A2D\u5B9A"},apis_setting:{zh:"\u63A5\u53E3\u8BBE\u7F6E",en:"Apis Setting",zh_TW:"API\u8A2D\u5B9A"},sync_setting:{zh:"\u540C\u6B65\u8BBE\u7F6E",en:"Sync Setting",zh_TW:"\u540C\u6B65\u8A2D\u5B9A"},patch_setting:{zh:"\u8865\u4E01\u8BBE\u7F6E",en:"Patch Setting",zh_TW:"\u4FEE\u88DC\u8A2D\u5B9A"},patch_setting_help:{zh:"\u9488\u5BF9\u4E00\u4E9B\u7279\u6B8A\u7F51\u7AD9\u7684\u4FEE\u6B63\u811A\u672C\uFF0C\u4EE5\u4FBF\u7FFB\u8BD1\u8F6F\u4EF6\u5F97\u5230\u66F4\u597D\u7684\u5C55\u793A\u6548\u679C\u3002",en:"Corrected scripts for some special websites so that the translation software can get better display results.",zh_TW:"\u91DD\u5C0D\u67D0\u4E9B\u7279\u6B8A\u7DB2\u7AD9\u7684\u4FEE\u6B63\u8173\u672C\uFF0C\u8B93\u7FFB\u8B6F\u8EDF\u9AD4\u6709\u66F4\u597D\u7684\u986F\u793A\u6548\u679C\u3002"},inject_webfix:{zh:"\u6CE8\u5165\u4FEE\u590D\u8865\u4E01",en:"Inject Webfix",zh_TW:"\u6CE8\u5165\u4FEE\u6B63\u88DC\u4E01"},about:{zh:"\u5173\u4E8E",en:"About",zh_TW:"\u95DC\u65BC"},about_md:{zh:"README.md",en:"README.en.md",zh_TW:"README.md"},about_md_local:{zh:"\u8BF7 [\u70B9\u51FB\u8FD9\u91CC](".concat("https://github.com/fishjar/kiss-translator",") \u67E5\u770B\u8BE6\u60C5\u3002"),en:"Please [click here](".concat("https://github.com/fishjar/kiss-translator",") for details."),zh_TW:"\u8ACB\u3010\u9EDE\u9019\u88E1\u3011\u67E5\u770B\u8A73\u7D30\u5167\u5BB9\u3002"},ui_lang:{zh:"\u754C\u9762\u8BED\u8A00",en:"Interface Language",zh_TW:"\u4ECB\u9762\u8A9E\u8A00"},fetch_limit:{zh:"\u6700\u5927\u5E76\u53D1\u8BF7\u6C42\u6570\u91CF (1-100)",en:"Maximum Number Of Concurrent Requests (1-100)",zh_TW:"\u6700\u5927\u540C\u6642\u8ACB\u6C42\u6578\u91CF (1-100)"},if_think:{zh:"\u542F\u7528\u6216\u7981\u7528\u6A21\u578B\u7684\u6DF1\u5EA6\u601D\u8003\u80FD\u529B",en:"Enable or disable the model\u2019s thinking behavior ",zh_TW:"\u555F\u7528\u6216\u505C\u7528\u6A21\u578B\u7684\u6DF1\u5EA6\u601D\u8003\u80FD\u529B"},think:{zh:"\u542F\u7528\u6DF1\u5EA6\u601D\u8003",en:"enable thinking",zh_TW:"\u555F\u7528\u6DF1\u5EA6\u601D\u8003"},nothink:{zh:"\u7981\u7528\u6DF1\u5EA6\u601D\u8003",en:"disable thinking",zh_TW:"\u505C\u7528\u6DF1\u5EA6\u601D\u8003"},think_ignore:{zh:"\u5FFD\u7565\u4EE5\u4E0B\u6A21\u578B\u7684\u8F93\u51FA,\u9017\u53F7(,)\u5206\u5272,\u5F53\u6A21\u578B\u652F\u6301\u601D\u8003\u4F46ollama\u4E0D\u652F\u6301\u65F6\u9700\u8981\u586B\u5199\u672C\u53C2\u6570",en:"Ignore the block for the following models, comma (,) separated",zh_TW:"\u5FFD\u7565\u4EE5\u4E0B\u6A21\u578B\u7684 \u8F38\u51FA\uFF0C\u4EE5\u9017\u865F (,) \u5206\u9694\uFF1B\u7576\u6A21\u578B\u652F\u63F4\u601D\u8003\u4F46 ollama \u4E0D\u652F\u63F4\u6642\u9700\u8981\u586B\u5BEB\u6B64\u53C3\u6578"},fetch_interval:{zh:"\u6BCF\u6B21\u8BF7\u6C42\u95F4\u9694\u65F6\u95F4 (0-5000ms)",en:"Time Between Requests (0-5000ms)",zh_TW:"\u6BCF\u6B21\u8ACB\u6C42\u9593\u9694\u6642\u9593 (0-5000ms)"},translate_interval:{zh:"\u7FFB\u8BD1\u95F4\u9694\u65F6\u95F4 (10-2000ms)",en:"Translation Interval (10-2000ms)",zh_TW:"\u7FFB\u8B6F\u9593\u9694\u6642\u9593 (10-2000ms)"},http_timeout:{zh:"\u8BF7\u6C42\u8D85\u65F6\u65F6\u95F4 (5000-60000ms)",en:"Request Timeout Time (5000-60000ms)",zh_TW:"\u8ACB\u6C42\u903E\u6642\u6642\u9593 (5000-60000ms)"},custom_header:{zh:"\u81EA\u5B9A\u4E49Header\u53C2\u6570",en:"Custom Header Params"},custom_header_help:{zh:"\u4F7F\u7528JSON\u683C\u5F0F\uFF0C\u4F8B\u5982 \"User-Agent\": \"Mozilla/5.0 (X11; Linux x86_64; rv:141.0) Gecko/20100101 Firefox/141.0\"",en:"Use JSON format, for example \"User-Agent\": \"Mozilla/5.0 (X11; Linux x86_64; rv:141.0) Gecko/20100101 Firefox/141.0\""},custom_body:{zh:"\u81EA\u5B9A\u4E49Body\u53C2\u6570",en:"Custom Body Params"},custom_body_help:{zh:"\u4F7F\u7528JSON\u683C\u5F0F\uFF0C\u4F8B\u5982 \"top_p\": 0.7",en:"Use JSON format, for example \"top_p\": 0.7"},min_translate_length:{zh:"\u6700\u5C0F\u7FFB\u8BD1\u5B57\u7B26\u6570 (1-100)",en:"Minimum number Of Translated Characters (1-100)",zh_TW:"\u6700\u5C0F\u7FFB\u8B6F\u5B57\u5143\u6578 (1-100)"},max_translate_length:{zh:"\u6700\u5927\u7FFB\u8BD1\u5B57\u7B26\u6570 (100-100000)",en:"Maximum number Of Translated Characters (100-100000)",zh_TW:"\u6700\u5927\u7FFB\u8B6F\u5B57\u5143\u6578 (100-100000)"},num_of_newline_characters:{zh:"\u6362\u884C\u5B57\u7B26\u6570 (1-1000)",en:"Number of Newline Characters (1-1000)",zh_TW:"\u63DB\u884C\u5B57\u5143\u6578 (1-1000)"},translate_service:{zh:"\u7FFB\u8BD1\u670D\u52A1",en:"Translate Service",zh_TW:"\u7FFB\u8B6F\u670D\u52D9"},translate_service_multiple:{zh:"\u7FFB\u8BD1\u670D\u52A1 (\u652F\u6301\u591A\u9009)",en:"Translation service (multiple supported)",zh_TW:"\u7FFB\u8B6F\u670D\u52D9 (\u652F\u63F4\u591A\u9078)"},translate_timing:{zh:"\u7FFB\u8BD1\u65F6\u673A",en:"Translate Timing",zh_TW:"\u7FFB\u8B6F\u6642\u6A5F"},mk_pagescroll:{zh:"\u6EDA\u52A8\u52A0\u8F7D\u7FFB\u8BD1\uFF08\u63A8\u8350\uFF09",en:"Rolling Loading (Suggested)",zh_TW:"\u6EFE\u52D5\u8F09\u5165\u7FFB\u8B6F\uFF08\u5EFA\u8B70\uFF09"},mk_pageopen:{zh:"\u7ACB\u5373\u5168\u90E8\u7FFB\u8BD1",en:"Translate all now",zh_TW:"\u7ACB\u5373\u5168\u90E8\u7FFB\u8B6F"},mk_mouseover:{zh:"\u9F20\u6807\u60AC\u505C\u7FFB\u8BD1",en:"Mouseover",zh_TW:"\u6ED1\u9F20\u61F8\u505C\u7FFB\u8B6F"},mk_ctrlKey:{zh:"Control + \u9F20\u6807\u60AC\u505C",en:"Control + Mouseover",zh_TW:"Control + \u6ED1\u9F20\u61F8\u505C"},mk_shiftKey:{zh:"Shift + \u9F20\u6807\u60AC\u505C",en:"Shift + Mouseover",zh_TW:"Shift + \u6ED1\u9F20\u61F8\u505C"},mk_altKey:{zh:"Alt + \u9F20\u6807\u60AC\u505C",en:"Alt + Mouseover",zh_TW:"Alt + \u6ED1\u9F20\u61F8\u505C"},from_lang:{zh:"\u539F\u6587\u8BED\u8A00",en:"Source Language",zh_TW:"\u539F\u6587\u8A9E\u8A00"},to_lang:{zh:"\u76EE\u6807\u8BED\u8A00",en:"Target Language",zh_TW:"\u76EE\u6A19\u8A9E\u8A00"},to_lang2:{zh:"\u7B2C\u4E8C\u76EE\u6807\u8BED\u8A00",en:"Target Language 2",zh_TW:"\u7B2C\u4E8C\u76EE\u6A19\u8A9E\u8A00"},to_lang2_helper:{zh:"\u8BBE\u5B9A\u540E\uFF0C\u4E0E\u76EE\u6807\u8BED\u8A00\u4EA7\u751F\u4E92\u8BD1\u6548\u679C\uFF0C\u4F46\u4F9D\u8D56\u8FDC\u7A0B\u8BED\u8A00\u8BC6\u522B\u3002",en:"After setting, it will produce mutual translation effect with the target language, but it relies on remote language recognition.",zh_TW:"\u8A2D\u5B9A\u5F8C\u6703\u8207\u76EE\u6A19\u8A9E\u8A00\u4E92\u8B6F\uFF0C\u4F46\u4F9D\u8CF4\u9060\u7AEF\u8A9E\u8A00\u8B58\u5225\u3002"},text_style:{zh:"\u8BD1\u6587\u6837\u5F0F",en:"Text Style",zh_TW:"\u8B6F\u6587\u6A23\u5F0F"},text_style_alt:{zh:"\u8BD1\u6587\u6837\u5F0F",en:"Text Style",zh_TW:"\u8B6F\u6587\u6A23\u5F0F"},bg_color:{zh:"\u6837\u5F0F\u989C\u8272",en:"Style Color",zh_TW:"\u6A23\u5F0F\u984F\u8272"},remain_unchanged:{zh:"\u4FDD\u7559\u4E0D\u53D8",en:"Remain Unchanged",zh_TW:"\u4FDD\u7559\u4E0D\u8B8A"},google_api:{zh:"\u8C37\u6B4C\u7FFB\u8BD1\u63A5\u53E3",en:"Google Translate API",zh_TW:"Google \u7FFB\u8B6F\u4ECB\u9762"},default_selector:{zh:"\u9ED8\u8BA4\u9009\u62E9\u5668",en:"Default selector",zh_TW:"\u9810\u8A2D\u9078\u64C7\u5668"},selector_rules:{zh:"\u9009\u62E9\u5668\u89C4\u5219",en:"Selector Rules",zh_TW:"\u9078\u64C7\u5668\u898F\u5247"},save:{zh:"\u4FDD\u5B58",en:"Save",zh_TW:"\u5132\u5B58"},edit:{zh:"\u7F16\u8F91",en:"Edit",zh_TW:"\u7DE8\u8F2F"},cancel:{zh:"\u53D6\u6D88",en:"Cancel",zh_TW:"\u53D6\u6D88"},delete:{zh:"\u5220\u9664",en:"Delete",zh_TW:"\u522A\u9664"},reset:{zh:"\u91CD\u7F6E",en:"Reset",zh_TW:"\u91CD\u8A2D"},add:{zh:"\u6DFB\u52A0",en:"Add",zh_TW:"\u65B0\u589E"},inject_rules:{zh:"\u6CE8\u5165\u8BA2\u9605\u89C4\u5219",en:"Inject Subscribe Rules",zh_TW:"\u6CE8\u5165\u8A02\u95B1\u898F\u5247"},personal_rules:{zh:"\u4E2A\u4EBA\u89C4\u5219",en:"Rules",zh_TW:"\u500B\u4EBA\u898F\u5247"},subscribe_rules:{zh:"\u8BA2\u9605\u89C4\u5219",en:"Subscribe",zh_TW:"\u8A02\u95B1\u898F\u5247"},overwrite_subscribe_rules:{zh:"\u8986\u5199\u8BA2\u9605\u89C4\u5219",en:"Overwrite",zh_TW:"\u8986\u5BEB\u8A02\u95B1\u898F\u5247"},subscribe_url:{zh:"\u8BA2\u9605\u5730\u5740",en:"Subscribe URL",zh_TW:"\u8A02\u95B1\u7DB2\u5740"},rules_warn_1:{zh:"1\u3001\u89C4\u5219\u751F\u6548\u7684\u4F18\u5148\u7EA7\u4F9D\u6B21\u4E3A\uFF1A\u4E2A\u4EBA\u89C4\u5219 > \u8BA2\u9605\u89C4\u5219 > \u5168\u5C40\u89C4\u5219\u3002\"\u5168\u5C40\u89C4\u5219\"\u76F8\u5F53\u4E8E\u515C\u5E95\u89C4\u5219\u3002",en:"1. The priority of rules is: personal rules > subscription rules > global rules. \"Global rules\" are like a fallback rule.",zh_TW:"1.\u898F\u5247\u751F\u6548\u7684\u512A\u5148\u9806\u5E8F\u4F9D\u5E8F\u70BA\uFF1A\u500B\u4EBA\u898F\u5247 > \u8A02\u95B1\u898F\u5247 > \u5168\u57DF\u898F\u5247\u3002 \"\u5168\u57DF\u898F\u5247\"\u76F8\u7576\u65BC\u515C\u5E95\u898F\u5247\u3002"},rules_warn_2:{zh:"2\u3001\u201C\u8BA2\u9605\u89C4\u5219\u201D\u9009\u62E9\u6CE8\u5165\u540E\u624D\u4F1A\u751F\u6548\u3002",en:"2. \"Subscription rules\" will take effect only after injection is selected.",zh_TW:"2\u3001\u300C\u8A02\u95B1\u898F\u5247\u300D\u9078\u64C7\u6CE8\u5165\u5F8C\u624D\u6703\u751F\u6548\u3002"},rules_warn_3:{zh:"3\u3001\u5173\u4E8E\u89C4\u5219\u586B\u5199\uFF1A\u8F93\u5165\u6846\u7559\u7A7A\u6216\u4E0B\u62C9\u6846\u9009\u201C*\u201D\u8868\u793A\u91C7\u7528\u5168\u5C40\u89C4\u5219\u3002",en:"3. Regarding filling in the rules: Leave the input box blank or select \"*\" in the drop-down box to use global rule.",zh_TW:"3. \u898F\u5247\u586B\u5BEB\u8AAA\u660E\uFF1A\u8F38\u5165\u6846\u7559\u7A7A\u6216\u4E0B\u62C9\u9078\u64C7\u300C*\u300D\u8868\u793A\u4F7F\u7528\u5168\u57DF\u898F\u5247\u3002"},sync_warn:{zh:"\u6D89\u53CA\u9690\u79C1\u6570\u636E\u7684\u540C\u6B65\u8BF7\u8C28\u614E\u9009\u62E9\u7B2C\u4E09\u65B9\u540C\u6B65\u670D\u52A1\uFF0C\u5EFA\u8BAE\u81EA\u884C\u642D\u5EFA kiss-worker \u6216 WebDAV \u670D\u52A1\u3002",en:"When synchronizing data that involves privacy, please be cautious about choosing third-party sync services. It is recommended to set up your own sync service using kiss-worker or WebDAV.",zh_TW:"\u540C\u6B65\u6D89\u53CA\u96B1\u79C1\u8CC7\u6599\u6642\uFF0C\u8ACB\u8B39\u614E\u9078\u64C7\u7B2C\u4E09\u65B9\u540C\u6B65\u670D\u52D9\uFF1B\u5EFA\u8B70\u81EA\u5EFA kiss-worker \u6216 WebDAV \u670D\u52D9\u3002"},sync_warn_2:{zh:"\u5982\u679C\u670D\u52A1\u5668\u5B58\u5728\u5176\u4ED6\u5BA2\u6237\u7AEF\u540C\u6B65\u7684\u6570\u636E\uFF0C\u7B2C\u4E00\u6B21\u540C\u6B65\u5C06\u76F4\u63A5\u8986\u76D6\u672C\u5730\u914D\u7F6E\uFF0C\u540E\u9762\u5219\u6839\u636E\u4FEE\u6539\u65F6\u95F4\uFF0C\u65B0\u7684\u8986\u76D6\u65E7\u7684\u3002",en:"If the server has data synchronized by other clients, the first synchronization will directly overwrite the local configuration, and later, according to the modification time, the new one will overwrite the old one.",zh_TW:"\u82E5\u4F3A\u670D\u5668\u4E0A\u5B58\u5728\u5176\u4ED6\u7528\u6236\u7AEF\u540C\u6B65\u7684\u8CC7\u6599\uFF0C\u7B2C\u4E00\u6B21\u540C\u6B65\u6703\u76F4\u63A5\u8986\u84CB\u672C\u6A5F\u8A2D\u5B9A\uFF1B\u4E4B\u5F8C\u5247\u4F9D\u4FEE\u6539\u6642\u9593\uFF0C\u7531\u65B0\u7684\u8986\u84CB\u820A\u7684\u3002"},about_sync_api:{zh:"\u81EA\u5EFAkiss-wroker\u6570\u636E\u540C\u6B65\u670D\u52A1",en:"Self-hosting a Kiss-worker data sync service",zh_TW:"\u81EA\u5EFA kiss-wroker \u8CC7\u6599\u540C\u6B65\u670D\u52D9"},about_api:{zh:"1\u3001\u5176\u4E2D BuiltinAI \u4E3A\u6D4F\u89C8\u5668\u5185\u7F6EAI\u7FFB\u8BD1\uFF0C\u76EE\u524D\u4EC5 Chrome 138 \u53CA\u4EE5\u4E0A\u7248\u672C\u5F97\u5230\u652F\u6301\u3002",en:"1. BuiltinAI is the browser's built-in AI translation, which is currently only supported by Chrome 138 and above.",zh_TW:"1.\u5176\u4E2D BuiltinAI \u70BA\u700F\u89BD\u5668\u5167\u5EFAAI\u7FFB\u8B6F\uFF0C\u76EE\u524D\u50C5 Chrome 138 \u4EE5\u4E0A\u7248\u672C\u652F\u63F4\u3002"},about_api_2:{zh:"2\u3001\u5927\u90E8\u5206AI\u63A5\u53E3\u90FD\u4E0EOpenAI\u517C\u5BB9\uFF0C\u56E0\u6B64\u9009\u62E9\u6DFB\u52A0OpenAI\u7C7B\u578B\u5373\u53EF\u3002It should be noted that Prompt has two types: batch translation and nobatch translation. Not all interfaces support batch translation.",en:"2. Most AI interfaces are compatible with OpenAI, so just choose to add the OpenAI type.",zh_TW:"2.\u5927\u90E8\u5206AI\u4ECB\u9762\u90FD\u8207OpenAI\u76F8\u5BB9\uFF0C\u56E0\u6B64\u9078\u64C7\u65B0\u589EOpenAI\u985E\u578B\u5373\u53EF\u3002\u8981\u6CE8\u610F\u7684\u662FPrompt\u5206\u805A\u5408\u7FFB\u8B6F\u548C\u975E\u805A\u5408\u7FFB\u8B6F\u5169\u7A2E\uFF0C\u4E0D\u662F\u6240\u6709\u4ECB\u9762\u90FD\u652F\u63F4\u805A\u5408\u7FFB\u8B6F\u3002"},about_api_3:{zh:"3\u3001\u6682\u672A\u5217\u51FA\u7684\u63A5\u53E3\uFF0C\u7406\u8BBA\u4E0A\u90FD\u53EF\u4EE5\u901A\u8FC7\u81EA\u5B9A\u4E49\u63A5\u53E3 (Custom) \u7684\u5F62\u5F0F\u652F\u6301\u3002",en:"3. Interfaces that have not yet been launched can theoretically be supported through custom interfaces.",zh_TW:"3\u3001\u66AB\u672A\u5217\u51FA\u7684\u4ECB\u9762\uFF0C\u7406\u8AD6\u4E0A\u90FD\u53EF\u900F\u904E\u81EA\u8A02\u4ECB\u9762 (Custom) \u7684\u5F62\u5F0F\u652F\u63F4\u3002"},about_api_proxy:{zh:"\u67E5\u770B\u81EA\u5EFA\u4E00\u4E2A\u7FFB\u8BD1\u63A5\u53E3\u4EE3\u7406",en:"Check out the self-built translation interface proxy",zh_TW:"\u67E5\u770B\u5982\u4F55\u81EA\u5EFA\u7FFB\u8B6F\u4ECB\u9762 Proxy"},setting_helper:{zh:"\u65B0\u65E7\u914D\u7F6E\u5E76\u4E0D\u517C\u5BB9\uFF0C\u5BFC\u51FA\u7684\u65E7\u7248\u914D\u7F6E\uFF0C\u52FF\u518D\u6B21\u5BFC\u5165\u3002",en:"The old and new configurations are not compatible. Do not import the exported old configuration again.",zh_TW:"\u65B0\u820A\u914D\u7F6E\u4E26\u4E0D\u76F8\u5BB9\uFF0C\u532F\u51FA\u7684\u820A\u7248\u914D\u7F6E\uFF0C\u52FF\u518D\u6B21\u532F\u5165\u3002"},style_none:{zh:"\u65E0",en:"None",zh_TW:"\u7121"},under_line:{zh:"\u4E0B\u5212\u76F4\u7EBF",en:"Underline",zh_TW:"\u4E0B\u5283\u76F4\u7DDA"},dot_line:{zh:"\u4E0B\u5212\u70B9\u72B6\u7EBF",en:"Dotted Underline",zh_TW:"\u4E0B\u5283\u9EDE\u72C0\u7DDA"},dash_line:{zh:"\u4E0B\u5212\u865A\u7EBF",en:"Dashed Underline",zh_TW:"\u4E0B\u5283\u865B\u7DDA"},dash_box:{zh:"\u865A\u7EBF\u6846",en:"Dashed Box"},dash_line_bold:{zh:"\u4E0B\u5212\u865A\u7EBF\u52A0\u7C97",en:"Dashed Underline Bold",zh_TW:"\u4E0B\u5283\u865B\u7DDA"},dash_box_bold:{zh:"\u865A\u7EBF\u6846\u52A0\u7C97",en:"Dashed Box Bold",zh_TW:"\u865B\u7DDA\u6846\u52A0\u7C97"},marker:{zh:"\u9A6C\u514B\u7B14",en:"Marker",zh_TW:"\u99AC\u514B\u7B46"},gradient_marker:{zh:"\u6E10\u53D8\u9A6C\u514B\u7B14",en:"Gradient Marker",zh_TW:"\u6F38\u5C64\u99AC\u514B\u7B46"},wavy_line:{zh:"\u4E0B\u5212\u6CE2\u6D6A\u7EBF",en:"Wavy Underline",zh_TW:"\u4E0B\u5283\u6CE2\u6D6A\u7DDA"},wavy_line_bold:{zh:"\u4E0B\u5212\u6CE2\u6D6A\u7EBF\u52A0\u7C97",en:"Wavy Underline Bold",zh_TW:"\u4E0B\u5283\u6CE2\u6D6A\u7DDA\u52A0\u7C97"},fuzzy:{zh:"\u6A21\u7CCA",en:"Fuzzy",zh_TW:"\u6A21\u7CCA"},highlight:{zh:"\u9AD8\u4EAE",en:"Highlight",zh_TW:"\u53CD\u767D\u6A19\u793A"},blockquote:{zh:"\u5F15\u7528",en:"Blockquote",zh_TW:"\u5F15\u7528"},gradient:{zh:"\u6E10\u53D8",en:"Gradient",zh_TW:"\u6F38\u8B8A"},blink:{zh:"\u95EA\u73B0",en:"Blink",zh_TW:"\u9583\u73FE"},glow:{zh:"\u53D1\u5149",en:"Glow",zh_TW:"\u767C\u5149"},colorful:{zh:"\u591A\u5F69",en:"Colorful",zh_TW:"\u591A\u5F69"},setting:{zh:"\u8BBE\u7F6E",en:"Setting",zh_TW:"\u8A2D\u5B9A"},pattern:{zh:"\u5339\u914D\u7F51\u5740",en:"URL pattern",zh_TW:"\u5339\u914D\u7DB2\u5740"},pattern_helper:{zh:"1\u3001\u652F\u6301\u661F\u53F7(*)\u901A\u914D\u7B26\u30022\u3001\u591A\u4E2AURL\u7528\u6362\u884C\u6216\u82F1\u6587\u9017\u53F7\u201C,\u201D\u5206\u9694\u3002",en:"1. Supports the asterisk (*) wildcard character. 2. Separate multiple URLs with newlines or English commas \",\".",zh_TW:"1. \u652F\u63F4\u661F\u865F (*) \u842C\u7528\u5B57\u5143\u30022. \u591A\u500B URL \u8ACB\u4EE5\u63DB\u884C\u6216\u82F1\u6587\u9017\u865F\u300C,\u300D\u5206\u9694\u3002"},selector_helper:{zh:"1\u3001\u9700\u8981\u7FFB\u8BD1\u7684\u76EE\u6807\u5143\u7D20\u30022\u3001\u5F00\u542F\u81EA\u52A8\u626B\u63CF\u9875\u9762\u540E\uFF0C\u672C\u8BBE\u7F6E\u65E0\u6548\u30023\u3001\u9075\u5FAACSS\u9009\u62E9\u5668\u8BED\u6CD5\u3002",en:"1. The target element to be translated. 2. This setting is invalid when automatic page scanning is enabled. 3. Follow the CSS selector syntax.",zh_TW:"1\u3001\u9700\u8981\u7FFB\u8B6F\u7684\u76EE\u6A19\u5143\u7D20\u3002 2.\u958B\u555F\u81EA\u52D5\u6383\u63CF\u9801\u9762\u5F8C\uFF0C\u672C\u8A2D\u5B9A\u7121\u6548\u3002 3.\u9075\u5FAACSS\u9078\u64C7\u5668\u8A9E\u6CD5\u3002"},translate_switch:{zh:"\u5F00\u542F\u7FFB\u8BD1",en:"Translate Switch",zh_TW:"\u958B\u555F\u7FFB\u8B6F"},default_enabled:{zh:"\u9ED8\u8BA4\u5F00\u542F",en:"Enabled",zh_TW:"\u9810\u8A2D\u958B\u555F"},default_disabled:{zh:"\u9ED8\u8BA4\u5173\u95ED",en:"Disabled",zh_TW:"\u9810\u8A2D\u95DC\u9589"},selector:{zh:"\u9009\u62E9\u5668",en:"Selector",zh_TW:"\u9078\u64C7\u5668"},target_selector:{zh:"\u76EE\u6807\u5143\u7D20\u9009\u62E9\u5668",en:"Target element selector",zh_TW:"\u76EE\u6A19\u5143\u7D20\u9078\u64C7\u5668"},keep_selector:{zh:"\u4FDD\u7559\u5143\u7D20\u9009\u62E9\u5668",en:"Keep unchanged selector",zh_TW:"\u4FDD\u7559\u5143\u7D20\u9078\u64C7\u5668"},keep_selector_helper:{zh:"1\u3001\u76EE\u6807\u5143\u7D20\u4E0B\u9762\u9700\u8981\u539F\u6837\u4FDD\u7559\u7684\u5B50\u8282\u70B9\u30022\u3001\u9075\u5FAACSS\u9009\u62E9\u5668\u8BED\u6CD5\u3002",en:"1. The child nodes under the target element need to remain intact. 2. Follow the CSS selector syntax.",zh_TW:"1. \u76EE\u6A19\u5143\u7D20\u4E0B\u7684\u5B50\u7BC0\u9EDE\u9700\u8981\u4FDD\u6301\u539F\u6A23\u3002 2. \u9075\u5FAA CSS \u9078\u64C7\u5668\u8A9E\u6CD5\u3002"},root_selector:{zh:"\u6839\u8282\u70B9\u9009\u62E9\u5668",en:"Root node selector",zh_TW:"\u6839\u7BC0\u9EDE\u9078\u64C7\u5668"},root_selector_helper:{zh:"1\u3001\u7528\u4E8E\u7F29\u5C0F\u9875\u9762\u7FFB\u8BD1\u8303\u56F4\u30022\u3001\u9075\u5FAACSS\u9009\u62E9\u5668\u8BED\u6CD5\u3002",en:"1. Used to narrow the translation scope of the page. 2. Follow the CSS selector syntax.",zh_TW:"1.\u7528\u65BC\u7E2E\u5C0F\u9801\u9762\u7FFB\u8B6F\u7BC4\u570D\u3002 2\u3001\u9075\u5FAACSS\u9078\u64C7\u5668\u8A9E\u6CD5\u3002"},ignore_selector:{zh:"\u4E0D\u7FFB\u8BD1\u8282\u70B9\u9009\u62E9\u5668",en:"Ignore node selectors",zh_TW:"\u4E0D\u7FFB\u8B6F\u7BC0\u9EDE\u9078\u64C7\u5668"},ignore_selector_helper:{zh:"1\u3001\u9700\u8981\u5FFD\u7565\u7684\u8282\u70B9\u30022\u3001\u9075\u5FAACSS\u9009\u62E9\u5668\u8BED\u6CD5\u3002",en:"1. Nodes to be ignored. 2. Follow CSS selector syntax.",zh_TW:"1\u3001\u9700\u8981\u5FFD\u7565\u7684\u7BC0\u9EDE\u3002 2\u3001\u9075\u5FAACSS\u9078\u64C7\u5668\u8A9E\u6CD5\u3002"},terms:{zh:"\u4E13\u4E1A\u672F\u8BED",en:"Terms",zh_TW:"\u5C08\u696D\u8853\u8A9E"},terms_helper:{zh:"1\u3001\u652F\u6301\u6B63\u5219\u8868\u8FBE\u5F0F\u5339\u914D\uFF0C\u65E0\u9700\u659C\u6746\uFF0C\u4E0D\u652F\u6301\u4FEE\u9970\u7B26\u30022\u3001\u591A\u6761\u672F\u8BED\u7528\u6362\u884C\u6216\u5206\u53F7\u201C;\u201D\u9694\u5F00\u30023\u3001\u672F\u8BED\u548C\u8BD1\u6587\u7528\u82F1\u6587\u9017\u53F7\u201C,\u201D\u9694\u5F00\u30024\u3001\u6CA1\u6709\u8BD1\u6587\u89C6\u4E3A\u4E0D\u7FFB\u8BD1\u672F\u8BED\u3002",en:"1. Supports regular expression matching, no slash required, and no modifiers are supported. 2. Separate multiple terms with newlines or semicolons \";\". 3. Terms and translations are separated by English commas \",\". 4. If there is no translation, the term will be deemed not to be translated.",zh_TW:"1. \u652F\u63F4\u6B63\u5247\u8868\u9054\u5F0F\u6BD4\u5C0D\uFF0C\u7121\u9700\u659C\u7DDA\uFF0C\u4E14\u4E0D\u652F\u63F4\u4FEE\u98FE\u7B26\u30022. \u591A\u689D\u8853\u8A9E\u4EE5\u63DB\u884C\u6216\u5206\u865F\u300C;\u300D\u5206\u9694\u30023. \u8853\u8A9E\u8207\u8B6F\u6587\u4EE5\u82F1\u6587\u9017\u865F\u300C,\u300D\u5206\u9694\u30024. \u7121\u8B6F\u6587\u8005\u8996\u70BA\u4E0D\u7FFB\u8B6F\u8A72\u8853\u8A9E\u3002"},ai_terms:{zh:"AI\u4E13\u4E1A\u672F\u8BED",en:"AI Terms",zh_TW:"AI\u5C08\u696D\u8853\u8A9E"},ai_terms_helper:{zh:"1\u3001AI\u667A\u80FD\u66FF\u6362\uFF0C\u4E0D\u652F\u6301\u6B63\u5219\u8868\u8FBE\u5F0F\u30022\u3001\u591A\u6761\u672F\u8BED\u7528\u6362\u884C\u6216\u5206\u53F7\u201C;\u201D\u9694\u5F00\u30023\u3001\u672F\u8BED\u548C\u8BD1\u6587\u7528\u82F1\u6587\u9017\u53F7\u201C,\u201D\u9694\u5F00\u30024\u3001\u6CA1\u6709\u8BD1\u6587\u89C6\u4E3A\u4E0D\u7FFB\u8BD1\u672F\u8BED\u3002",en:"1. AI intelligent replacement does not support regular expressions.2. Separate multiple terms with newlines or semicolons \";\". 3. Terms and translations are separated by English commas \",\". 4. If there is no translation, the term will be deemed not to be translated.",zh_TW:"1.AI\u667A\u80FD\u66FF\u63DB\uFF0C\u4E0D\u652F\u63F4\u6B63\u898F\u8868\u793A\u5F0F\u30022. \u591A\u689D\u8853\u8A9E\u4EE5\u63DB\u884C\u6216\u5206\u865F\u300C;\u300D\u5206\u9694\u30023. \u8853\u8A9E\u8207\u8B6F\u6587\u4EE5\u82F1\u6587\u9017\u865F\u300C,\u300D\u5206\u9694\u30024. \u7121\u8B6F\u6587\u8005\u8996\u70BA\u4E0D\u7FFB\u8B6F\u8A72\u8853\u8A9E\u3002"},text_ext_style:{zh:"\u8BD1\u6587\u9644\u52A0\u6837\u5F0F",en:"Translation additional styles",zh_TW:"\u8B6F\u6587\u9644\u52A0\u6A23\u5F0F"},selector_style:{zh:"\u9009\u62E9\u5668\u8282\u70B9\u6837\u5F0F",en:"Selector Style",zh_TW:"\u9078\u64C7\u5668\u7BC0\u9EDE\u6A23\u5F0F"},terms_style:{zh:"\u4E13\u4E1A\u672F\u8BED\u6837\u5F0F",en:"Terms Style",zh_TW:"\u5C08\u696D\u8853\u8A9E\u6A23\u5F0F"},highlight_style:{zh:"\u8BCD\u6C47\u9AD8\u4EAE\u6837\u5F0F",en:"Fav Words highlight style",zh_TW:"\u8A5E\u5F59\u9AD8\u4EAE\u6A23\u5F0F"},selector_style_helper:{zh:"\u5F00\u542F\u7FFB\u8BD1\u65F6\u6CE8\u5165\u3002",en:"It is injected when translation is turned on.",zh_TW:"\u5728\u958B\u555F\u7FFB\u8B6F\u6642\u6CE8\u5165\u3002"},selector_parent_style:{zh:"\u9009\u62E9\u5668\u7236\u8282\u70B9\u6837\u5F0F",en:"Parent Selector Style",zh_TW:"\u9078\u64C7\u5668\u7236\u7BC0\u9EDE\u6A23\u5F0F"},selector_grand_style:{zh:"\u9009\u62E9\u5668\u7956\u8282\u70B9\u6837\u5F0F",en:"Grand Selector Style",zh_TW:"\u9078\u64C7\u5668\u7956\u7BC0\u9EDE\u6A23\u5F0F"},inject_js:{zh:"\u6CE8\u5165JS",en:"Inject JS",zh_TW:"\u6CE8\u5165 JS"},inject_js_helper:{zh:"\u9884\u52A0\u8F7D\u65F6\u6CE8\u5165\uFF0C\u4E00\u4E2A\u9875\u9762\u4EC5\u8FD0\u884C\u4E00\u6B21\u3002\u5185\u7F6E\u5168\u5C40\u5BF9\u8C61 KT: {\n apiTranslate,\n apiDectect,\n apiSetting,\n apisMap,\n toLang,\n docInfo,\n glossary,\n }",en:"Injected during preload, runs only once per page. Built-in global object KT: {\n apiTranslate,\n apiDectect,\n apiSetting,\n apisMap,\n toLang,\n docInfo,\n glossary,\n }",zh_TW:"\u9810\u5148\u8F09\u5165\u6642\u6CE8\u5165\uFF0C\u4E00\u500B\u9801\u9762\u50C5\u904B\u884C\u4E00\u6B21\u3002\u5167\u5EFA\u5168\u57DF\u7269\u4EF6 KT: {\n apiTranslate,\n apiDectect,\n apiSetting,\n apisMap,\n toLang,\n docInfo,\n glossary,\n }"},inject_css:{zh:"\u6CE8\u5165CSS",en:"Inject CSS",zh_TW:"\u6CE8\u5165 CSS"},inject_css_helper:{zh:"\u9884\u52A0\u8F7D\u65F6\u6CE8\u5165\uFF0C\u4E00\u4E2A\u9875\u9762\u4EC5\u8FD0\u884C\u4E00\u6B21\u3002",en:"Injected during preload, runs only once per page.",zh_TW:"\u9810\u5148\u8F09\u5165\u6642\u6CE8\u5165\uFF0C\u4E00\u500B\u9801\u9762\u50C5\u904B\u884C\u4E00\u6B21\u3002"},fixer_function:{zh:"\u4FEE\u590D\u51FD\u6570",en:"Fixer Function",zh_TW:"\u4FEE\u5FA9\u51FD\u5F0F"},fixer_function_helper:{zh:"1\u3001br\u662F\u5C06
\u6362\u884C\u66FF\u6362\u6210

\u30022\u3001bn\u662F\u5C06\\n\u6362\u884C\u66FF\u6362\u6210

\u30023\u3001brToDiv\u548CbnToDiv\u662F\u66FF\u6362\u6210

\u3002",en:"1. br replaces
line breaks with

. 2. bn replaces \\n newline with

. 3. brToDiv and bnToDiv are replaced with

.",zh_TW:"1. br \u6703\u5C07
\u63DB\u884C\u66FF\u63DB\u70BA

\u30022. bn \u6703\u5C07 \\n \u63DB\u884C\u66FF\u63DB\u70BA

\u30023. brToDiv \u8207 bnToDiv \u6703\u66FF\u63DB\u70BA

\u3002"},import:{zh:"\u5BFC\u5165",en:"Import",zh_TW:"\u532F\u5165"},export:{zh:"\u5BFC\u51FA",en:"Export",zh_TW:"\u532F\u51FA"},export_translation:{zh:"\u5BFC\u51FA\u91CA\u4E49",en:"Export Translation",zh_TW:"\u532F\u51FA\u91CB\u7FA9"},error_cant_be_blank:{zh:"\u4E0D\u80FD\u4E3A\u7A7A",en:"Can not be blank",zh_TW:"\u4E0D\u53EF\u70BA\u7A7A"},error_duplicate_values:{zh:"\u5B58\u5728\u91CD\u590D\u7684\u503C",en:"There are duplicate values",zh_TW:"\u5B58\u5728\u91CD\u8907\u7684\u503C"},error_wrong_file_type:{zh:"\u9519\u8BEF\u7684\u6587\u4EF6\u7C7B\u578B",en:"Wrong file type",zh_TW:"\u6A94\u6848\u985E\u578B\u932F\u8AA4"},error_fetch_url:{zh:"\u8BF7\u68C0\u67E5url\u5730\u5740\u662F\u5426\u6B63\u786E\u6216\u7A0D\u540E\u518D\u8BD5\u3002",en:"Please check if the url address is correct or try again later.",zh_TW:"\u8ACB\u6AA2\u67E5 URL \u662F\u5426\u6B63\u78BA\u6216\u7A0D\u5F8C\u518D\u8A66\u3002"},deepl_api:{zh:"DeepL \u63A5\u53E3",en:"DeepL API",zh_TW:"DeepL \u4ECB\u9762"},deepl_key:{zh:"DeepL \u5BC6\u94A5",en:"DeepL Key",zh_TW:"DeepL \u91D1\u9470"},openai_api:{zh:"OpenAI \u63A5\u53E3",en:"OpenAI API",zh_TW:"OpenAI \u4ECB\u9762"},openai_key:{zh:"OpenAI \u5BC6\u94A5",en:"OpenAI Key",zh_TW:"OpenAI \u91D1\u9470"},openai_model:{zh:"OpenAI \u6A21\u578B",en:"OpenAI Model",zh_TW:"OpenAI \u6A21\u578B"},openai_prompt:{zh:"OpenAI \u63D0\u793A\u8BCD",en:"OpenAI Prompt",zh_TW:"OpenAI \u63D0\u793A\u8A5E"},if_clear_cache:{zh:"\u662F\u5426\u6E05\u9664\u7F13\u5B58\uFF08\u9ED8\u8BA4\u7F13\u5B587\u5929\uFF09",en:"Whether clear cache (Default cache is 7 days)",zh_TW:"\u662F\u5426\u6E05\u9664\u5FEB\u53D6\uFF08\u9810\u8A2D\u5FEB\u53D67\u5929\uFF09"},clear_cache_never:{zh:"\u4E0D\u6E05\u9664\u7F13\u5B58",en:"Never clear cache",zh_TW:"\u4E0D\u6E05\u9664\u5FEB\u53D6"},clear_cache_restart:{zh:"\u91CD\u542F\u6D4F\u89C8\u5668\u65F6\u6E05\u9664\u7F13\u5B58",en:"Clear cache when restarting browser",zh_TW:"\u91CD\u65B0\u555F\u52D5\u700F\u89BD\u5668\u6642\u6E05\u9664\u5FEB\u53D6"},data_sync_type:{zh:"\u6570\u636E\u540C\u6B65\u65B9\u5F0F",en:"Data Sync Type",zh_TW:"\u8CC7\u6599\u540C\u6B65\u65B9\u5F0F"},data_sync_url:{zh:"\u6570\u636E\u540C\u6B65\u63A5\u53E3",en:"Data Sync API",zh_TW:"\u8CC7\u6599\u540C\u6B65\u4ECB\u9762"},data_sync_user:{zh:"\u6570\u636E\u540C\u6B65\u8D26\u6237",en:"Data Sync User",zh_TW:"\u8CC7\u6599\u540C\u6B65\u5E33\u865F"},data_sync_key:{zh:"\u6570\u636E\u540C\u6B65\u5BC6\u94A5",en:"Data Sync Key",zh_TW:"\u8CC7\u6599\u540C\u6B65\u91D1\u9470"},sync_now:{zh:"\u7ACB\u5373\u540C\u6B65",en:"Sync Now",zh_TW:"\u7ACB\u5373\u540C\u6B65"},sync_success:{zh:"\u540C\u6B65\u6210\u529F\uFF01",en:"Sync Success",zh_TW:"\u540C\u6B65\u6210\u529F\uFF01"},sync_failed:{zh:"\u540C\u6B65\u5931\u8D25\uFF01",en:"Sync Error",zh_TW:"\u540C\u6B65\u5931\u6557\uFF01"},error_got_some_wrong:{zh:"\u62B1\u6B49\uFF0C\u51FA\u9519\u4E86\uFF01",en:"Sorry, something went wrong!",zh_TW:"\u62B1\u6B49\uFF0C\u767C\u751F\u932F\u8AA4\uFF01"},error_sync_setting:{zh:"\u60A8\u7684\u540C\u6B65\u7C7B\u578B\u5FC5\u987B\u4E3A\u201CKISS-Worker\u201D\uFF0C\u4E14\u9700\u586B\u5199\u5B8C\u6574",en:"Your sync type must be \"KISS-Worker\" and must be filled in completely",zh_TW:"\u60A8\u7684\u540C\u6B65\u578B\u614B\u5FC5\u9808\u70BA\u300CKISS-Worker\u300D\uFF0C\u4E14\u9700\u586B\u5BEB\u5B8C\u6574\u3002"},click_test:{zh:"\u70B9\u51FB\u6D4B\u8BD5",en:"Click Test",zh_TW:"\u9EDE\u64CA\u6E2C\u8A66"},test_success:{zh:"\u6D4B\u8BD5\u6210\u529F",en:"Test success",zh_TW:"\u6E2C\u8A66\u6210\u529F"},test_failed:{zh:"\u6D4B\u8BD5\u5931\u8D25",en:"Test failed",zh_TW:"\u6E2C\u8A66\u5931\u6557"},clear_all_cache_now:{zh:"\u7ACB\u5373\u6E05\u9664\u5168\u90E8\u7F13\u5B58",en:"Clear all cache now",zh_TW:"\u7ACB\u5373\u6E05\u9664\u5168\u90E8\u5FEB\u53D6"},clear_cache:{zh:"\u6E05\u9664\u7F13\u5B58",en:"Clear Cache",zh_TW:"\u6E05\u9664\u5FEB\u53D6"},clear_success:{zh:"\u6E05\u9664\u6210\u529F",en:"Clear success",zh_TW:"\u6E05\u9664\u6210\u529F"},clear_failed:{zh:"\u6E05\u9664\u5931\u8D25",en:"Clear failed",zh_TW:"\u6E05\u9664\u5931\u6557"},share:{zh:"\u5206\u4EAB",en:"Share",zh_TW:"\u5206\u4EAB"},clear_all:{zh:"\u6E05\u7A7A",en:"Clear All",zh_TW:"\u6E05\u7A7A"},help:{zh:"\u6C42\u52A9",en:"Help",zh_TW:"\u6C42\u52A9"},restore_default:{zh:"\u6062\u590D\u9ED8\u8BA4",en:"Restore Default",zh_TW:"\u6062\u5FA9\u9810\u8A2D"},shortcuts_setting:{zh:"\u5FEB\u6377\u952E\u8BBE\u7F6E",en:"Shortcuts Setting",zh_TW:"\u5FEB\u6377\u9375\u8A2D\u5B9A"},toggle_translate_shortcut:{zh:"\"\u5F00\u542F\u7FFB\u8BD1\"\u5FEB\u6377\u952E",en:"\"Toggle Translate\" Shortcut",zh_TW:"\u300C\u958B\u555F\u7FFB\u8B6F\u300D\u5FEB\u6377\u9375"},toggle_style_shortcut:{zh:"\"\u5207\u6362\u6837\u5F0F\"\u5FEB\u6377\u952E",en:"\"Toggle Style\" Shortcut",zh_TW:"\u300C\u5207\u63DB\u6A23\u5F0F\u300D\u5FEB\u6377\u9375"},toggle_popup_shortcut:{zh:"\"\u6253\u5F00\u5F39\u7A97\"\u5FEB\u6377\u952E",en:"\"Open Popup\" Shortcut",zh_TW:"\u300C\u958B\u555F\u5F48\u7A97\u300D\u5FEB\u6377\u9375"},open_setting_shortcut:{zh:"\"\u6253\u5F00\u8BBE\u7F6E\"\u5FEB\u6377\u952E",en:"\"Open Setting\" Shortcut",zh_TW:"\u300C\u958B\u555F\u8A2D\u5B9A\u300D\u5FEB\u6377\u9375"},hide_fab_button:{zh:"\u9690\u85CF\u60AC\u6D6E\u6309\u94AE",en:"Hide Fab Button",zh_TW:"\u96B1\u85CF\u61F8\u6D6E\u6309\u9215"},fab_click_action:{zh:"\u5355\u51FB\u60AC\u6D6E\u6309\u94AE\u52A8\u4F5C",en:"Single Click Fab Action",zh_TW:"\u55AE\u64CA\u61F8\u6D6E\u6309\u94AE\u52D5\u4F5C"},fab_click_menu:{zh:"\u5F39\u51FA\u83DC\u5355",en:"Popup Menu",zh_TW:"\u5F48\u51FA\u9078\u55AE"},fab_click_translate:{zh:"\u76F4\u63A5\u7FFB\u8BD1",en:"Translate",zh_TW:"\u76F4\u63A5\u7FFB\u8B6F"},hide_tran_button:{zh:"\u9690\u85CF\u7FFB\u8BD1\u6309\u94AE",en:"Hide Translate Button",zh_TW:"\u96B1\u85CF\u7FFB\u8B6F\u6309\u9215"},hide_click_away:{zh:"\u70B9\u51FB\u5916\u90E8\u5173\u95ED\u5F39\u7A97",en:"Click outside to close the pop-up window",zh_TW:"\u9EDE\u64CA\u5916\u90E8\u95DC\u9589\u5F48\u7A97"},use_simple_style:{zh:"\u4F7F\u7528\u7B80\u6D01\u754C\u9762",en:"Use a simple interface",zh_TW:"\u4F7F\u7528\u7C21\u6F54\u4ECB\u9762"},show:{zh:"\u663E\u793A",en:"Show",zh_TW:"\u986F\u793A"},hide:{zh:"\u9690\u85CF",en:"Hide",zh_TW:"\u96B1\u85CF"},save_rule:{zh:"\u4FDD\u5B58\u672C\u7AD9\u89C4\u5219",en:"Save this site rule",zh_TW:"\u4FDD\u5B58\u672C\u7AD9\u898F\u5247"},global_rule:{zh:"\u5168\u5C40\u89C4\u5219",en:"Global Rule",zh_TW:"\u5168\u57DF\u898F\u5247"},input_translate:{zh:"\u8F93\u5165\u6846\u7FFB\u8BD1",en:"Input Box Translation",zh_TW:"\u8F38\u5165\u6846\u7FFB\u8B6F"},use_input_box_translation:{zh:"\u542F\u7528\u8F93\u5165\u6846\u7FFB\u8BD1",en:"Input Box Translation",zh_TW:"\u555F\u7528\u8F38\u5165\u6846\u7FFB\u8B6F"},input_selector:{zh:"\u8F93\u5165\u6846\u9009\u62E9\u5668",en:"Input Selector",zh_TW:"\u8F38\u5165\u6846\u9078\u64C7\u5668"},input_selector_helper:{zh:"\u7528\u4E8E\u8F93\u5165\u6846\u7FFB\u8BD1\u3002",en:"Used for input box translation.",zh_TW:"\u7528\u65BC\u8F38\u5165\u6846\u7FFB\u8B6F\u3002"},trigger_trans_shortcut:{zh:"\u89E6\u53D1\u7FFB\u8BD1\u5FEB\u6377\u952E",en:"Trigger Translation Shortcut Keys",zh_TW:"\u89F8\u767C\u7FFB\u8B6F\u5FEB\u6377\u9375"},trigger_trans_shortcut_help:{zh:"\u9ED8\u8BA4\u4E3A\u5355\u51FB\u201CAltLeft+KeyI\u201D",en:"Default is \"AltLeft+KeyI\"",zh_TW:"\u9810\u8A2D\u70BA\u6309\u4E0B\u300CAltLeft+KeyI\u300D"},shortcut_press_count:{zh:"\u5FEB\u6377\u952E\u8FDE\u51FB\u6B21\u6570",en:"Shortcut Press Number",zh_TW:"\u5FEB\u6377\u9375\u9023\u64CA\u6B21\u6578"},combo_timeout:{zh:"\u8FDE\u51FB\u8D85\u65F6\u65F6\u95F4 (10-1000ms)",en:"Combo Timeout (10-1000ms)",zh_TW:"\u9023\u64CA\u903E\u6642 (10-1000ms)"},input_trans_start_sign:{zh:"\u7FFB\u8BD1\u8D77\u59CB\u6807\u8BC6",en:"Translation Start Sign",zh_TW:"\u7FFB\u8B6F\u8D77\u59CB\u6A19\u8A18"},input_trans_start_sign_help:{zh:"\u6807\u8BC6\u540E\u9762\u53EF\u4EE5\u52A0\u76EE\u6807\u8BED\u8A00\u4EE3\u7801\uFF0C\u5982\uFF1A \u201C/en \u4F60\u597D\u201D\u3001\u201C/zh hello\u201D",en:"The target language code can be added after the sign, such as: \"/en \u4F60\u597D\", \"/zh hello\"",zh_TW:"\u6A19\u8A18\u5F8C\u53EF\u52A0\u4E0A\u76EE\u6A19\u8A9E\u8A00\u4EE3\u78BC\uFF0C\u4F8B\u5982\uFF1A\u300C/en \u4F60\u597D\u300D\u3001\u300C/zh hello\u300D"},detect_lang_remote:{zh:"\u8FDC\u7A0B\u8BED\u8A00\u68C0\u6D4B",en:"Remote language detection",zh_TW:"\u9060\u7AEF\u8A9E\u8A00\u5075\u6E2C"},detect_lang_remote_help:{zh:"\u542F\u7528\u540E\u68C0\u6D4B\u51C6\u786E\u5EA6\u589E\u52A0\uFF0C\u4F46\u4F1A\u964D\u4F4E\u7FFB\u8BD1\u901F\u5EA6\uFF0C\u8BF7\u914C\u60C5\u5F00\u542F",en:"After enabling, the detection accuracy will increase, but it will reduce the translation speed. Please enable it as appropriate.",zh_TW:"\u555F\u7528\u5F8C\u53EF\u63D0\u5347\u5075\u6E2C\u6E96\u78BA\u5EA6\uFF0C\u4F46\u6703\u964D\u4F4E\u7FFB\u8B6F\u901F\u5EA6\uFF0C\u8ACB\u8996\u9700\u8981\u958B\u555F\u3002"},detect_lang_service:{zh:"\u8BED\u8A00\u68C0\u6D4B\u670D\u52A1",en:"Language detect service",zh_TW:"\u8A9E\u8A00\u6AA2\u6E2C\u670D\u52D9"},disable:{zh:"\u7981\u7528",en:"Disable",zh_TW:"\u505C\u7528"},enable:{zh:"\u542F\u7528",en:"Enable",zh_TW:"\u555F\u7528"},selection_translate:{zh:"\u5212\u8BCD\u7FFB\u8BD1",en:"Selection Translation",zh_TW:"\u5283\u8A5E\u7FFB\u8B6F"},toggle_selection_translate:{zh:"\u542F\u7528\u5212\u8BCD\u7FFB\u8BD1",en:"Use Selection Translate",zh_TW:"\u555F\u7528\u5283\u8A5E\u7FFB\u8B6F"},trigger_tranbox_shortcut:{zh:"\u663E\u793A\u7FFB\u8BD1\u6846/\u7FFB\u8BD1\u9009\u4E2D\u6587\u5B57\u5FEB\u6377\u952E",en:"Open Translate Popup/Translate Selected Shortcut",zh_TW:"\u986F\u793A\u7FFB\u8B6F\u6846\uFF0F\u7FFB\u8B6F\u9078\u4E2D\u6587\u5B57\u5FEB\u6377\u9375"},tranbtn_offset_x:{zh:"\u7FFB\u8BD1\u6309\u94AE\u504F\u79FBX\uFF08\xB1200\uFF09",en:"Translate Button Offset X (\xB1200)",zh_TW:"\u7FFB\u8B6F\u6309\u9215\u4F4D\u79FB X\uFF08\xB1200\uFF09"},tranbtn_offset_y:{zh:"\u7FFB\u8BD1\u6309\u94AE\u504F\u79FBY\uFF08\xB1200\uFF09",en:"Translate Button Offset Y (\xB1200)",zh_TW:"\u7FFB\u8B6F\u6309\u9215\u4F4D\u79FB Y\uFF08\xB1200\uFF09"},tranbox_offset_x:{zh:"\u7FFB\u8BD1\u6846\u504F\u79FBX\uFF08\xB1200\uFF09",en:"Translate Box Offset X (\xB1200)",zh_TW:"\u7FFB\u8B6F\u6846\u4F4D\u79FB X\uFF08\xB1200\uFF09"},tranbox_offset_y:{zh:"\u7FFB\u8BD1\u6846\u504F\u79FBY\uFF08\xB1200\uFF09",en:"Translate Box Offset Y (\xB1200)",zh_TW:"\u7FFB\u8B6F\u6846\u4F4D\u79FB Y\uFF08\xB1200\uFF09"},translated_text:{zh:"\u8BD1\u6587",en:"Translated Text",zh_TW:"\u8B6F\u6587"},original_text:{zh:"\u539F\u6587",en:"Original Text",zh_TW:"\u539F\u6587"},favorite_words:{zh:"\u6536\u85CF\u8BCD\u6C47",en:"Favorite Words",zh_TW:"\u6536\u85CF\u8A5E\u5F59"},touch_setting:{zh:"\u89E6\u5C4F\u8BBE\u7F6E",en:"Touch Setting",zh_TW:"\u89F8\u63A7\u8A2D\u5B9A"},touch_translate_shortcut:{zh:"\u89E6\u5C4F\u7FFB\u8BD1\u5FEB\u6377\u65B9\u5F0F (\u652F\u6301\u591A\u9009)",en:"Touch Translate Shortcut (multiple supported)",zh_TW:"\u89F8\u63A7\u7FFB\u8B6F\u6377\u5F91 (\u652F\u63F4\u591A\u9078)"},touch_tap_0:{zh:"\u7981\u7528",en:"Disable",zh_TW:"\u505C\u7528"},touch_tap_2:{zh:"\u53CC\u6307\u8F7B\u89E6",en:"Two finger tap",zh_TW:"\u96D9\u6307\u8F15\u89F8"},touch_tap_3:{zh:"\u4E09\u6307\u8F7B\u89E6",en:"Three finger tap",zh_TW:"\u4E09\u6307\u8F15\u89F8"},touch_tap_4:{zh:"\u56DB\u6307\u8F7B\u89E6",en:"Four finger tap",zh_TW:"\u56DB\u6307\u8F15\u89F8"},touch_tap_5:{zh:"\u5355\u6307\u53CC\u51FB",en:"Double-click",zh_TW:"\u55AE\u6307\u96D9\u64CA"},touch_tap_6:{zh:"\u5355\u6307\u4E09\u51FB",en:"Triple-click",zh_TW:"\u55AE\u6307\u4E09\u64CA"},touch_tap_7:{zh:"\u53CC\u6307\u53CC\u51FB",en:"Two-finger double-click",zh_TW:"\u96D9\u6307\u96D9\u64CA"},translate_blacklist:{zh:"\u7981\u7528\u7FFB\u8BD1\u540D\u5355",en:"Translate Blacklist",zh_TW:"\u505C\u7528\u7FFB\u8B6F\u540D\u55AE"},disabled_orilist:{zh:"\u7981\u7528Origin\u540D\u5355",en:"Disabled Origin List",zh_TW:"\u505C\u7528 Origin \u540D\u55AE"},disabled_csplist:{zh:"\u7981\u7528CSP\u540D\u5355",en:"Disabled CSP List",zh_TW:"\u505C\u7528 CSP \u540D\u55AE"},disabled_csplist_helper:{zh:"3\u3001\u901A\u8FC7\u8C03\u6574CSP\u7B56\u7565\uFF0C\u4F7F\u5F97\u67D0\u4E9B\u9875\u9762\u80FD\u591F\u6CE8\u5165JS/CSS/Media\uFF0C\u8BF7\u8C28\u614E\u4F7F\u7528\uFF0C\u9664\u975E\u60A8\u5DF2\u77E5\u6653\u76F8\u5173\u98CE\u9669\u3002",en:"3. By adjusting the CSP policy, some pages can inject JS/CSS/Media. Please use it with caution unless you are aware of the related risks.",zh_TW:"3. \u900F\u904E\u8ABF\u6574 CSP \u653F\u7B56\uFF0C\u4F7F\u90E8\u5206\u9801\u9762\u53EF\u6CE8\u5165 JS/CSS/Media\u3002\u8ACB\u8B39\u614E\u4F7F\u7528\uFF0C\u9664\u975E\u60A8\u5DF2\u77E5\u6089\u76F8\u95DC\u98A8\u96AA\u3002"},skip_langs:{zh:"\u4E0D\u7FFB\u8BD1\u7684\u8BED\u8A00",en:"Disable Languages",zh_TW:"\u4E0D\u7FFB\u8B6F\u7684\u8A9E\u8A00"},skip_langs_helper:{zh:"\u6B64\u529F\u80FD\u4F9D\u8D56\u51C6\u786E\u7684\u8BED\u8A00\u68C0\u6D4B\uFF0C\u5EFA\u8BAE\u542F\u7528\u8FDC\u7A0B\u8BED\u8A00\u68C0\u6D4B\u3002",en:"This feature relies on accurate language detection. It is recommended to enable remote language detection.",zh_TW:"\u6B64\u529F\u80FD\u4EF0\u8CF4\u6E96\u78BA\u7684\u8A9E\u8A00\u5075\u6E2C\uFF0C\u5EFA\u8B70\u555F\u7528\u9060\u7AEF\u8A9E\u8A00\u5075\u6E2C\u3002"},context_menus:{zh:"\u53F3\u952E\u83DC\u5355",en:"Context Menus",zh_TW:"\u53F3\u9375\u9078\u55AE"},hide_context_menus:{zh:"\u9690\u85CF\u53F3\u952E\u83DC\u5355",en:"Hide Context Menus",zh_TW:"\u96B1\u85CF\u53F3\u9375\u9078\u55AE"},simple_context_menus:{zh:"\u7B80\u5355\u53F3\u952E\u83DC\u5355",en:"Simple_context_menus Context Menus",zh_TW:"\u7C21\u6613\u53F3\u9375\u9078\u55AE"},secondary_context_menus:{zh:"\u4E8C\u7EA7\u53F3\u952E\u83DC\u5355",en:"Secondary Context Menus",zh_TW:"\u6B21\u7D1A\u53F3\u9375\u9078\u55AE"},mulkeys_help:{zh:"\u652F\u6301\u7528\u6362\u884C\u6216\u82F1\u6587\u9017\u53F7\u201C,\u201D\u5206\u9694\uFF0C\u8F6E\u8BE2\u8C03\u7528\u3002",en:"Supports polling calls separated by newlines or English commas \",\".",zh_TW:"\u652F\u63F4\u4EE5\u63DB\u884C\u6216\u82F1\u6587\u9017\u865F\u300C,\u300D\u5206\u9694\uFF0C\u8F2A\u8A62\u547C\u53EB\u3002"},translation_element_tag:{zh:"\u8BD1\u6587\u5143\u7D20\u6807\u7B7E",en:"Translation Element Tag",zh_TW:"\u8B6F\u6587\u5143\u7D20\u6A19\u7C64"},show_only_translations:{zh:"\u4EC5\u663E\u793A\u8BD1\u6587",en:"Show Only Translations",zh_TW:"\u50C5\u986F\u793A\u8B6F\u6587"},show_only_translations_help:{zh:"\u975E\u5B8C\u7F8E\u5B9E\u73B0\uFF0C\u67D0\u4E9B\u9875\u9762\u53EF\u80FD\u6709\u6837\u5F0F\u7B49\u95EE\u9898\u3002",en:"It is not a perfect implementation and some pages may have style issues.",zh_TW:"\u6B64\u70BA\u975E\u5B8C\u7F8E\u5BE6\u4F5C\uFF0C\u90E8\u5206\u9801\u9762\u53EF\u80FD\u51FA\u73FE\u6A23\u5F0F\u7B49\u554F\u984C\u3002"},translate_page_title:{zh:"\u662F\u5426\u7FFB\u8BD1\u9875\u9762\u6807\u9898",en:"Translate Page Title",zh_TW:"\u662F\u5426\u7FFB\u8B6F\u9801\u9762\u6A19\u984C"},more:{zh:"\u66F4\u591A",en:"More",zh_TW:"\u66F4\u591A"},less:{zh:"\u66F4\u5C11",en:"Less",zh_TW:"\u66F4\u5C11"},fixer_selector:{zh:"\u7F51\u9875\u4FEE\u590D\u9009\u62E9\u5668",en:"Fixer Selector",zh_TW:"\u7DB2\u9801\u4FEE\u5FA9\u9078\u64C7\u5668"},reg_niutrans:{zh:"\u83B7\u53D6\u5C0F\u725B\u7FFB\u8BD1\u5BC6\u94A5\u3010\u7B80\u7EA6\u7FFB\u8BD1\u4E13\u5C5E\u65B0\u7528\u6237\u6CE8\u518C\u8D60\u9001300\u4E07\u5B57\u7B26\u3011",en:"Get NiuTrans APIKey [KISS Translator Exclusive New User Registration Free 3 Million Characters]",zh_TW:"\u53D6\u5F97\u5C0F\u725B\u7FFB\u8B6F\u91D1\u9470\u3010\u7C21\u7D04\u7FFB\u8B6F\u5C08\u5C6C\u65B0\u7528\u6236\u8A3B\u518A\u8D08\u9001 300 \u842C\u5B57\u5143\u3011"},trigger_mode:{zh:"\u89E6\u53D1\u65B9\u5F0F",en:"Trigger Mode",zh_TW:"\u89F8\u767C\u65B9\u5F0F"},trigger_click:{zh:"\u70B9\u51FB\u89E6\u53D1",en:"Click Trigger",zh_TW:"\u9EDE\u64CA\u89F8\u767C"},trigger_hover:{zh:"\u9F20\u6807\u60AC\u505C\u89E6\u53D1",en:"Hover Trigger",zh_TW:"\u6ED1\u9F20\u61F8\u505C\u89F8\u767C"},trigger_select:{zh:"\u9009\u4E2D\u89E6\u53D1",en:"Select Trigger",zh_TW:"\u9078\u53D6\u89F8\u767C"},extend_styles:{zh:"\u9644\u52A0\u6837\u5F0F",en:"Extend Styles",zh_TW:"\u9644\u52A0\u6A23\u5F0F"},custom_option:{zh:"\u81EA\u5B9A\u4E49\u9009\u9879",en:"Custom Option",zh_TW:"\u81EA\u8A02\u9078\u9805"},translate_selected_text:{zh:"\u7FFB\u8BD1\u9009\u4E2D\u6587\u5B57",en:"Translate Selected Text",zh_TW:"\u7FFB\u8B6F\u9078\u53D6\u6587\u5B57"},toggle_style:{zh:"\u5207\u6362\u6837\u5F0F",en:"Toggle Style",zh_TW:"\u5207\u63DB\u6A23\u5F0F"},open_menu:{zh:"\u6253\u5F00\u5F39\u7A97\u83DC\u5355",en:"Open Popup Menu",zh_TW:"\u958B\u555F\u5F48\u7A97\u9078\u55AE"},open_setting:{zh:"\u6253\u5F00\u8BBE\u7F6E",en:"Open Setting",zh_TW:"\u958B\u555F\u8A2D\u5B9A"},follow_selection:{zh:"\u7FFB\u8BD1\u6846\u8DDF\u968F\u9009\u4E2D\u6587\u672C",en:"Transbox Follow Selection",zh_TW:"\u7FFB\u8B6F\u6846\u8DDF\u96A8\u9078\u53D6\u6587\u5B57"},tranbox_auto_height:{zh:"\u7FFB\u8BD1\u6846\u81EA\u9002\u5E94\u9AD8\u5EA6",en:"Translation box adaptive height",zh_TW:"\u7FFB\u8B6F\u6846\u81EA\u9069\u61C9\u9AD8\u5EA6"},translate_start_hook:{zh:"\u7FFB\u8BD1\u5F00\u59CB\u94A9\u5B50\u51FD\u6570",en:"Translate Start Hook",zh_TW:"\u7FFB\u8B6F\u958B\u59CB Hook"},translate_start_hook_helper:{zh:"\u7FFB\u8BD1\u524D\u65F6\u8FD0\u884C\uFF0C\u5165\u53C2\u4E3A\uFF1A {text,\n fromLang,\n toLang,\n apiSetting,\n docInfo,\n glossary,}",en:"Run before translation, input parameters are: {text,\n fromLang,\n toLang,\n apiSetting,\n docInfo,\n glossary,}",zh_TW:"\u7FFB\u8B6F\u524D\u6642\u904B\u884C\uFF0C\u5165\u53C3\u70BA\uFF1A {text,\n fromLang,\n toLang,\n apiSetting,\n docInfo,\n glossary,}"},translate_end_hook:{zh:"\u7FFB\u8BD1\u5B8C\u6210\u94A9\u5B50\u51FD\u6570",en:"Translate End Hook",zh_TW:"\u7FFB\u8B6F\u5B8C\u6210 Hook"},translate_end_hook_helper:{zh:"\u7FFB\u8BD1\u5B8C\u6210\u65F6\u8FD0\u884C\uFF0C\u5165\u53C2\u4E3A\uFF1A ({hostNode, parentNode, nodes, wrapperNode, innerNode})",en:"Run when translation is complete, input parameters are: ({hostNode, parentNode, nodes, wrapperNode, innerNode})",zh_TW:"\u7FFB\u8B6F\u5B8C\u6210\u6642\u904B\u884C\uFF0C\u5165\u53C3\u70BA\uFF1A ({hostNode, parentNode, nodes, wrapperNode, innerNode})"},translate_remove_hook:{zh:"\u7FFB\u8BD1\u79FB\u9664\u94A9\u5B50\u51FD\u6570",en:"Translate Removed Hook",zh_TW:"\u7FFB\u8B6F\u79FB\u9664 Hook"},translate_remove_hook_helper:{zh:"\u7FFB\u8BD1\u79FB\u9664\u65F6\u8FD0\u884C\uFF0C\u5165\u53C2\u4E3A\uFF1A \u7FFB\u8BD1\u8282\u70B9\u3002",en:"Run when translation is removed, the input parameters are: translation node.",zh_TW:"\u79FB\u9664\u7FFB\u8B6F\u6642\u57F7\u884C\uFF0C\u5165\u53C3\u70BA\uFF1A\u7FFB\u8B6F\u7BC0\u9EDE\u3002"},english_dict:{zh:"\u82F1\u6587\u8BCD\u5178",en:"English Dictionary",zh_TW:"\u82F1\u6587\u5B57\u5178"},english_suggest:{zh:"\u82F1\u6587\u5EFA\u8BAE",en:"English Suggest",zh_TW:"\u82F1\u6587\u5EFA\u8B70"},api_name:{zh:"\u63A5\u53E3\u540D\u79F0",en:"API Name",zh_TW:"\u4ECB\u9762\u540D\u7A31"},is_disabled:{zh:"\u662F\u5426\u7981\u7528",en:"Is Disabled",zh_TW:"\u662F\u5426\u505C\u7528"},translate_selected:{zh:"\u662F\u5426\u542F\u7528\u5212\u8BCD\u7FFB\u8BD1",en:"If translate selected",zh_TW:"\u662F\u5426\u555F\u7528\u5283\u8A5E\u7FFB\u8B6F"},use_batch_fetch:{zh:"\u662F\u5426\u805A\u5408\u53D1\u9001\u7FFB\u8BD1\u8BF7\u6C42",en:"Whether to aggregate and send translation requests",zh_TW:"\u662F\u5426\u805A\u5408\u767C\u9001\u7FFB\u8B6F\u8ACB\u6C42"},batch_interval:{zh:"\u805A\u5408\u8BF7\u6C42\u7B49\u5F85\u65F6\u95F4(100-10000)",en:"Aggregation request waiting time (100-10000)",zh_TW:"\u805A\u5408\u8ACB\u6C42\u7B49\u5F85\u6642\u9593(100-10000)"},batch_size:{zh:"\u805A\u5408\u8BF7\u6C42\u6700\u5927\u6BB5\u843D\u6570(1-100)",en:"Maximum number of paragraphs in an aggregation request (1-100)",zh_TW:"\u805A\u5408\u8ACB\u6C42\u6700\u5927\u6BB5\u843D\u6578(1-100)"},batch_length:{zh:"\u805A\u5408\u8BF7\u6C42\u6700\u5927\u6587\u672C\u957F\u5EA6(1000-100000)",en:"Maximum text length for aggregation requests (1000-100000)",zh_TW:"\u805A\u5408\u8ACB\u6C42\u6700\u5927\u6587\u5B57\u9577\u5EA6(1000-100000)"},use_context:{zh:"\u662F\u5426\u542F\u7528\u667A\u80FD\u4E0A\u4E0B\u6587",en:"Whether to enable AI context",zh_TW:"\u662F\u5426\u555F\u7528\u667A\u6167\u4E0A\u4E0B\u6587"},context_size:{zh:"\u4E0A\u4E0B\u6587\u4F1A\u8BDD\u6570\u91CF(1-20)",en:"Number of context sessions(1-20)",zh_TW:"\u4E0A\u4E0B\u6587\u6703\u8A71\u6578\u91CF(1-20)"},auto_scan_page:{zh:"\u81EA\u52A8\u626B\u63CF\u9875\u9762",en:"Auto scan page",zh_TW:"\u81EA\u52D5\u6383\u63CF\u9801\u9762"},has_rich_text:{zh:"\u542F\u7528\u5BCC\u6587\u672C\u7FFB\u8BD1",en:"Enable rich text translation",zh_TW:"\u555F\u7528\u5BCC\u6587\u672C\u7FFB\u8B6F"},has_shadowroot:{zh:"\u626B\u63CFShadowroot",en:"Scan Shadowroot",zh_TW:"\u6383\u63CFShadowroot"},mousehover_translate:{zh:"\u9F20\u6807\u60AC\u505C\u7FFB\u8BD1",en:"Mouseover Translation",zh_TW:"\u6ED1\u9F20\u61F8\u505C\u7FFB\u8B6F"},use_mousehover_translation:{zh:"\u542F\u7528\u9F20\u6807\u60AC\u505C\u7FFB\u8BD1",en:"Enable mouseover translation",zh_TW:"\u555F\u7528\u6ED1\u9F20\u61F8\u505C\u7FFB\u8B6F"},selected_translation_alert:{zh:"\u5212\u8BCD\u7FFB\u8BD1\u7684\u5F00\u542F\u548C\u5173\u95ED\u8BF7\u5230\u201C\u89C4\u5219\u8BBE\u7F6E\u201D\u91CC\u9762\u8BBE\u7F6E\u3002",en:"To turn selected translation on or off, please go to \"Rule Settings\".",zh_TW:"\u5283\u8A5E\u7FFB\u8B6F\u7684\u958B\u555F\u548C\u95DC\u9589\u8ACB\u5230\u300C\u898F\u5247\u8A2D\u5B9A\u300D\u88E1\u9762\u8A2D\u5B9A\u3002"},mousehover_key_help:{zh:"\u5F53\u5FEB\u6377\u952E\u7F6E\u7A7A\u65F6\u8868\u793A\u9F20\u6807\u60AC\u505C\u76F4\u63A5\u7FFB\u8BD1",en:"When the shortcut key is empty, it means that the mouse hovers to translate directly",zh_TW:"\u7576\u5FEB\u6377\u9375\u7F6E\u7A7A\u6642\u8868\u793A\u6ED1\u9F20\u61F8\u505C\u76F4\u63A5\u7FFB\u8B6F"},autoscan_alt:{zh:"\u81EA\u52A8\u626B\u63CF",en:"Auto Scan",zh_TW:"\u81EA\u52D5\u6383\u63CF"},shadowroot_alt:{zh:"ShadowRoot",en:"ShadowRoot",zh_TW:"ShadowRoot"},richtext_alt:{zh:"\u4FDD\u7559\u5BCC\u6587\u672C",en:"Rich Text",zh_TW:"\u4FDD\u7559\u5BCC\u6587\u672C"},transonly_alt:{zh:"\u9690\u85CF\u539F\u6587",en:"Hide Original",zh_TW:"\u96B1\u85CF\u539F\u6587"},confirm_title:{zh:"\u786E\u8BA4",en:"Confirm",zh_TW:"\u78BA\u8A8D"},confirm_message:{zh:"\u786E\u5B9A\u64CD\u4F5C\u5417\uFF1F",en:"Are you sure you want to proceed?",zh_TW:"\u78BA\u5B9A\u64CD\u4F5C\u55CE\uFF1F"},confirm_action:{zh:"\u786E\u5B9A",en:"Confirm",zh_TW:"\u78BA\u5B9A"},cancel_action:{zh:"\u53D6\u6D88",en:"Cancel",zh_TW:"\u53D6\u6D88"},pls_press_shortcut:{zh:"\u8BF7\u6309\u4E0B\u5FEB\u6377\u952E\u7EC4\u5408",en:"Please press the shortcut key combination",zh_TW:"\u8ACB\u6309\u4E0B\u5FEB\u901F\u9375\u7D44\u5408"},load_setting_err:{zh:"\u6570\u636E\u52A0\u8F7D\u51FA\u9519\uFF0C\u8BF7\u5237\u65B0\u9875\u9762\u6216\u5378\u8F7D\u540E\u91CD\u65B0\u5B89\u88C5\u3002",en:"Please press the shortcut key combination",zh_TW:"\u8ACB\u6309\u4E0B\u5FEB\u901F\u9375\u7D44\u5408"},translation_style:{zh:"\u7FFB\u8BD1\u98CE\u683C",en:"Translation style",zh_TW:"\u7FFB\u8B6F\u98A8\u683C"},placeholder:{zh:"\u5360\u4F4D\u7B26",en:"Placeholder",zh_TW:"\u4F54\u4F4D\u7B26"},tag_name:{zh:"\u5360\u4F4D\u6807\u7B7E\u540D",en:"Placeholder tag name",zh_TW:"\u4F54\u4F4D\u6A19\u540D"},system_prompt_helper:{zh:"\u5728\u672A\u5B8C\u5168\u7406\u89E3\u9ED8\u8BA4Prompt\u7684\u60C5\u51B5\u4E0B\uFF0C\u8BF7\u52FF\u968F\u610F\u4FEE\u6539\uFF0C\u5426\u5219\u53EF\u80FD\u65E0\u6CD5\u5DE5\u4F5C\u3002",en:"Do not modify the default prompt without fully understanding it, otherwise it may not work.",zh_TW:"\u5728\u672A\u5B8C\u5168\u7406\u89E3\u9810\u8A2DPrompt\u7684\u60C5\u6CC1\u4E0B\uFF0C\u8ACB\u52FF\u96A8\u610F\u4FEE\u6539\uFF0C\u5426\u5247\u53EF\u80FD\u7121\u6CD5\u904B\u4F5C\u3002"},if_pre_init:{zh:"\u662F\u5426\u9884\u521D\u59CB\u5316",en:"Whether to pre-initialize",zh_TW:"\u662F\u5426\u9810\u521D\u59CB\u5316"},export_old:{zh:"\u5BFC\u51FA\u65E7\u7248",en:"Export old version",zh_TW:"\u532F\u51FA\u820A\u7248"},favorite_words_helper:{zh:"\u5BFC\u5165\u8BCD\u6C47\u8BF7\u4F7F\u7528txt\u6587\u4EF6\uFF0C\u6BCF\u4E00\u884C\u4E00\u4E2A\u5355\u8BCD\u3002",en:"To import vocabulary, please use a txt file with one word per line.",zh_TW:"\u532F\u5165\u8A5E\u5F59\u8ACB\u4F7F\u7528txt\u6587\u4EF6\uFF0C\u6BCF\u4E00\u884C\u4E00\u500B\u55AE\u5B57\u3002"},btn_tip_click_away:{zh:"\u5931\u7126\u9690\u85CF/\u663E\u793A",en:"Loss of focus hide/show",zh_TW:"\u5931\u7126\u96B1\u85CF/\u986F\u793A"},btn_tip_follow_selection:{zh:"\u8DDF\u968F/\u56FA\u5B9A\u6A21\u5F0F",en:"Follow/Fixed Mode",zh_TW:"\u8DDF\u96A8/\u56FA\u5B9A\u6A21\u5F0F"},btn_tip_simple_style:{zh:"\u8FF7\u4F60/\u5E38\u89C4\u6A21\u5F0F",en:"Mini/Regular Mode",zh_TW:"\u8FF7\u4F60/\u5E38\u898F\u6A21\u5F0F"},api_placeholder:{zh:"\u5360\u4F4D\u7B26",en:"Placeholder",zh_TW:"\u4F54\u4F4D\u7B26"},api_placetag:{zh:"\u5360\u4F4D\u6807\u7B7E",en:"Placeholder tags",zh_TW:"\u4F54\u4F4D\u6A19"},detected_lang:{zh:"\u8BED\u8A00\u68C0\u6D4B",en:"Language detection",zh_TW:"\u8A9E\u8A00\u5075\u6E2C"},detected_result:{zh:"\u68C0\u6D4B\u7ED3\u679C",en:"Detect result",zh_TW:"\u6AA2\u6E2C\u7D50\u679C"},subtitle_translate:{zh:"\u5B57\u5E55\u7FFB\u8BD1",en:"Subtitle Translation",zh_TW:"\u5B57\u5E55\u7FFB\u8B6F"},toggle_subtitle_translate:{zh:"\u542F\u7528\u5B57\u5E55\u7FFB\u8BD1",en:"Enable subtitle translation",zh_TW:"\u555F\u7528\u5B57\u5E55\u7FFB\u8B6F"},is_bilingual_view:{zh:"\u53CC\u8BED\u663E\u793A",en:"Enable bilingual display",zh_TW:"\u96D9\u8A9E\u986F\u793A"},is_skip_ad:{zh:"\u5FEB\u8FDB\u5E7F\u544A",en:"Skip AD",zh_TW:"\u5FEB\u8F49\u5EE3\u544A"},download_subtitles:{zh:"\u4E0B\u8F7D\u5B57\u5E55",en:"Download subtitles",zh_TW:"\u4E0B\u8F7D\u5B57\u5E55"},background_styles:{zh:"\u80CC\u666F\u6837\u5F0F",en:"DBackground Style",zh_TW:"\u80CC\u666F\u6A23\u5F0F"},origin_styles:{zh:"\u539F\u6587\u6837\u5F0F",en:"Original style",zh_TW:"\u539F\u6587\u6A23\u5F0F"},translation_styles:{zh:"\u8BD1\u6587\u6837\u5F0F",en:"Translation style",zh_TW:"\u8B6F\u6587\u6A23\u5F0F"},ai_segmentation:{zh:"AI\u667A\u80FD\u65AD\u53E5",en:"AI intelligent punctuation",zh_TW:"AI\u667A\u6167\u65B7\u53E5"},ai_chunk_length:{zh:"AI\u5904\u7406\u5207\u5272\u957F\u5EA6(200-20000)",en:"AI processing chunk length(200-20000)",zh_TW:"AI\u5904\u7406\u5207\u5272\u957F\u5EA6(200-20000)"},subtitle_helper_1:{zh:"1\u3001\u76EE\u524D\u4EC5\u652F\u6301Youtube\u684C\u9762\u7F51\u7AD9\u3002",en:"1. Currently only supports Youtube desktop website.",zh_TW:"1.\u76EE\u524D\u50C5\u652F\u63F4Youtube\u684C\u9762\u7DB2\u7AD9\uFF0C\u4E14\u50C5\u652F\u63F4\u700F\u89BD\u5668\u64F4\u5145\u529F\u80FD\u3002"},subtitle_helper_2:{zh:"2\u3001\u63D2\u4EF6\u5185\u7F6E\u57FA\u7840\u7684\u5B57\u5E55\u5408\u5E76\u3001\u65AD\u53E5\u7B97\u6CD5\uFF0C\u53EF\u6EE1\u8DB3\u5927\u90E8\u5206\u60C5\u51B5\u3002",en:"2. The plug-in has built-in basic subtitle merging and sentence segmentation algorithms, which can meet most situations.",zh_TW:"2.\u63D2\u4EF6\u5167\u5EFA\u57FA\u790E\u7684\u5B57\u5E55\u5408\u4F75\u3001\u65B7\u53E5\u6F14\u7B97\u6CD5\uFF0C\u53EF\u6EFF\u8DB3\u5927\u90E8\u5206\u60C5\u6CC1\u3002"},subtitle_helper_3:{zh:"3\u3001\u4EA6\u53EF\u4EE5\u542F\u7528AI\u667A\u80FD\u65AD\u53E5\uFF0C\u4F46\u9700\u8003\u8651\u5207\u5272\u957F\u5EA6\u53CAAI\u63A5\u53E3\u80FD\u529B\uFF0C\u53EF\u80FD\u5904\u7406\u65F6\u95F4\u4F1A\u5F88\u957F\uFF0C\u751A\u81F3\u5904\u7406\u5931\u8D25\uFF0C\u5BFC\u81F4\u65E0\u6CD5\u770B\u5230\u5B57\u5E55\u3002",en:"3. You can also enable AI intelligent segmentation, but you need to consider the segmentation length and AI interface capabilities. The processing time may be very long or even fail, resulting in the inability to see subtitles.",zh_TW:"3.\u4EA6\u53EF\u555F\u7528AI\u667A\u80FD\u65B7\u53E5\uFF0C\u4F46\u9700\u8003\u616E\u5207\u5272\u9577\u5EA6\u53CAAI\u4ECB\u9762\u80FD\u529B\uFF0C\u53EF\u80FD\u8655\u7406\u6642\u9593\u6703\u5F88\u9577\uFF0C\u751A\u81F3\u8655\u7406\u5931\u6557\uFF0C\u5C0E\u81F4\u7121\u6CD5\u770B\u5230\u5B57\u5E55\u3002"},default_styles_example:{zh:"\u9ED8\u8BA4\u6837\u5F0F\u53C2\u8003\uFF1A",en:"Default styles reference:",zh_TW:"\u8A8D\u6A23\u5F0F\u53C3\u8003\uFF1A"},subtitle_load_succeed:{zh:"\u53CC\u8BED\u5B57\u5E55\u52A0\u8F7D\u6210\u529F\uFF01",en:"Bilingual subtitles loaded successfully!",zh_TW:"\u53CC\u8BED\u5B57\u5E55\u52A0\u8F7D\u6210\u529F\uFF01"},subtitle_load_failed:{zh:"\u53CC\u8BED\u5B57\u5E55\u52A0\u8F7D\u5931\u8D25\uFF01",en:"Failed to load bilingual subtitles!",zh_TW:"\u53CC\u8BED\u5B57\u5E55\u52A0\u8F7D\u5931\u8D25\uFF01"},try_get_subtitle_data:{zh:"\u5C1D\u8BD5\u83B7\u53D6\u5B57\u5E55\u6570\u636E\uFF0C\u8BF7\u7A0D\u5019...",en:"Trying to get subtitle data, please wait...",zh_TW:"\u5C1D\u8BD5\u83B7\u53D6\u5B57\u5E55\u6570\u636E\uFF0C\u8BF7\u7A0D\u5019..."},subtitle_data_processing:{zh:"\u5B57\u5E55\u6570\u636E\u5904\u7406\u4E2D...",en:"Subtitle data processing...",zh_TW:"\u5B57\u5E55\u6570\u636E\u5904\u7406\u4E2D..."},starting_to_process_subtitle:{zh:"\u5F00\u59CB\u5904\u7406\u5B57\u5E55\u6570\u636E...",en:"Starting to process subtitle data...",zh_TW:"\u5F00\u59CB\u5904\u7406\u5B57\u5E55\u6570\u636E..."},subtitle_data_is_ready:{zh:"\u5B57\u5E55\u6570\u636E\u5DF2\u51C6\u5907\u5C31\u7EEA\uFF0C\u8BF7\u70B9\u51FBKT\u6309\u94AE\u52A0\u8F7D",en:"The subtitle data is ready, please click the KT button to load it",zh_TW:"\u5B57\u5E55\u8CC7\u6599\u5DF2\u6E96\u5099\u5C31\u7DD2\uFF0C\u8ACB\u9EDE\u64CAKT\u6309\u9215\u52A0\u8F09"},starting_reprocess_events:{zh:"\u91CD\u65B0\u5904\u7406\u5B57\u5E55\u6570\u636E...",en:"Reprocess the subtitle data...",zh_TW:"\u91CD\u65B0\u5904\u7406\u5B57\u5E55\u6570\u636E..."},waitting_for_subtitle:{zh:"\u8BF7\u7B49\u5F85\u5B57\u5E55\u6570\u636E",en:"Please wait for the subtitle data.",zh_TW:"\u8BF7\u7B49\u5F85\u5B57\u5E55\u6570\u636E"},ai_processing_pls_wait:{zh:"AI\u5904\u7406\u4E2D\uFF0C\u8BF7\u7A0D\u7B49...",en:"AI processing in progress, please wait...",zh_TW:"AI\u5904\u7406\u4E2D\uFF0C\u8BF7\u7A0D\u7B49..."},processing_subtitles:{zh:"\u5B57\u5E55\u5904\u7406\u4E2D...",en:"Subtitle processing...",zh_TW:"\u5B57\u5E55\u5904\u7406\u4E2D..."},waiting_subtitles:{zh:"\u7B49\u5F85\u5B57\u5E55\u4E2D",en:"Waiting for subtitles",zh_TW:"\u7B49\u5F85\u5B57\u5E55\u4E2D"},subtitle_is_not_yet_ready:{zh:"\u5B57\u5E55\u6570\u636E\u5C1A\u672A\u51C6\u5907\u597D",en:"Subtitle is not yet ready.",zh_TW:"\u5B57\u5E55\u6570\u636E\u5C1A\u672A\u51C6\u5907\u597D"},log_level:{zh:"\u65E5\u5FD7\u7EA7\u522B",en:"Log Level",zh_TW:"\u65E5\u8A8C\u7B49\u7D1A"},goto_custom_api_example:{zh:"\u70B9\u51FB\u67E5\u770B\u3010\u81EA\u5B9A\u4E49\u63A5\u53E3\u793A\u4F8B\u3011",en:"Click to view [Custom Interface Example]",zh_TW:"\u9EDE\u9078\u67E5\u770B\u3010\u81EA\u8A02\u4ECB\u9762\u7BC4\u4F8B\u3011"},split_paragraph:{zh:"\u5207\u5206\u957F\u6BB5\u843D",en:"Split long paragraph",zh_TW:"\u5207\u5206\u9577\u6BB5\u843D"},split_length:{zh:"\u5207\u5206\u957F\u5EA6 (0-10000)",en:"Segmentation length(0-10000)",zh_TW:"\u5207\u5206\u9577\u5EA6(0-10000)"},highlight_words:{zh:"\u9AD8\u4EAE\u6536\u85CF\u8BCD\u6C47",en:"Highlight favorite words",zh_TW:"\u9AD8\u4EAE\u6536\u85CF\u8A5E\u5F59"},split_disable:{zh:"\u7981\u7528",en:"Disable",zh_TW:"\u505C\u7528"},split_textlength:{zh:"\u6309\u7167\u957F\u5EA6\u5207\u5206",en:"Split by length",zh_TW:"\u4F9D\u9577\u5EA6\u5207\u5206"},split_punctuation:{zh:"\u6309\u7167\u53E5\u5B50\u5207\u5206",en:"Split by sentence",zh_TW:"\u6309\u7167\u53E5\u5B50\u5207\u5206"},highlight_disable:{zh:"\u7981\u7528",en:"Disable",zh_TW:"\u505C\u7528"},highlight_beforetrans:{zh:"\u7FFB\u8BD1\u524D\u9AD8\u4EAE",en:"Highlight before translation",zh_TW:"\u7FFB\u8B6F\u524D\u9AD8\u4EAE"},highlight_aftertrans:{zh:"\u7FFB\u8BD1\u540E\u9AD8\u4EAE",en:"Highlight after translation",zh_TW:"\u7FFB\u8B6F\u5F8C\u9AD8\u4EAE"},pagescroll_root_margin:{zh:"\u6EDA\u52A8\u52A0\u8F7D\u63D0\u524D\u89E6\u53D1 (0-10000px)",en:"Early triggering of scroll loading (0-10000px)",zh_TW:"\u6EFE\u52D5\u8F09\u5165\u63D0\u524D\u89F8\u767C (0-10000px)"},styles_setting:{zh:"\u6837\u5F0F\u8BBE\u7F6E",en:"Style Setting",zh_TW:"\u6A23\u5F0F\u8A2D\u5B9A"},style_name:{zh:"\u6837\u5F0F\u540D\u79F0",en:"Style Name",zh_TW:"\u6A23\u5F0F\u540D\u7A31"},style_code:{zh:"\u6837\u5F0F\u4EE3\u7801",en:"Style Code",zh_TW:"\u6A23\u5F0F\u7A0B\u5F0F\u78BC"},pre_trans_seconds:{zh:"\u63D0\u524D\u7FFB\u8BD1\u65F6\u957F (10-36000s)",en:"Pre translation seconds (10-36000s)",zh_TW:"\u63D0\u524D\u7FFB\u8BD1\u65F6\u957F (10-36000s)"},throttle_trans_interval:{zh:"\u8282\u6D41\u7FFB\u8BD1\u95F4\u9694 (1-3600s)",en:"Throttling translation interval (1-3600s)",zh_TW:"\u8282\u6D41\u7FFB\u8BD1\u95F4\u9694 (1-3600s)"}};const newI18n=lang=>key=>{var _I18N$key;return((_I18N$key=I18N[key])===null||_I18N$key===void 0?void 0:_I18N$key[lang])||"";}; +const UI_LANGS=[["en","English"],["zh","简体中文"],["zh_TW","繁體中文"],["ja","日本語"],["ko","한국어"]];const customApiLangs="[\"en\", \"English - English\"],\n[\"zh-CN\", \"Simplified Chinese - \u7B80\u4F53\u4E2D\u6587\"],\n[\"zh-TW\", \"Traditional Chinese - \u7E41\u9AD4\u4E2D\u6587\"],\n[\"ar\", \"Arabic - \u0627\u0644\u0639\u0631\u0628\u064A\u0629\"],\n[\"bg\", \"Bulgarian - \u0411\u044A\u043B\u0433\u0430\u0440\u0441\u043A\u0438\"],\n[\"ca\", \"Catalan - Catal\xE0\"],\n[\"hr\", \"Croatian - Hrvatski\"],\n[\"cs\", \"Czech - \u010Ce\u0161tina\"],\n[\"da\", \"Danish - Dansk\"],\n[\"nl\", \"Dutch - Nederlands\"],\n[\"fi\", \"Finnish - Suomi\"],\n[\"fr\", \"French - Fran\xE7ais\"],\n[\"de\", \"German - Deutsch\"],\n[\"el\", \"Greek - \u0395\u03BB\u03BB\u03B7\u03BD\u03B9\u03BA\u03AC\"],\n[\"hi\", \"Hindi - \u0939\u093F\u0928\u094D\u0926\u0940\"],\n[\"hu\", \"Hungarian - Magyar\"],\n[\"id\", \"Indonesian - Indonesia\"],\n[\"it\", \"Italian - Italiano\"],\n[\"ja\", \"Japanese - \u65E5\u672C\u8A9E\"],\n[\"ko\", \"Korean - \uD55C\uAD6D\uC5B4\"],\n[\"ms\", \"Malay - Melayu\"],\n[\"mt\", \"Maltese - Malti\"],\n[\"nb\", \"Norwegian - Norsk Bokm\xE5l\"],\n[\"pl\", \"Polish - Polski\"],\n[\"pt\", \"Portuguese - Portugu\xEAs\"],\n[\"ro\", \"Romanian - Rom\xE2n\u0103\"],\n[\"ru\", \"Russian - \u0420\u0443\u0441\u0441\u043A\u0438\u0439\"],\n[\"sk\", \"Slovak - Sloven\u010Dina\"],\n[\"sl\", \"Slovenian - Sloven\u0161\u010Dina\"],\n[\"es\", \"Spanish - Espa\xF1ol\"],\n[\"sv\", \"Swedish - Svenska\"],\n[\"ta\", \"Tamil - \u0BA4\u0BAE\u0BBF\u0BB4\u0BCD\"],\n[\"te\", \"Telugu - \u0C24\u0C46\u0C32\u0C41\u0C17\u0C41\"],\n[\"th\", \"Thai - \u0E44\u0E17\u0E22\"],\n[\"tr\", \"Turkish - T\xFCrk\xE7e\"],\n[\"uk\", \"Ukrainian - \u0423\u043A\u0440\u0430\u0457\u043D\u0441\u044C\u043A\u0430\"],\n[\"vi\", \"Vietnamese - Ti\u1EBFng Vi\u1EC7t\"],\n";const customApiHelpZH="// \u8BF7\u6C42\u6570\u636E\u9ED8\u8BA4\u683C\u5F0F\n{\n \"url\": \"{{url}}\",\n \"method\": \"POST\",\n \"headers\": {\n \"Content-type\": \"application/json\",\n \"Authorization\": \"Bearer {{key}}\"\n },\n \"body\": {\n \"text\": \"{{text}}\", // \u5F85\u7FFB\u8BD1\u6587\u5B57\n \"from\": \"{{from}}\", // \u6587\u5B57\u7684\u8BED\u8A00\uFF08\u53EF\u80FD\u4E3A\u7A7A\uFF09\n \"to\": \"{{to}}\", // \u76EE\u6807\u8BED\u8A00\n },\n}\n\n\n// \u8FD4\u56DE\u6570\u636E\u9ED8\u8BA4\u683C\u5F0F\n{\n text: \"\", // \u7FFB\u8BD1\u540E\u7684\u6587\u5B57\n from: \"\", // \u8BC6\u522B\u7684\u6E90\u8BED\u8A00\n to: \"\", // \u76EE\u6807\u8BED\u8A00\uFF08\u53EF\u9009\uFF09\n}\n\n\n// Hook \u8303\u4F8B\n// URL\nhttps://translate.googleapis.com/translate_a/single?client=gtx&dj=1&dt=t&ie=UTF-8&q={{text}}&sl=en&tl=zh-CN\n\n// Request Hook\n(text, from, to, url, key) => [url, {\n headers: {\n \"Content-type\": \"application/json\",\n },\n method: \"GET\",\n body: null,\n}]\n\n// Response Hook\n// \u5176\u4E2D\u8FD4\u56DE\u6570\u7EC4\u7B2C\u4E00\u4E2A\u503C\u8868\u793A\u8BD1\u6587\u5B57\u7B26\u4E32\uFF0C\u7B2C\u4E8C\u4E2A\u503C\u4E3A\u5E03\u5C14\u503C\uFF0C\u8868\u793A\u539F\u6587\u8BED\u8A00\u4E0E\u76EE\u6807\u8BED\u8A00\u662F\u5426\u76F8\u540C\n(res, text, from, to) => [res.sentences.map((item) => item.trans).join(\" \"), to === res.src]\n\n\n// \u652F\u6301\u7684\u8BED\u8A00\u4EE3\u7801\u5982\u4E0B\n".concat(customApiLangs,"\n");const customApiHelpEN="// Default request\n{\n \"url\": \"{{url}}\",\n \"method\": \"POST\",\n \"headers\": {\n \"Content-type\": \"application/json\",\n \"Authorization\": \"Bearer {{key}}\"\n },\n \"body\": {\n \"text\": \"{{text}}\", // Text to be translated\n \"from\": \"{{from}}\", // The language of the text (may be empty)\n \"to\": \"{{to}}\", // Target language\n },\n}\n\n\n// Default response\n{\n text: \"\", // translated text\n from: \"\", // Recognized source language\n to: \"\", // Target language (optional)\n}\n\n\n/// Hook Example\n// URL\nhttps://translate.googleapis.com/translate_a/single?client=gtx&dj=1&dt=t&ie=UTF-8&q={{text}}&sl=en&tl=zh-CN\n\n// Request Hook\n(text, from, to, url, key) => [url, {\n headers: {\n \"Content-type\": \"application/json\",\n },\n method: \"GET\",\n body: null,\n}]\n\n// Response Hook\n// In the returned array, the first value is the translated string, while the second value is a boolean\n// that indicates whether the source language is the same as the target language.\n(res, text, from, to) => [res.sentences.map((item) => item.trans).join(\" \"), to === res.src]\n\n\n// The supported language codes are as follows\n".concat(customApiLangs,"\n");const requestHookHelperZH="1\u3001\u7B2C\u4E00\u4E2A\u53C2\u6570\u5305\u542B\u5982\u4E0B\u5B57\u6BB5\uFF1A'texts', 'from', 'to', 'url', 'key', 'model', 'systemPrompt', ...\n2\u3001\u8FD4\u56DE\u503C\u5FC5\u987B\u662F\u5305\u542B\u4EE5\u4E0B\u5B57\u6BB5\u7684\u5BF9\u8C61\uFF1A 'url', 'body', 'headers', 'method'\n3\u3001\u5982\u8FD4\u56DE\u7A7A\u503C\uFF0C\u5219hook\u51FD\u6570\u4E0D\u4F1A\u4EA7\u751F\u4EFB\u4F55\u6548\u679C\u3002\n\n// \u793A\u4F8B\nasync (args, { url, body, headers, userMsg, method } = {}) => {\n return { url, body, headers, userMsg, method };\n}";const requestHookHelperEN="1. The first parameter contains the following fields: 'texts', 'from', 'to', 'url', 'key', 'model', 'systemPrompt', ...\n2. The return value must be an object containing the following fields: 'url', 'body', 'headers', 'method'\n3. If a null value is returned, the hook function will have no effect.\n\n// Example\nasync (args, { url, body, headers, userMsg, method } = {}) => {\n return { url, body, headers, userMsg, method };\n}";const responsetHookHelperZH="1\u3001\u7B2C\u4E00\u4E2A\u53C2\u6570\u5305\u542B\u5982\u4E0B\u5B57\u6BB5\uFF1A'res', ...\n2\u3001\u8FD4\u56DE\u503C\u5FC5\u987B\u662F\u5305\u542B\u4EE5\u4E0B\u5B57\u6BB5\u7684\u5BF9\u8C61\uFF1A 'translations'\n \uFF08'translations' \u5E94\u4E3A\u4E00\u4E2A\u4E8C\u7EF4\u6570\u7EC4\uFF1A[[\u8BD1\u6587, \u539F\u6587\u8BED\u8A00]]\uFF09\n3\u3001\u5982\u8FD4\u56DE\u7A7A\u503C\uFF0C\u5219hook\u51FD\u6570\u4E0D\u4F1A\u4EA7\u751F\u4EFB\u4F55\u6548\u679C\u3002\n\n// \u793A\u4F8B\nasync ({ res, ...args }) => {\n const translations = [[\"\u4F60\u597D\", \"en\"]];\n const modelMsg = {}; // \u7528\u4E8EAI\u4E0A\u4E0B\u6587\n return { translations, modelMsg };\n}";const responsetHookHelperEN="1. The first parameter contains the following fields: 'res', ...\n2. The return value must be an object containing the following fields: 'translations'\n ('translations' should be a two-dimensional array: [[translation, source language]]).\n3. If a null value is returned, the hook function will have no effect.\n\n// Example\nasync ({ res, ...args }) => {\n const translations = [[\"\u4F60\u597D\", \"en\"]];\n const modelMsg = {}; // For AI context\n return { translations, modelMsg };\n}";const I18N={app_name:{zh:"\u7B80\u7EA6\u7FFB\u8BD1",en:"KISS Translator",zh_TW:"\u7C21\u7D04\u7FFB\u8B6F",ja:"KISS Translator",ko:"KISS Translator"},translate:{zh:"\u7FFB\u8BD1",en:"Translate",zh_TW:"\u7FFB\u8B6F",ja:"\u7FFB\u8A33",ko:"\uBC88\uC5ED"},custom_api_help:{zh:customApiHelpZH,en:customApiHelpEN,zh_TW:customApiHelpZH,ja:customApiHelpEN,ko:customApiHelpEN},request_hook_helper:{zh:requestHookHelperZH,en:requestHookHelperEN,zh_TW:requestHookHelperZH,ja:requestHookHelperEN,ko:requestHookHelperEN},response_hook_helper:{zh:responsetHookHelperZH,en:responsetHookHelperEN,zh_TW:responsetHookHelperZH,ja:responsetHookHelperEN,ko:responsetHookHelperEN},translate_alt:{zh:"\u7FFB\u8BD1",en:"Translate",zh_TW:"\u7FFB\u8B6F",ja:"\u7FFB\u8A33",ko:"\uBC88\uC5ED"},basic_setting:{zh:"\u57FA\u672C\u8BBE\u7F6E",en:"Basic Setting",zh_TW:"\u57FA\u672C\u8A2D\u5B9A",ja:"\u57FA\u672C\u8A2D\u5B9A",ko:"\uAE30\uBCF8 \uC124\uC815"},rules_setting:{zh:"\u89C4\u5219\u8BBE\u7F6E",en:"Rules Setting",zh_TW:"\u898F\u5247\u8A2D\u5B9A",ja:"\u30EB\u30FC\u30EB\u8A2D\u5B9A",ko:"\uADDC\uCE59 \uC124\uC815"},apis_setting:{zh:"\u63A5\u53E3\u8BBE\u7F6E",en:"Apis Setting",zh_TW:"API\u8A2D\u5B9A",ja:"API\u8A2D\u5B9A",ko:"API \uC124\uC815"},sync_setting:{zh:"\u540C\u6B65\u8BBE\u7F6E",en:"Sync Setting",zh_TW:"\u540C\u6B65\u8A2D\u5B9A",ja:"\u540C\u671F\u8A2D\u5B9A",ko:"\uB3D9\uAE30\uD654 \uC124\uC815"},patch_setting:{zh:"\u8865\u4E01\u8BBE\u7F6E",en:"Patch Setting",zh_TW:"\u4FEE\u88DC\u8A2D\u5B9A",ja:"\u30D1\u30C3\u30C1\u8A2D\u5B9A",ko:"\uD328\uCE58 \uC124\uC815"},patch_setting_help:{zh:"\u9488\u5BF9\u4E00\u4E9B\u7279\u6B8A\u7F51\u7AD9\u7684\u4FEE\u6B63\u811A\u672C\uFF0C\u4EE5\u4FBF\u7FFB\u8BD1\u8F6F\u4EF6\u5F97\u5230\u66F4\u597D\u7684\u5C55\u793A\u6548\u679C\u3002",en:"Corrected scripts for some special websites so that the translation software can get better display results.",zh_TW:"\u91DD\u5C0D\u67D0\u4E9B\u7279\u6B8A\u7DB2\u7AD9\u7684\u4FEE\u6B63\u8173\u672C\uFF0C\u8B93\u7FFB\u8B6F\u8EDF\u9AD4\u6709\u66F4\u597D\u7684\u986F\u793A\u6548\u679C\u3002",ja:"\u4E00\u90E8\u306E\u7279\u6B8A\u306A\u30A6\u30A7\u30D6\u30B5\u30A4\u30C8\u7528\u306E\u4FEE\u6B63\u30B9\u30AF\u30EA\u30D7\u30C8\u3067\u3001\u7FFB\u8A33\u30BD\u30D5\u30C8\u30A6\u30A7\u30A2\u306E\u8868\u793A\u52B9\u679C\u3092\u5411\u4E0A\u3055\u305B\u307E\u3059\u3002",ko:"\uC77C\uBD80 \uD2B9\uC218 \uC6F9\uC0AC\uC774\uD2B8\uB97C \uC704\uD55C \uC218\uC815 \uC2A4\uD06C\uB9BD\uD2B8\uB85C, \uBC88\uC5ED \uC18C\uD504\uD2B8\uC6E8\uC5B4\uC758 \uD45C\uC2DC \uD6A8\uACFC\uB97C \uAC1C\uC120\uD569\uB2C8\uB2E4."},inject_webfix:{zh:"\u6CE8\u5165\u4FEE\u590D\u8865\u4E01",en:"Inject Webfix",zh_TW:"\u6CE8\u5165\u4FEE\u6B63\u88DC\u4E01",ja:"Webfix\u3092\u6CE8\u5165",ko:"\uC6F9 \uC218\uC815 \uD328\uCE58 \uC8FC\uC785"},about:{zh:"\u5173\u4E8E",en:"About",zh_TW:"\u95DC\u65BC",ja:"\u6982\u8981",ko:"\uC815\uBCF4"},about_md:{zh:"README.md",en:"README.en.md",zh_TW:"README.md",ja:"README.ja.md",// 假设的文件名 +ko:"README.ko.md"// 假设的文件名 +},about_md_local:{zh:"\u8BF7 [\u70B9\u51FB\u8FD9\u91CC](".concat("https://github.com/fishjar/kiss-translator",") \u67E5\u770B\u8BE6\u60C5\u3002"),en:"Please [click here](".concat("https://github.com/fishjar/kiss-translator",") for details."),zh_TW:"\u8ACB [\u9EDE\u9019\u88E1](".concat("https://github.com/fishjar/kiss-translator",") \u67E5\u770B\u8A73\u7D30\u5167\u5BB9\u3002"),ja:"\u8A73\u7D30\u306F [\u3053\u3061\u3089](".concat("https://github.com/fishjar/kiss-translator",") \u3092\u30AF\u30EA\u30C3\u30AF\u3057\u3066\u304F\u3060\u3055\u3044\u3002"),ko:"\uC790\uC138\uD55C \uB0B4\uC6A9\uC740 [\uC5EC\uAE30](".concat("https://github.com/fishjar/kiss-translator",")\uB97C \uD074\uB9AD\uD558\uC138\uC694.")},ui_lang:{zh:"\u754C\u9762\u8BED\u8A00",en:"Interface Language",zh_TW:"\u4ECB\u9762\u8A9E\u8A00",ja:"\u30A4\u30F3\u30BF\u30FC\u30D5\u30A7\u30FC\u30B9\u8A00\u8A9E",ko:"\uC778\uD130\uD398\uC774\uC2A4 \uC5B8\uC5B4"},fetch_limit:{zh:"\u6700\u5927\u5E76\u53D1\u8BF7\u6C42\u6570\u91CF (1-100)",en:"Maximum Number Of Concurrent Requests (1-100)",zh_TW:"\u6700\u5927\u540C\u6642\u8ACB\u6C42\u6578\u91CF (1-100)",ja:"\u6700\u5927\u540C\u6642\u30EA\u30AF\u30A8\u30B9\u30C8\u6570 (1-100)",ko:"\uCD5C\uB300 \uB3D9\uC2DC \uC694\uCCAD \uC218 (1-100)"},if_think:{zh:"\u542F\u7528\u6216\u7981\u7528\u6A21\u578B\u7684\u6DF1\u5EA6\u601D\u8003\u80FD\u529B",en:"Enable or disable the model\u2019s thinking behavior ",zh_TW:"\u555F\u7528\u6216\u505C\u7528\u6A21\u578B\u7684\u6DF1\u5EA6\u601D\u8003\u80FD\u529B",ja:"\u30E2\u30C7\u30EB\u306E\u601D\u8003\u884C\u52D5\u3092\u6709\u52B9\u307E\u305F\u306F\u7121\u52B9\u306B\u3059\u308B",ko:"\uBAA8\uB378\uC758 \uC0AC\uACE0 \uD589\uB3D9 \uD65C\uC131\uD654 \uB610\uB294 \uBE44\uD65C\uC131\uD654"},think:{zh:"\u542F\u7528\u6DF1\u5EA6\u601D\u8003",en:"enable thinking",zh_TW:"\u555F\u7528\u6DF1\u5EA6\u601D\u8003",ja:"\u601D\u8003\u3092\u6709\u52B9\u306B\u3059\u308B",ko:"\uC0AC\uACE0 \uD65C\uC131\uD654"},nothink:{zh:"\u7981\u7528\u6DF1\u5EA6\u601D\u8003",en:"disable thinking",zh_TW:"\u505C\u7528\u6DF1\u5EA6\u601D\u8003",ja:"\u601D\u8003\u3092\u7121\u52B9\u306B\u3059\u308B",ko:"\uC0AC\uACE0 \uBE44\uD65C\uC131\uD654"},think_ignore:{zh:"\u5FFD\u7565\u4EE5\u4E0B\u6A21\u578B\u7684\u8F93\u51FA,\u9017\u53F7(,)\u5206\u5272,\u5F53\u6A21\u578B\u652F\u6301\u601D\u8003\u4F46ollama\u4E0D\u652F\u6301\u65F6\u9700\u8981\u586B\u5199\u672C\u53C2\u6570",en:"Ignore the block for the following models, comma (,) separated",zh_TW:"\u5FFD\u7565\u4EE5\u4E0B\u6A21\u578B\u7684 \u8F38\u51FA\uFF0C\u4EE5\u9017\u865F (,) \u5206\u9694\uFF1B\u7576\u6A21\u578B\u652F\u63F4\u601D\u8003\u4F46 ollama \u4E0D\u652F\u63F4\u6642\u9700\u8981\u586B\u5BEB\u6B64\u53C3\u6578",ja:"\u4EE5\u4E0B\u306E\u30E2\u30C7\u30EB\u306E\u51FA\u529B\u3092\u7121\u8996\u3059\u308B (\u30B3\u30F3\u30DE(,)\u533A\u5207\u308A)\u3002\u30E2\u30C7\u30EB\u304C\u601D\u8003\u3092\u30B5\u30DD\u30FC\u30C8\u3057\u3066\u3044\u308B\u304C\u3001ollama\u304C\u30B5\u30DD\u30FC\u30C8\u3057\u3066\u3044\u306A\u3044\u5834\u5408\u306B\u8A18\u5165\u304C\u5FC5\u8981\u3067\u3059",ko:"\uB2E4\uC74C \uBAA8\uB378\uC758 \uBE14\uB85D \uBB34\uC2DC (\uC27C\uD45C(,)\uB85C \uAD6C\uBD84), \uBAA8\uB378\uC774 \uC0AC\uACE0\uB97C \uC9C0\uC6D0\uD558\uC9C0\uB9CC ollama\uAC00 \uC9C0\uC6D0\uD558\uC9C0 \uC54A\uB294 \uACBD\uC6B0 \uC774 \uB9E4\uAC1C\uBCC0\uC218\uB97C \uC785\uB825\uD574\uC57C \uD569\uB2C8\uB2E4"},fetch_interval:{zh:"\u6BCF\u6B21\u8BF7\u6C42\u95F4\u9694\u65F6\u95F4 (0-5000ms)",en:"Time Between Requests (0-5000ms)",zh_TW:"\u6BCF\u6B21\u8ACB\u6C42\u9593\u9694\u6642\u9593 (0-5000ms)",ja:"\u30EA\u30AF\u30A8\u30B9\u30C8\u9593\u9694 (0-5000ms)",ko:"\uC694\uCCAD \uAC04 \uC2DC\uAC04 (0-5000ms)"},translate_interval:{zh:"\u7FFB\u8BD1\u95F4\u9694\u65F6\u95F4 (10-2000ms)",en:"Translation Interval (10-2000ms)",zh_TW:"\u7FFB\u8B6F\u9593\u9694\u6642\u9593 (10-2000ms)",ja:"\u7FFB\u8A33\u9593\u9694 (10-2000ms)",ko:"\uBC88\uC5ED \uAC04\uACA9 (10-2000ms)"},http_timeout:{zh:"\u8BF7\u6C42\u8D85\u65F6\u65F6\u95F4 (5000-60000ms)",en:"Request Timeout Time (5000-60000ms)",zh_TW:"\u8ACB\u6C42\u903E\u6642\u6642\u9593 (5000-60000ms)",ja:"\u30EA\u30AF\u30A8\u30B9\u30C8\u30BF\u30A4\u30E0\u30A2\u30A6\u30C8 (5000-60000ms)",ko:"\uC694\uCCAD \uC2DC\uAC04 \uCD08\uACFC (5000-60000ms)"},custom_header:{zh:"\u81EA\u5B9A\u4E49Header\u53C2\u6570",en:"Custom Header Params",zh_TW:"\u81EA\u8A02 Header \u53C3\u6578",ja:"\u30AB\u30B9\u30BF\u30E0\u30D8\u30C3\u30C0\u30FC",ko:"\uC0AC\uC6A9\uC790 \uC9C0\uC815 \uD5E4\uB354"},custom_header_help:{zh:"\u4F7F\u7528JSON\u683C\u5F0F\uFF0C\u4F8B\u5982 \"User-Agent\": \"Mozilla/5.0 (X11; Linux x86_64; rv:141.0) Gecko/20100101 Firefox/141.0\"",en:"Use JSON format, for example \"User-Agent\": \"Mozilla/5.0 (X11; Linux x86_64; rv:141.0) Gecko/20100101 Firefox/141.0\"",zh_TW:"\u4F7F\u7528JSON\u683C\u5F0F\uFF0C\u4F8B\u5982 \"User-Agent\": \"Mozilla/5.0 (X11; Linux x86_64; rv:141.0) Gecko/20100101 Firefox/141.0\"",ja:"JSON\u5F62\u5F0F\u3092\u4F7F\u7528\u3057\u3066\u304F\u3060\u3055\u3044\u3002\u4F8B: \"User-Agent\": \"Mozilla/5.0 (X11; Linux x86_64; rv:141.0) Gecko/20100101 Firefox/141.0\"",ko:"JSON \uD615\uC2DD\uC744 \uC0AC\uC6A9\uD558\uC138\uC694. \uC608: \"User-Agent\": \"Mozilla/5.0 (X11; Linux x86_64; rv:141.0) Gecko/20100101 Firefox/141.0\""},custom_body:{zh:"\u81EA\u5B9A\u4E49Body\u53C2\u6570",en:"Custom Body Params",zh_TW:"\u81EA\u8A02 Body \u53C3\u6578",ja:"\u30AB\u30B9\u30BF\u30E0\u30DC\u30C7\u30A3",ko:"\uC0AC\uC6A9\uC790 \uC9C0\uC815 \uBC14\uB514"},custom_body_help:{zh:"\u4F7F\u7528JSON\u683C\u5F0F\uFF0C\u4F8B\u5982 \"top_p\": 0.7",en:"Use JSON format, for example \"top_p\": 0.7",zh_TW:"\u4F7F\u7528JSON\u683C\u5F0F\uFF0C\u4F8B\u5982 \"top_p\": 0.7",ja:"JSON\u5F62\u5F0F\u3092\u4F7F\u7528\u3057\u3066\u304F\u3060\u3055\u3044\u3002\u4F8B: \"top_p\": 0.7",ko:"JSON \uD615\uC2DD\uC744 \uC0AC\uC6A9\uD558\uC138\uC694. \uC608: \"top_p\": 0.7"},min_translate_length:{zh:"\u6700\u5C0F\u7FFB\u8BD1\u5B57\u7B26\u6570 (1-100)",en:"Minimum number Of Translated Characters (1-100)",zh_TW:"\u6700\u5C0F\u7FFB\u8B6F\u5B57\u5143\u6578 (1-100)",ja:"\u6700\u5C0F\u7FFB\u8A33\u6587\u5B57\u6570 (1-100)",ko:"\uCD5C\uC18C \uBC88\uC5ED \uBB38\uC790 \uC218 (1-100)"},max_translate_length:{zh:"\u6700\u5927\u7FFB\u8BD1\u5B57\u7B26\u6570 (100-100000)",en:"Maximum number Of Translated Characters (100-100000)",zh_TW:"\u6700\u5927\u7FFB\u8B6F\u5B57\u5143\u6578 (100-100000)",ja:"\u6700\u5927\u7FFB\u8A33\u6587\u5B57\u6570 (100-100000)",ko:"\uCD5C\uB300 \uBC88\uC5ED \uBB38\uC790 \uC218 (100-100000)"},num_of_newline_characters:{zh:"\u6362\u884C\u5B57\u7B26\u6570 (1-1000)",en:"Number of Newline Characters (1-1000)",zh_TW:"\u63DB\u884C\u5B57\u5143\u6578 (1-1000)",ja:"\u6539\u884C\u6587\u5B57\u6570 (1-1000)",ko:"\uC904\uBC14\uAFC8 \uBB38\uC790 \uC218 (1-1000)"},translate_service:{zh:"\u7FFB\u8BD1\u670D\u52A1",en:"Translate Service",zh_TW:"\u7FFB\u8B6F\u670D\u52D9",ja:"\u7FFB\u8A33\u30B5\u30FC\u30D3\u30B9",ko:"\uBC88\uC5ED \uC11C\uBE44\uC2A4"},translate_service_multiple:{zh:"\u7FFB\u8BD1\u670D\u52A1 (\u652F\u6301\u591A\u9009)",en:"Translation service (multiple supported)",zh_TW:"\u7FFB\u8B6F\u670D\u52D9 (\u652F\u63F4\u591A\u9078)",ja:"\u7FFB\u8A33\u30B5\u30FC\u30D3\u30B9 (\u8907\u6570\u9078\u629E\u53EF)",ko:"\uBC88\uC5ED \uC11C\uBE44\uC2A4 (\uB2E4\uC911 \uC120\uD0DD \uC9C0\uC6D0)"},translate_timing:{zh:"\u7FFB\u8BD1\u65F6\u673A",en:"Translate Timing",zh_TW:"\u7FFB\u8B6F\u6642\u6A5F",ja:"\u7FFB\u8A33\u30BF\u30A4\u30DF\u30F3\u30B0",ko:"\uBC88\uC5ED \uC2DC\uC810"},mk_pagescroll:{zh:"\u6EDA\u52A8\u52A0\u8F7D\u7FFB\u8BD1\uFF08\u63A8\u8350\uFF09",en:"Rolling Loading (Suggested)",zh_TW:"\u6EFE\u52D5\u8F09\u5165\u7FFB\u8B6F\uFF08\u5EFA\u8B70\uFF09",ja:"\u30B9\u30AF\u30ED\u30FC\u30EB\u7FFB\u8A33 (\u63A8\u5968)",ko:"\uC2A4\uD06C\uB864 \uBC88\uC5ED (\uAD8C\uC7A5)"},mk_pageopen:{zh:"\u7ACB\u5373\u5168\u90E8\u7FFB\u8BD1",en:"Translate all now",zh_TW:"\u7ACB\u5373\u5168\u90E8\u7FFB\u8B6F",ja:"\u3059\u3050\u306B\u3059\u3079\u3066\u7FFB\u8A33",ko:"\uC989\uC2DC \uBAA8\uB450 \uBC88\uC5ED"},mk_mouseover:{zh:"\u9F20\u6807\u60AC\u505C\u7FFB\u8BD1",en:"Mouseover",zh_TW:"\u6ED1\u9F20\u61F8\u505C\u7FFB\u8B6F",ja:"\u30DE\u30A6\u30B9\u30AA\u30FC\u30D0\u30FC\u7FFB\u8A33",ko:"\uB9C8\uC6B0\uC2A4\uC624\uBC84 \uBC88\uC5ED"},mk_ctrlKey:{zh:"Control + \u9F20\u6807\u60AC\u505C",en:"Control + Mouseover",zh_TW:"Control + \u6ED1\u9F20\u61F8\u505C",ja:"Control + \u30DE\u30A6\u30B9\u30AA\u30FC\u30D0\u30FC",ko:"Control + \uB9C8\uC6B0\uC2A4\uC624\uBC84"},mk_shiftKey:{zh:"Shift + \u9F20\u6807\u60AC\u505C",en:"Shift + Mouseover",zh_TW:"Shift + \u6ED1\u9F20\u61F8\u505C",ja:"Shift + \u30DE\u30A6\u30B9\u30AA\u30FC\u30D0\u30FC",ko:"Shift + \uB9C8\uC6B0\uC2A4\uC624\uBC84"},mk_altKey:{zh:"Alt + \u9F20\u6807\u60AC\u505C",en:"Alt + Mouseover",zh_TW:"Alt + \u6ED1\u9F20\u61F8\u505C",ja:"Alt + \u30DE\u30A6\u30B9\u30AA\u30FC\u30D0\u30FC",ko:"Alt + \uB9C8\uC6B0\uC2A4\uC624\uBC84"},from_lang:{zh:"\u539F\u6587\u8BED\u8A00",en:"Source Language",zh_TW:"\u539F\u6587\u8A9E\u8A00",ja:"\u539F\u6587\u306E\u8A00\u8A9E",ko:"\uC6D0\uBCF8 \uC5B8\uC5B4"},to_lang:{zh:"\u76EE\u6807\u8BED\u8A00",en:"Target Language",zh_TW:"\u76EE\u6A19\u8A9E\u8A00",ja:"\u7FFB\u8A33\u5148\u306E\u8A00\u8A9E",ko:"\uB300\uC0C1 \uC5B8\uC5B4"},to_lang2:{zh:"\u7B2C\u4E8C\u76EE\u6807\u8BED\u8A00",en:"Target Language 2",zh_TW:"\u7B2C\u4E8C\u76EE\u6A19\u8A9E\u8A00",ja:"\u7B2C\u4E8C\u7FFB\u8A33\u5148\u306E\u8A00\u8A9E",ko:"\uB450 \uBC88\uC9F8 \uB300\uC0C1 \uC5B8\uC5B4"},to_lang2_helper:{zh:"\u8BBE\u5B9A\u540E\uFF0C\u4E0E\u76EE\u6807\u8BED\u8A00\u4EA7\u751F\u4E92\u8BD1\u6548\u679C\uFF0C\u4F46\u4F9D\u8D56\u8FDC\u7A0B\u8BED\u8A00\u8BC6\u522B\u3002",en:"After setting, it will produce mutual translation effect with the target language, but it relies on remote language recognition.",zh_TW:"\u8A2D\u5B9A\u5F8C\u6703\u8207\u76EE\u6A19\u8A9E\u8A00\u4E92\u8B6F\uFF0C\u4F46\u4F9D\u8CF4\u9060\u7AEF\u8A9E\u8A00\u8B58\u5225\u3002",ja:"\u8A2D\u5B9A\u5F8C\u3001\u30BF\u30FC\u30B2\u30C3\u30C8\u8A00\u8A9E\u3068\u306E\u76F8\u4E92\u7FFB\u8A33\u304C\u53EF\u80FD\u306B\u306A\u308A\u307E\u3059\u304C\u3001\u30EA\u30E2\u30FC\u30C8\u8A00\u8A9E\u8A8D\u8B58\u306B\u4F9D\u5B58\u3057\u307E\u3059\u3002",ko:"\uC124\uC815 \uD6C4, \uB300\uC0C1 \uC5B8\uC5B4\uC640 \uC0C1\uD638 \uBC88\uC5ED \uD6A8\uACFC\uAC00 \uBC1C\uC0DD\uD558\uC9C0\uB9CC, \uC6D0\uACA9 \uC5B8\uC5B4 \uC778\uC2DD\uC5D0 \uC758\uC874\uD569\uB2C8\uB2E4."},text_style:{zh:"\u8BD1\u6587\u6837\u5F0F",en:"Text Style",zh_TW:"\u8B6F\u6587\u6A23\u5F0F",ja:"\u7FFB\u8A33\u30C6\u30AD\u30B9\u30C8\u30B9\u30BF\u30A4\u30EB",ko:"\uBC88\uC5ED \uD14D\uC2A4\uD2B8 \uC2A4\uD0C0\uC77C"},text_style_alt:{zh:"\u8BD1\u6587\u6837\u5F0F",en:"Text Style",zh_TW:"\u8B6F\u6587\u6A23\u5F0F",ja:"\u7FFB\u8A33\u30C6\u30AD\u30B9\u30C8\u30B9\u30BF\u30A4\u30EB",ko:"\uBC88\uC5ED \uD14D\uC2A4\uD2B8 \uC2A4\uD0C0\uC77C"},bg_color:{zh:"\u6837\u5F0F\u989C\u8272",en:"Style Color",zh_TW:"\u6A23\u5F0F\u984F\u8272",ja:"\u30B9\u30BF\u30A4\u30EB\u30AB\u30E9\u30FC",ko:"\uC2A4\uD0C0\uC77C \uC0C9\uC0C1"},remain_unchanged:{zh:"\u4FDD\u7559\u4E0D\u53D8",en:"Remain Unchanged",zh_TW:"\u4FDD\u7559\u4E0D\u8B8A",ja:"\u5909\u66F4\u3057\u306A\u3044",ko:"\uBCC0\uACBD\uD558\uC9C0 \uC54A\uC74C"},google_api:{zh:"\u8C37\u6B4C\u7FFB\u8BD1\u63A5\u53E3",en:"Google Translate API",zh_TW:"Google \u7FFB\u8B6F\u4ECB\u9762",ja:"Google \u7FFB\u8A33 API",ko:"Google \uBC88\uC5ED API"},default_selector:{zh:"\u9ED8\u8BA4\u9009\u62E9\u5668",en:"Default selector",zh_TW:"\u9810\u8A2D\u9078\u64C7\u5668",ja:"\u30C7\u30D5\u30A9\u30EB\u30C8\u30BB\u30EC\u30AF\u30BF",ko:"\uAE30\uBCF8 \uC120\uD0DD\uC790"},selector_rules:{zh:"\u9009\u62E9\u5668\u89C4\u5219",en:"Selector Rules",zh_TW:"\u9078\u64C7\u5668\u898F\u5247",ja:"\u30BB\u30EC\u30AF\u30BF\u30FC\u30EB\u30FC\u30EB",ko:"\uC120\uD0DD\uC790 \uADDC\uCE59"},save:{zh:"\u4FDD\u5B58",en:"Save",zh_TW:"\u5132\u5B58",ja:"\u4FDD\u5B58",ko:"\uC800\uC7A5"},edit:{zh:"\u7F16\u8F91",en:"Edit",zh_TW:"\u7DE8\u8F2F",ja:"\u7DE8\u96C6",ko:"\uC218\uC815"},cancel:{zh:"\u53D6\u6D88",en:"Cancel",zh_TW:"\u53D6\u6D88",ja:"\u30AD\u30E3\u30F3\u30BB\u30EB",ko:"\uCDE8\uC18C"},delete:{zh:"\u5220\u9664",en:"Delete",zh_TW:"\u522A\u9664",ja:"\u524A\u9664",ko:"\uC0AD\uC81C"},reset:{zh:"\u91CD\u7F6E",en:"Reset",zh_TW:"\u91CD\u8A2D",ja:"\u30EA\u30BB\u30C3\u30C8",ko:"\uCD08\uAE30\uD654"},add:{zh:"\u6DFB\u52A0",en:"Add",zh_TW:"\u65B0\u589E",ja:"\u8FFD\u52A0",ko:"\uCD94\uAC00"},inject_rules:{zh:"\u6CE8\u5165\u8BA2\u9605\u89C4\u5219",en:"Inject Subscribe Rules",zh_TW:"\u6CE8\u5165\u8A02\u95B1\u898F\u5247",ja:"\u8CFC\u8AAD\u30EB\u30FC\u30EB\u3092\u6CE8\u5165",ko:"\uAD6C\uB3C5 \uADDC\uCE59 \uC8FC\uC785"},personal_rules:{zh:"\u4E2A\u4EBA\u89C4\u5219",en:"Rules",zh_TW:"\u500B\u4EBA\u898F\u5247",ja:"\u500B\u4EBA\u30EB\u30FC\u30EB",ko:"\uAC1C\uC778 \uADDC\uCE59"},subscribe_rules:{zh:"\u8BA2\u9605\u89C4\u5219",en:"Subscribe",zh_TW:"\u8A02\u95B1\u898F\u5247",ja:"\u8CFC\u8AAD\u30EB\u30FC\u30EB",ko:"\uAD6C\uB3C5 \uADDC\uCE59"},overwrite_subscribe_rules:{zh:"\u8986\u5199\u8BA2\u9605\u89C4\u5219",en:"Overwrite",zh_TW:"\u8986\u5BEB\u8A02\u95B1\u898F\u5247",ja:"\u8CFC\u8AAD\u30EB\u30FC\u30EB\u3092\u4E0A\u66F8\u304D",ko:"\uAD6C\uB3C5 \uADDC\uCE59 \uB36E\uC5B4\uC4F0\uAE30"},subscribe_url:{zh:"\u8BA2\u9605\u5730\u5740",en:"Subscribe URL",zh_TW:"\u8A02\u95B1\u7DB2\u5740",ja:"\u8CFC\u8AADURL",ko:"\uAD6C\uB3C5 URL"},rules_warn_1:{zh:"1\u3001\u89C4\u5219\u751F\u6548\u7684\u4F18\u5148\u7EA7\u4F9D\u6B21\u4E3A\uFF1A\u4E2A\u4EBA\u89C4\u5219 > \u8BA2\u9605\u89C4\u5219 > \u5168\u5C40\u89C4\u5219\u3002\"\u5168\u5C40\u89C4\u5219\"\u76F8\u5F53\u4E8E\u515C\u5E95\u89C4\u5219\u3002",en:"1. The priority of rules is: personal rules > subscription rules > global rules. \"Global rules\" are like a fallback rule.",zh_TW:"1.\u898F\u5247\u751F\u6548\u7684\u512A\u5148\u9806\u5E8F\u4F9D\u5E8F\u70BA\uFF1A\u500B\u4EBA\u898F\u5247 > \u8A02\u95B1\u898F\u5247 > \u5168\u57DF\u898F\u5247\u3002 \"\u5168\u57DF\u898F\u5247\"\u76F8\u7576\u65BC\u515C\u5E95\u898F\u5247\u3002",ja:"1. \u30EB\u30FC\u30EB\u306E\u512A\u5148\u9806\u4F4D: \u500B\u4EBA\u30EB\u30FC\u30EB > \u8CFC\u8AAD\u30EB\u30FC\u30EB > \u30B0\u30ED\u30FC\u30D0\u30EB\u30EB\u30FC\u30EB\u3002\u300C\u30B0\u30ED\u30FC\u30D0\u30EB\u30EB\u30FC\u30EB\u300D\u306F\u30D5\u30A9\u30FC\u30EB\u30D0\u30C3\u30AF\u30EB\u30FC\u30EB\u306E\u3088\u3046\u306A\u3082\u306E\u3067\u3059\u3002",ko:"1. \uADDC\uCE59 \uC6B0\uC120\uC21C\uC704: \uAC1C\uC778 \uADDC\uCE59 > \uAD6C\uB3C5 \uADDC\uCE59 > \uC804\uC5ED \uADDC\uCE59. \"\uC804\uC5ED \uADDC\uCE59\"\uC740 \uC77C\uC885\uC758 \uD3F4\uBC31(fallback) \uADDC\uCE59\uC785\uB2C8\uB2E4."},rules_warn_2:{zh:"2\u3001\u201C\u8BA2\u9605\u89C4\u5219\u201D\u9009\u62E9\u6CE8\u5165\u540E\u624D\u4F1A\u751F\u6548\u3002",en:"2. \"Subscription rules\" will take effect only after injection is selected.",zh_TW:"2\u3001\u300C\u8A02\u95B1\u898F\u5247\u300D\u9078\u64C7\u6CE8\u5165\u5F8C\u624D\u6703\u751F\u6548\u3002",ja:"2. \u300C\u8CFC\u8AAD\u30EB\u30FC\u30EB\u300D\u306F\u6CE8\u5165\u3092\u9078\u629E\u3057\u305F\u5F8C\u306B\u306E\u307F\u6709\u52B9\u306B\u306A\u308A\u307E\u3059\u3002",ko:"2. \"\uAD6C\uB3C5 \uADDC\uCE59\"\uC740 \uC8FC\uC785\uC744 \uC120\uD0DD\uD55C \uD6C4\uC5D0\uB9CC \uC801\uC6A9\uB429\uB2C8\uB2E4."},rules_warn_3:{zh:"3\u3001\u5173\u4E8E\u89C4\u5219\u586B\u5199\uFF1A\u8F93\u5165\u6846\u7559\u7A7A\u6216\u4E0B\u62C9\u6846\u9009\u201C*\u201D\u8868\u793A\u91C7\u7528\u5168\u5C40\u89C4\u5219\u3002",en:"3. Regarding filling in the rules: Leave the input box blank or select \"*\" in the drop-down box to use global rule.",zh_TW:"3. \u898F\u5247\u586B\u5BEB\u8AAA\u660E\uFF1A\u8F38\u5165\u6846\u7559\u7A7A\u6216\u4E0B\u62C9\u9078\u64C7\u300C*\u300D\u8868\u793A\u4F7F\u7528\u5168\u57DF\u898F\u5247\u3002",ja:"3. \u30EB\u30FC\u30EB\u306E\u8A18\u5165\u306B\u3064\u3044\u3066: \u5165\u529B\u30DC\u30C3\u30AF\u30B9\u3092\u7A7A\u767D\u306B\u3059\u308B\u304B\u3001\u30C9\u30ED\u30C3\u30D7\u30C0\u30A6\u30F3\u3067\u300C*\u300D\u3092\u9078\u629E\u3059\u308B\u3068\u3001\u30B0\u30ED\u30FC\u30D0\u30EB\u30EB\u30FC\u30EB\u304C\u4F7F\u7528\u3055\u308C\u307E\u3059\u3002",ko:"3. \uADDC\uCE59 \uC791\uC131 \uAD00\uB828: \uC785\uB825\uB780\uC744 \uBE44\uC6CC\uB450\uAC70\uB098 \uB4DC\uB86D\uB2E4\uC6B4\uC5D0\uC11C \"*\"\uB97C \uC120\uD0DD\uD558\uBA74 \uC804\uC5ED \uADDC\uCE59\uC774 \uC0AC\uC6A9\uB429\uB2C8\uB2E4."},sync_warn:{zh:"\u6D89\u53CA\u9690\u79C1\u6570\u636E\u7684\u540C\u6B65\u8BF7\u8C28\u614E\u9009\u62E9\u7B2C\u4E09\u65B9\u540C\u6B65\u670D\u52A1\uFF0C\u5EFA\u8BAE\u81EA\u884C\u642D\u5EFA kiss-worker \u6216 WebDAV \u670D\u52A1\u3002",en:"When synchronizing data that involves privacy, please be cautious about choosing third-party sync services. It is recommended to set up your own sync service using kiss-worker or WebDAV.",zh_TW:"\u540C\u6B65\u6D89\u53CA\u96B1\u79C1\u8CC7\u6599\u6642\uFF0C\u8ACB\u8B39\u614E\u9078\u64C7\u7B2C\u4E09\u65B9\u540C\u6B65\u670D\u52D9\uFF1B\u5EFA\u8B70\u81EA\u5EFA kiss-worker \u6216 WebDAV \u670D\u52D9\u3002",ja:"\u30D7\u30E9\u30A4\u30D0\u30B7\u30FC\u306B\u95A2\u308F\u308B\u30C7\u30FC\u30BF\u3092\u540C\u671F\u3059\u308B\u5834\u5408\u3001\u30B5\u30FC\u30C9\u30D1\u30FC\u30C6\u30A3\u306E\u540C\u671F\u30B5\u30FC\u30D3\u30B9\u306F\u614E\u91CD\u306B\u9078\u629E\u3057\u3066\u304F\u3060\u3055\u3044\u3002kiss-worker \u3084 WebDAV \u30B5\u30FC\u30D3\u30B9\u3092\u81EA\u5DF1\u30DB\u30B9\u30C6\u30A3\u30F3\u30B0\u3059\u308B\u3053\u3068\u3092\u304A\u52E7\u3081\u3057\u307E\u3059\u3002",ko:"\uAC1C\uC778\uC815\uBCF4\uAC00 \uD3EC\uD568\uB41C \uB370\uC774\uD130\uB97C \uB3D9\uAE30\uD654\uD560 \uACBD\uC6B0, \uD0C0\uC0AC \uB3D9\uAE30\uD654 \uC11C\uBE44\uC2A4 \uC120\uD0DD\uC5D0 \uC2E0\uC911\uC744 \uAE30\uD558\uC2ED\uC2DC\uC624. \uC790\uCCB4 kiss-worker \uB610\uB294 WebDAV \uC11C\uBE44\uC2A4\uB97C \uAD6C\uCD95\uD558\uB294 \uAC83\uC744 \uAD8C\uC7A5\uD569\uB2C8\uB2E4."},sync_warn_2:{zh:"\u5982\u679C\u670D\u52A1\u5668\u5B58\u5728\u5176\u4ED6\u5BA2\u6237\u7AEF\u540C\u6B65\u7684\u6570\u636E\uFF0C\u7B2C\u4E00\u6B21\u540C\u6B65\u5C06\u76F4\u63A5\u8986\u76D6\u672C\u5730\u914D\u7F6E\uFF0C\u540E\u9762\u5219\u6839\u636E\u4FEE\u6539\u65F6\u95F4\uFF0C\u65B0\u7684\u8986\u76D6\u65E7\u7684\u3002",en:"If the server has data synchronized by other clients, the first synchronization will directly overwrite the local configuration, and later, according to the modification time, the new one will overwrite the old one.",zh_TW:"\u82E5\u4F3A\u670D\u5668\u4E0A\u5B58\u5728\u5176\u4ED6\u7528\u6236\u7AEF\u540C\u6B65\u7684\u8CC7\u6599\uFF0C\u7B2C\u4E00\u6B21\u540C\u6B65\u6703\u76F4\u63A5\u8986\u84CB\u672C\u6A5F\u8A2D\u5B9A\uFF1B\u4E4B\u5F8C\u5247\u4F9D\u4FEE\u6539\u6642\u9593\uFF0C\u7531\u65B0\u7684\u8986\u84CB\u820A\u7684\u3002",ja:"\u30B5\u30FC\u30D0\u30FC\u306B\u4ED6\u306E\u30AF\u30E9\u30A4\u30A2\u30F3\u30C8\u306B\u3088\u3063\u3066\u540C\u671F\u3055\u308C\u305F\u30C7\u30FC\u30BF\u304C\u3042\u308B\u5834\u5408\u3001\u6700\u521D\u306E\u540C\u671F\u306F\u30ED\u30FC\u30AB\u30EB\u8A2D\u5B9A\u3092\u76F4\u63A5\u4E0A\u66F8\u304D\u3057\u3001\u305D\u306E\u5F8C\u306F\u5909\u66F4\u6642\u9593\u306B\u5FDC\u3058\u3066\u65B0\u3057\u3044\u3082\u306E\u304C\u53E4\u3044\u3082\u306E\u3092\u4E0A\u66F8\u304D\u3057\u307E\u3059\u3002",ko:"\uC11C\uBC84\uC5D0 \uB2E4\uB978 \uD074\uB77C\uC774\uC5B8\uD2B8\uAC00 \uB3D9\uAE30\uD654\uD55C \uB370\uC774\uD130\uAC00 \uC788\uB294 \uACBD\uC6B0, \uCCAB \uBC88\uC9F8 \uB3D9\uAE30\uD654\uB294 \uB85C\uCEEC \uAD6C\uC131\uC744 \uC9C1\uC811 \uB36E\uC5B4\uC4F0\uBA70, \uC774\uD6C4\uC5D0\uB294 \uC218\uC815 \uC2DC\uAC04\uC5D0 \uB530\uB77C \uC0C8 \uD56D\uBAA9\uC774 \uAE30\uC874 \uD56D\uBAA9\uC744 \uB36E\uC5B4\uC501\uB2C8\uB2E4."},about_sync_api:{zh:"\u81EA\u5EFAkiss-wroker\u6570\u636E\u540C\u6B65\u670D\u52A1",en:"Self-hosting a Kiss-worker data sync service",zh_TW:"\u81EA\u5EFA kiss-wroker \u8CC7\u6599\u540C\u6B65\u670D\u52D9",ja:"Kiss-worker \u30C7\u30FC\u30BF\u540C\u671F\u30B5\u30FC\u30D3\u30B9\u3092\u30BB\u30EB\u30D5\u30DB\u30B9\u30C8\u3059\u308B",ko:"Kiss-worker \uB370\uC774\uD130 \uB3D9\uAE30\uD654 \uC11C\uBE44\uC2A4 \uC790\uCCB4 \uD638\uC2A4\uD305"},about_api:{zh:"1\u3001\u5176\u4E2D BuiltinAI \u4E3A\u6D4F\u89C8\u5668\u5185\u7F6EAI\u7FFB\u8BD1\uFF0C\u76EE\u524D\u4EC5 Chrome 138 \u53CA\u4EE5\u4E0A\u7248\u672C\u5F97\u5230\u652F\u6301\u3002",en:"1. BuiltinAI is the browser's built-in AI translation, which is currently only supported by Chrome 138 and above.",zh_TW:"1.\u5176\u4E2D BuiltinAI \u70BA\u700F\u89BD\u5668\u5167\u5EFAAI\u7FFB\u8B6F\uFF0C\u76EE\u524D\u50C5 Chrome 138 \u4EE5\u4E0A\u7248\u672C\u652F\u63F4\u3002",ja:"1. BuiltinAI \u306F\u30D6\u30E9\u30A6\u30B6\u5185\u8535\u306EAI\u7FFB\u8A33\u3067\u3001\u73FE\u5728 Chrome 138 \u4EE5\u964D\u306E\u30D0\u30FC\u30B8\u30E7\u30F3\u3067\u306E\u307F\u30B5\u30DD\u30FC\u30C8\u3055\u308C\u3066\u3044\u307E\u3059\u3002",ko:"1. BuiltinAI\uB294 \uBE0C\uB77C\uC6B0\uC800 \uB0B4\uC7A5 AI \uBC88\uC5ED\uC73C\uB85C, \uD604\uC7AC Chrome 138 \uC774\uC0C1 \uBC84\uC804\uC5D0\uC11C\uB9CC \uC9C0\uC6D0\uB429\uB2C8\uB2E4."},about_api_2:{zh:"2\u3001\u5927\u90E8\u5206AI\u63A5\u53E3\u90FD\u4E0EOpenAI\u517C\u5BB9\uFF0C\u56E0\u6B64\u9009\u62E9\u6DFB\u52A0OpenAI\u7C7B\u578B\u5373\u53EF\u3002It should be noted that Prompt has two types: batch translation and nobatch translation. Not all interfaces support batch translation.",en:"2. Most AI interfaces are compatible with OpenAI, so just choose to add the OpenAI type.",zh_TW:"2.\u5927\u90E8\u5206AI\u4ECB\u9762\u90FD\u8207OpenAI\u76F8\u5BB9\uFF0C\u56E0\u6B64\u9078\u64C7\u65B0\u589EOpenAI\u985E\u578B\u5373\u53EF\u3002\u8981\u6CE8\u610F\u7684\u662FPrompt\u5206\u805A\u5408\u7FFB\u8B6F\u548C\u975E\u805A\u5408\u7FFB\u8B6F\u5169\u7A2E\uFF0C\u4E0D\u662F\u6240\u6709\u4ECB\u9762\u90FD\u652F\u63F4\u805A\u5408\u7FFB\u8B6F\u3002",ja:"2. \u307B\u3068\u3093\u3069\u306EAI\u30A4\u30F3\u30BF\u30FC\u30D5\u30A7\u30FC\u30B9\u306FOpenAI\u3068\u4E92\u63DB\u6027\u304C\u3042\u308B\u305F\u3081\u3001OpenAI\u30BF\u30A4\u30D7\u3092\u8FFD\u52A0\u3059\u308B\u3060\u3051\u3067\u5341\u5206\u3067\u3059\u3002",ko:"2. \uB300\uBD80\uBD84\uC758 AI \uC778\uD130\uD398\uC774\uC2A4\uB294 OpenAI\uC640 \uD638\uD658\uB418\uBBC0\uB85C OpenAI \uC720\uD615\uC744 \uCD94\uAC00\uD558\uAE30\uB9CC \uD558\uBA74 \uB429\uB2C8\uB2E4."},about_api_3:{zh:"3\u3001\u6682\u672A\u5217\u51FA\u7684\u63A5\u53E3\uFF0C\u7406\u8BBA\u4E0A\u90FD\u53EF\u4EE5\u901A\u8FC7\u81EA\u5B9A\u4E49\u63A5\u53E3 (Custom) \u7684\u5F62\u5F0F\u652F\u6301\u3002",en:"3. Interfaces that have not yet been launched can theoretically be supported through custom interfaces.",zh_TW:"3.\u66AB\u672A\u5217\u51FA\u7684\u4ECB\u9762\uFF0C\u7406\u8AD6\u4E0A\u90FD\u53EF\u900F\u904E\u81EA\u8A02\u4ECB\u9762 (Custom) \u7684\u5F62\u5F0F\u652F\u63F4\u3002",ja:"3. \u307E\u3060\u30EA\u30B9\u30C8\u3055\u308C\u3066\u3044\u306A\u3044\u30A4\u30F3\u30BF\u30FC\u30D5\u30A7\u30FC\u30B9\u3082\u3001\u7406\u8AD6\u4E0A\u306F\u30AB\u30B9\u30BF\u30E0\u30A4\u30F3\u30BF\u30FC\u30D5\u30A7\u30FC\u30B9 (Custom) \u3092\u901A\u3058\u3066\u30B5\u30DD\u30FC\u30C8\u53EF\u80FD\u3067\u3059\u3002",ko:"3. \uC544\uC9C1 \uB4F1\uB85D\uB418\uC9C0 \uC54A\uC740 \uC778\uD130\uD398\uC774\uC2A4\uB3C4 \uC774\uB860\uC801\uC73C\uB85C\uB294 \uC0AC\uC6A9\uC790 \uC815\uC758 \uC778\uD130\uD398\uC774\uC2A4 (Custom)\uB97C \uD1B5\uD574 \uC9C0\uC6D0\uB420 \uC218 \uC788\uC2B5\uB2C8\uB2E4."},about_api_proxy:{zh:"\u67E5\u770B\u81EA\u5EFA\u4E00\u4E2A\u7FFB\u8BD1\u63A5\u53E3\u4EE3\u7406",en:"Check out the self-built translation interface proxy",zh_TW:"\u67E5\u770B\u5982\u4F55\u81EA\u5EFA\u7FFB\u8B6F\u4ECB\u9762 Proxy",ja:"\u81EA\u4F5C\u306E\u7FFB\u8A33\u30A4\u30F3\u30BF\u30FC\u30D5\u30A7\u30FC\u30B9\u30D7\u30ED\u30AD\u30B7\u3092\u30C1\u30A7\u30C3\u30AF\u3059\u308B",ko:"\uC790\uCCB4 \uAD6C\uCD95 \uBC88\uC5ED \uC778\uD130\uD398\uC774\uC2A4 \uD504\uB85D\uC2DC \uD655\uC778\uD558\uAE30"},setting_helper:{zh:"\u65B0\u65E7\u914D\u7F6E\u5E76\u4E0D\u517C\u5BB9\uFF0C\u5BFC\u51FA\u7684\u65E7\u7248\u914D\u7F6E\uFF0C\u52FF\u518D\u6B21\u5BFC\u5165\u3002",en:"The old and new configurations are not compatible. Do not import the exported old configuration again.",zh_TW:"\u65B0\u820A\u914D\u7F6E\u4E26\u4E0D\u76F8\u5BB9\uFF0C\u532F\u51FA\u7684\u820A\u7248\u914D\u7F6E\uFF0C\u52FF\u518D\u6B21\u532F\u5165\u3002",ja:"\u65B0\u65E7\u306E\u8A2D\u5B9A\u306B\u4E92\u63DB\u6027\u306F\u3042\u308A\u307E\u305B\u3093\u3002\u30A8\u30AF\u30B9\u30DD\u30FC\u30C8\u3057\u305F\u53E4\u3044\u8A2D\u5B9A\u3092\u518D\u5EA6\u30A4\u30F3\u30DD\u30FC\u30C8\u3057\u306A\u3044\u3067\u304F\u3060\u3055\u3044\u3002",ko:"\uC774\uC804 \uAD6C\uC131\uACFC \uC0C8 \uAD6C\uC131\uC740 \uD638\uD658\uB418\uC9C0 \uC54A\uC2B5\uB2C8\uB2E4. \uB0B4\uBCF4\uB0B8 \uC774\uC804 \uAD6C\uC131\uC744 \uB2E4\uC2DC \uAC00\uC838\uC624\uC9C0 \uB9C8\uC2ED\uC2DC\uC624."},style_none:{zh:"\u65E0",en:"None",zh_TW:"\u7121",ja:"\u306A\u3057",ko:"\uC5C6\uC74C"},under_line:{zh:"\u4E0B\u5212\u76F4\u7EBF",en:"Underline",zh_TW:"\u4E0B\u5283\u76F4\u7DDA",ja:"\u4E0B\u7DDA",ko:"\uBC11\uC904"},dot_line:{zh:"\u4E0B\u5212\u70B9\u72B6\u7EBF",en:"Dotted Underline",zh_TW:"\u4E0B\u5283\u9EDE\u72C0\u7DDA",ja:"\u70B9\u7DDA\u306E\u4E0B\u7DDA",ko:"\uC810\uC120 \uBC11\uC904"},dash_line:{zh:"\u4E0B\u5212\u865A\u7EBF",en:"Dashed Underline",zh_TW:"\u4E0B\u5283\u865B\u7DDA",ja:"\u7834\u7DDA\u306E\u4E0B\u7DDA",ko:"\uD30C\uC120 \uBC11\uC904"},dash_box:{zh:"\u865A\u7EBF\u6846",en:"Dashed Box",zh_TW:"\u865B\u7DDA\u6846",ja:"\u7834\u7DDA\u30DC\u30C3\u30AF\u30B9",ko:"\uD30C\uC120 \uC0C1\uC790"},dash_line_bold:{zh:"\u4E0B\u5212\u865A\u7EBF\u52A0\u7C97",en:"Dashed Underline Bold",zh_TW:"\u4E0B\u5283\u865B\u7DDA",ja:"\u7834\u7DDA\u306E\u4E0B\u7DDA (\u592A\u5B57)",ko:"\uAD75\uC740 \uD30C\uC120 \uBC11\uC904"},dash_box_bold:{zh:"\u865A\u7EBF\u6846\u52A0\u7C97",en:"Dashed Box Bold",zh_TW:"\u865B\u7DDA\u6846\u52A0\u7C97",ja:"\u7834\u7DDA\u30DC\u30C3\u30AF\u30B9 (\u592A\u5B57)",ko:"\uAD75\uC740 \uD30C\uC120 \uC0C1\uC790"},marker:{zh:"\u9A6C\u514B\u7B14",en:"Marker",zh_TW:"\u99AC\u514B\u7B46",ja:"\u30DE\u30FC\u30AB\u30FC",ko:"\uB9C8\uCEE4"},gradient_marker:{zh:"\u6E10\u53D8\u9A6C\u514B\u7B14",en:"Gradient Marker",zh_TW:"\u6F38\u5C64\u99AC\u514B\u7B46",ja:"\u30B0\u30E9\u30C7\u30FC\u30B7\u30E7\u30F3\u30DE\u30FC\u30AB\u30FC",ko:"\uADF8\uB77C\uB370\uC774\uC158 \uB9C8\uCEE4"},wavy_line:{zh:"\u4E0B\u5212\u6CE2\u6D6A\u7EBF",en:"Wavy Underline",zh_TW:"\u4E0B\u5283\u6CE2\u6D6A\u7DDA",ja:"\u6CE2\u7DDA\u306E\u4E0B\u7DDA",ko:"\uBB3C\uACB0 \uBC11\uC904"},wavy_line_bold:{zh:"\u4E0B\u5212\u6CE2\u6D6A\u7EBF\u52A0\u7C97",en:"Wavy Underline Bold",zh_TW:"\u4E0B\u5283\u6CE2\u6D6A\u7DDA\u52A0\u7C97",ja:"\u6CE2\u7DDA\u306E\u4E0B\u7DDA (\u592A\u5B57)",ko:"\uAD75\uC740 \uBB3C\uACB0 \uBC11\uC904"},fuzzy:{zh:"\u6A21\u7CCA",en:"Fuzzy",zh_TW:"\u6A21\u7CCA",ja:"\u307C\u304B\u3057",ko:"\uD750\uB9BC"},highlight:{zh:"\u9AD8\u4EAE",en:"Highlight",zh_TW:"\u53CD\u767D\u6A19\u793A",ja:"\u30CF\u30A4\u30E9\u30A4\u30C8",ko:"\uD558\uC774\uB77C\uC774\uD2B8"},blockquote:{zh:"\u5F15\u7528",en:"Blockquote",zh_TW:"\u5F15\u7528",ja:"\u5F15\u7528",ko:"\uC778\uC6A9"},gradient:{zh:"\u6E10\u53D8",en:"Gradient",zh_TW:"\u6F38\u8B8A",ja:"\u30B0\u30E9\u30C7\u30FC\u30B7\u30E7\u30F3",ko:"\uADF8\uB77C\uB370\uC774\uC158"},blink:{zh:"\u95EA\u73B0",en:"Blink",zh_TW:"\u9583\u73FE",ja:"\u70B9\u6EC5",ko:"\uAE5C\uBC15\uC784"},glow:{zh:"\u53D1\u5149",en:"Glow",zh_TW:"\u767C\u5149",ja:"\u767A\u5149",ko:"\uBC1C\uAD11"},colorful:{zh:"\u591A\u5F69",en:"Colorful",zh_TW:"\u591A\u5F69",ja:"\u30AB\u30E9\u30D5\u30EB",ko:"\uB2E4\uCC44\uB86D\uAC8C"},setting:{zh:"\u8BBE\u7F6E",en:"Setting",zh_TW:"\u8A2D\u5B9A",ja:"\u8A2D\u5B9A",ko:"\uC124\uC815"},pattern:{zh:"\u5339\u914D\u7F51\u5740",en:"URL pattern",zh_TW:"\u5339\u914D\u7DB2\u5740",ja:"URL\u30D1\u30BF\u30FC\u30F3",ko:"URL \uD328\uD134"},pattern_helper:{zh:"1\u3001\u652F\u6301\u661F\u53F7(*)\u901A\u914D\u7B26\u30022\u3001\u591A\u4E2AURL\u7528\u6362\u884C\u6216\u82F1\u6587\u9017\u53F7\u201C,\u201D\u5206\u9694\u3002",en:"1. Supports the asterisk (*) wildcard character. 2. Separate multiple URLs with newlines or English commas \",\".",zh_TW:"1. \u652F\u63F4\u661F\u865F (*) \u842C\u7528\u5B57\u5143\u30022. \u591A\u500B URL \u8ACB\u4EE5\u63DB\u884C\u6216\u82F1\u6587\u9017\u865F\u300C,\u300D\u5206\u9694\u3002",ja:"1. \u30A2\u30B9\u30BF\u30EA\u30B9\u30AF (*) \u30EF\u30A4\u30EB\u30C9\u30AB\u30FC\u30C9\u3092\u30B5\u30DD\u30FC\u30C8\u3057\u307E\u3059\u3002 2. \u8907\u6570\u306EURL\u306F\u6539\u884C\u307E\u305F\u306F\u82F1\u8A9E\u306E\u30B3\u30F3\u30DE\u300C,\u300D\u3067\u533A\u5207\u308A\u307E\u3059\u3002",ko:"1. \uBCC4\uD45C(*) \uC640\uC77C\uB4DC\uCE74\uB4DC \uBB38\uC790\uB97C \uC9C0\uC6D0\uD569\uB2C8\uB2E4. 2. \uC5EC\uB7EC URL\uC740 \uC904\uBC14\uAFC8 \uB610\uB294 \uC601\uC5B4 \uC27C\uD45C \",\"\uB85C \uAD6C\uBD84\uD569\uB2C8\uB2E4."},selector_helper:{zh:"1\u3001\u9700\u8981\u7FFB\u8BD1\u7684\u76EE\u6807\u5143\u7D20\u30022\u3001\u5F00\u542F\u81EA\u52A8\u626B\u63CF\u9875\u9762\u540E\uFF0C\u672C\u8BBE\u7F6E\u65E0\u6548\u30023\u3001\u9075\u5FAACSS\u9009\u62E9\u5668\u8BED\u6CD5\u3002",en:"1. The target element to be translated. 2. This setting is invalid when automatic page scanning is enabled. 3. Follow the CSS selector syntax.",zh_TW:"1\u3001\u9700\u8981\u7FFB\u8B6F\u7684\u76EE\u6A19\u5143\u7D20\u3002 2.\u958B\u555F\u81EA\u52D5\u6383\u63CF\u9801\u9762\u5F8C\uFF0C\u672C\u8A2D\u5B9A\u7121\u6548\u3002 3.\u9075\u5FAACSS\u9078\u64C7\u5668\u8A9E\u6CD5\u3002",ja:"1. \u7FFB\u8A33\u5BFE\u8C61\u306E\u8981\u7D20\u3002 2. \u30DA\u30FC\u30B8\u306E\u81EA\u52D5\u30B9\u30AD\u30E3\u30F3\u3092\u6709\u52B9\u306B\u3059\u308B\u3068\u3001\u3053\u306E\u8A2D\u5B9A\u306F\u7121\u52B9\u306B\u306A\u308A\u307E\u3059\u3002 3. CSS\u30BB\u30EC\u30AF\u30BF\u69CB\u6587\u306B\u5F93\u3063\u3066\u304F\u3060\u3055\u3044\u3002",ko:"1. \uBC88\uC5ED\uD560 \uB300\uC0C1 \uC694\uC18C\uC785\uB2C8\uB2E4. 2. \uC790\uB3D9 \uD398\uC774\uC9C0 \uC2A4\uCE94\uC774 \uD65C\uC131\uD654\uB418\uBA74 \uC774 \uC124\uC815\uC740 \uBB34\uD6A8\uD654\uB429\uB2C8\uB2E4. 3. CSS \uC120\uD0DD\uC790 \uAD6C\uBB38\uC744 \uB530\uB985\uB2C8\uB2E4."},translate_switch:{zh:"\u5F00\u542F\u7FFB\u8BD1",en:"Translate Switch",zh_TW:"\u958B\u555F\u7FFB\u8B6F",ja:"\u7FFB\u8A33\u3092\u6709\u52B9\u306B\u3059\u308B",ko:"\uBC88\uC5ED \uCF1C\uAE30"},default_enabled:{zh:"\u9ED8\u8BA4\u5F00\u542F",en:"Enabled",zh_TW:"\u9810\u8A2D\u958B\u555F",ja:"\u30C7\u30D5\u30A9\u30EB\u30C8\u3067\u6709\u52B9",ko:"\uAE30\uBCF8\uC73C\uB85C \uC0AC\uC6A9"},default_disabled:{zh:"\u9ED8\u8BA4\u5173\u95ED",en:"Disabled",zh_TW:"\u9810\u8A2D\u95DC\u9589",ja:"\u30C7\u30D5\u30A9\u30EB\u30C8\u3067\u7121\u52B9",ko:"\uAE30\uBCF8\uC73C\uB85C \uC0AC\uC6A9 \uC548\uD568"},selector:{zh:"\u9009\u62E9\u5668",en:"Selector",zh_TW:"\u9078\u64C7\u5668",ja:"\u30BB\u30EC\u30AF\u30BF",ko:"\uC120\uD0DD\uC790"},target_selector:{zh:"\u76EE\u6807\u5143\u7D20\u9009\u62E9\u5668",en:"Target element selector",zh_TW:"\u76EE\u6A19\u5143\u7D20\u9078\u64C7\u5668",ja:"\u5BFE\u8C61\u8981\u7D20\u30BB\u30EC\u30AF\u30BF",ko:"\uB300\uC0C1 \uC694\uC18C \uC120\uD0DD\uC790"},keep_selector:{zh:"\u4FDD\u7559\u5143\u7D20\u9009\u62E9\u5668",en:"Keep unchanged selector",zh_TW:"\u4FDD\u7559\u5143\u7D20\u9078\u64C7\u5668",ja:"\u4FDD\u6301\u8981\u7D20\u30BB\u30EC\u30AF\u30BF",ko:"\uC720\uC9C0\uD560 \uC694\uC18C \uC120\uD0DD\uC790"},keep_selector_helper:{zh:"1\u3001\u76EE\u6807\u5143\u7D20\u4E0B\u9762\u9700\u8981\u539F\u6837\u4FDD\u7559\u7684\u5B50\u8282\u70B9\u30022\u3001\u9075\u5FAACSS\u9009\u62E9\u5668\u8BED\u6CD5\u3002",en:"1. The child nodes under the target element need to remain intact. 2. Follow the CSS selector syntax.",zh_TW:"1. \u76EE\u6A19\u5143\u7D20\u4E0B\u7684\u5B50\u7BC0\u9EDE\u9700\u8981\u4FDD\u6301\u539F\u6A23\u3002 2. \u9075\u5FAA CSS \u9078\u64C7\u5668\u8A9E\u6CD5\u3002",ja:"1. \u5BFE\u8C61\u8981\u7D20\u306E\u4E0B\u306B\u3042\u308B\u3001\u305D\u306E\u307E\u307E\u4FDD\u6301\u3059\u308B\u5FC5\u8981\u304C\u3042\u308B\u5B50\u30CE\u30FC\u30C9\u3002 2. CSS\u30BB\u30EC\u30AF\u30BF\u69CB\u6587\u306B\u5F93\u3063\u3066\u304F\u3060\u3055\u3044\u3002",ko:"1. \uB300\uC0C1 \uC694\uC18C \uC544\uB798\uC758 \uC790\uC2DD \uB178\uB4DC \uC911 \uADF8\uB300\uB85C \uC720\uC9C0\uD574\uC57C \uD558\uB294 \uB178\uB4DC. 2. CSS \uC120\uD0DD\uC790 \uAD6C\uBB38\uC744 \uB530\uB985\uB2C8\uB2E4."},root_selector:{zh:"\u6839\u8282\u70B9\u9009\u62E9\u5668",en:"Root node selector",zh_TW:"\u6839\u7BC0\u9EDE\u9078\u64C7\u5668",ja:"\u30EB\u30FC\u30C8\u30CE\u30FC\u30C9\u30BB\u30EC\u30AF\u30BF",ko:"\uB8E8\uD2B8 \uB178\uB4DC \uC120\uD0DD\uC790"},root_selector_helper:{zh:"1\u3001\u7528\u4E8E\u7F29\u5C0F\u9875\u9762\u7FFB\u8BD1\u8303\u56F4\u30022\u3001\u9075\u5FAACSS\u9009\u62E9\u5668\u8BED\u6CD5\u3002",en:"1. Used to narrow the translation scope of the page. 2. Follow the CSS selector syntax.",zh_TW:"1.\u7528\u65BC\u7E2E\u5C0F\u9801\u9762\u7FFB\u8B6F\u7BC4\u570D\u3002 2\u3001\u9075\u5FAACSS\u9078\u64C7\u5668\u8A9E\u6CD5\u3002",ja:"1. \u30DA\u30FC\u30B8\u306E\u7FFB\u8A33\u7BC4\u56F2\u3092\u7D5E\u308A\u8FBC\u3080\u305F\u3081\u306B\u4F7F\u7528\u3057\u307E\u3059\u3002 2. CSS\u30BB\u30EC\u30AF\u30BF\u69CB\u6587\u306B\u5F93\u3063\u3066\u304F\u3060\u3055\u3044\u3002",ko:"1. \uD398\uC774\uC9C0\uC758 \uBC88\uC5ED \uBC94\uC704\uB97C \uC881\uD788\uB294 \uB370 \uC0AC\uC6A9\uB429\uB2C8\uB2E4. 2. CSS \uC120\uD0DD\uC790 \uAD6C\uBB38\uC744 \uB530\uB985\uB2C8\uB2E4."},ignore_selector:{zh:"\u4E0D\u7FFB\u8BD1\u8282\u70B9\u9009\u62E9\u5668",en:"Ignore node selectors",zh_TW:"\u4E0D\u7FFB\u8B6F\u7BC0\u9EDE\u9078\u64C7\u5668",ja:"\u7FFB\u8A33\u3057\u306A\u3044\u30CE\u30FC\u30C9\u30BB\u30EC\u30AF\u30BF",ko:"\uBC88\uC5ED \uBB34\uC2DC \uB178\uB4DC \uC120\uD0DD\uC790"},ignore_selector_helper:{zh:"1\u3001\u9700\u8981\u5FFD\u7565\u7684\u8282\u70B9\u30022\u3001\u9075\u5FAACSS\u9009\u62E9\u5668\u8BED\u6CD5\u3002",en:"1. Nodes to be ignored. 2. Follow CSS selector syntax.",zh_TW:"1\u3001\u9700\u8981\u5FFD\u7565\u7684\u7BC0\u9EDE\u3002 2\u3001\u9075\u5FAACSS\u9078\u64C7\u5668\u8A9E\u6CD5\u3002",ja:"1. \u7121\u8996\u3059\u308B\u30CE\u30FC\u30C9\u3002 2. CSS\u30BB\u30EC\u30AF\u30BF\u69CB\u6587\u306B\u5F93\u3063\u3066\u304F\u3060\u3055\u3044\u3002",ko:"1. \uBB34\uC2DC\uD560 \uB178\uB4DC. 2. CSS \uC120\uD0DD\uC790 \uAD6C\uBB38\uC744 \uB530\uB985\uB2C8\uB2E4."},terms:{zh:"\u4E13\u4E1A\u672F\u8BED",en:"Terms",zh_TW:"\u5C08\u696D\u8853\u8A9E",ja:"\u5C02\u9580\u7528\u8A9E",ko:"\uC804\uBB38 \uC6A9\uC5B4"},terms_helper:{zh:"1\u3001\u652F\u6301\u6B63\u5219\u8868\u8FBE\u5F0F\u5339\u914D\uFF0C\u65E0\u9700\u659C\u6746\uFF0C\u4E0D\u652F\u6301\u4FEE\u9970\u7B26\u30022\u3001\u591A\u6761\u672F\u8BED\u7528\u6362\u884C\u6216\u5206\u53F7\u201C;\u201D\u9694\u5F00\u30023\u3001\u672F\u8BED\u548C\u8BD1\u6587\u7528\u82F1\u6587\u9017\u53F7\u201C,\u201D\u9694\u5F00\u30024\u3001\u6CA1\u6709\u8BD1\u6587\u89C6\u4E3A\u4E0D\u7FFB\u8BD1\u672F\u8BED\u3002",en:"1. Supports regular expression matching, no slash required, and no modifiers are supported. 2. Separate multiple terms with newlines or semicolons \";\". 3. Terms and translations are separated by English commas \",\". 4. If there is no translation, the term will be deemed not to be translated.",zh_TW:"1. \u652F\u63F4\u6B63\u5247\u8868\u9054\u5F0F\u6BD4\u5C0D\uFF0C\u7121\u9700\u659C\u7DDA\uFF0C\u4E14\u4E0D\u652F\u63F4\u4FEE\u98FE\u7B26\u30022. \u591A\u689D\u8853\u8A9E\u4EE5\u63DB\u884C\u6216\u5206\u865F\u300C;\u300D\u5206\u9694\u30023. \u8853\u8A9E\u8207\u8B6F\u6587\u4EE5\u82F1\u6587\u9017\u865F\u300C,\u300D\u5206\u9694\u30024. \u7121\u8B6F\u6587\u8005\u8996\u70BA\u4E0D\u7FFB\u8B6F\u8A72\u8853\u8A9E\u3002",ja:"1. \u6B63\u898F\u8868\u73FE\u30DE\u30C3\u30C1\u30F3\u30B0\u3092\u30B5\u30DD\u30FC\u30C8 (\u30B9\u30E9\u30C3\u30B7\u30E5\u4E0D\u8981\u3001\u4FEE\u98FE\u5B50\u975E\u5BFE\u5FDC)\u3002 2. \u8907\u6570\u306E\u7528\u8A9E\u306F\u6539\u884C\u307E\u305F\u306F\u30BB\u30DF\u30B3\u30ED\u30F3\u300C;\u300D\u3067\u533A\u5207\u308A\u307E\u3059\u3002 3. \u7528\u8A9E\u3068\u7FFB\u8A33\u306F\u82F1\u8A9E\u306E\u30B3\u30F3\u30DE\u300C,\u300D\u3067\u533A\u5207\u308A\u307E\u3059\u3002 4. \u7FFB\u8A33\u304C\u306A\u3044\u5834\u5408\u306F\u3001\u305D\u306E\u7528\u8A9E\u3092\u7FFB\u8A33\u3057\u306A\u3044\u3082\u306E\u3068\u307F\u306A\u3057\u307E\u3059\u3002",ko:"1. \uC815\uADDC\uC2DD \uC77C\uCE58\uB97C \uC9C0\uC6D0\uD558\uBA70, \uC2AC\uB798\uC2DC\uAC00 \uD544\uC694 \uC5C6\uACE0 \uC218\uC815\uC790\uB294 \uC9C0\uC6D0\uB418\uC9C0 \uC54A\uC2B5\uB2C8\uB2E4. 2. \uC5EC\uB7EC \uC6A9\uC5B4\uB294 \uC904\uBC14\uAFC8 \uB610\uB294 \uC138\uBBF8\uCF5C\uB860 \";\"\uC73C\uB85C \uAD6C\uBD84\uD569\uB2C8\uB2E4. 3. \uC6A9\uC5B4\uC640 \uBC88\uC5ED\uC740 \uC601\uC5B4 \uC27C\uD45C \",\"\uB85C \uAD6C\uBD84\uD569\uB2C8\uB2E4. 4. \uBC88\uC5ED\uC774 \uC5C6\uB294 \uACBD\uC6B0 \uD574\uB2F9 \uC6A9\uC5B4\uB97C \uBC88\uC5ED\uD558\uC9C0 \uC54A\uB294 \uAC83\uC73C\uB85C \uAC04\uC8FC\uD569\uB2C8\uB2E4."},ai_terms:{zh:"AI\u4E13\u4E1A\u672F\u8BED",en:"AI Terms",zh_TW:"AI\u5C08\u696D\u8853\u8A9E",ja:"AI\u5C02\u9580\u7528\u8A9E",ko:"AI \uC804\uBB38 \uC6A9\uC5B4"},ai_terms_helper:{zh:"1\u3001AI\u667A\u80FD\u66FF\u6362\uFF0C\u4E0D\u652F\u6301\u6B63\u5219\u8868\u8FBE\u5F0F\u30022\u3001\u591A\u6761\u672F\u8BED\u7528\u6362\u884C\u6216\u5206\u53F7\u201C;\u201D\u9694\u5F00\u30023\u3001\u672F\u8BED\u548C\u8BD1\u6587\u7528\u82F1\u6587\u9017\u53F7\u201C,\u201D\u9694\u5F00\u30024\u3001\u6CA1\u6709\u8BD1\u6587\u89C6\u4E3A\u4E0D\u7FFB\u8BD1\u672F\u8BED\u3002",en:"1. AI intelligent replacement does not support regular expressions.2. Separate multiple terms with newlines or semicolons \";\". 3. Terms and translations are separated by English commas \",\". 4. If there is no translation, the term will be deemed not to be translated.",zh_TW:"1.AI\u667A\u80FD\u66FF\u63DB\uFF0C\u4E0D\u652F\u63F4\u6B63\u898F\u8868\u793A\u5F0F\u30022. \u591A\u689D\u8853\u8A9E\u4EE5\u63DB\u884C\u6216\u5206\u865F\u300C;\u300D\u5206\u9694\u30023. \u8853\u8A9E\u8207\u8B6F\u6587\u4EE5\u82F1\u6587\u9017\u865F\u300C,\u300D\u5206\u9694\u30024. \u7121\u8B6F\u6587\u8005\u8996\u70BA\u4E0D\u7FFB\u8B6F\u8A72\u8853\u8A9E\u3002",ja:"1. AI\u306B\u3088\u308B\u30A4\u30F3\u30C6\u30EA\u30B8\u30A7\u30F3\u30C8\u306A\u7F6E\u63DB (\u6B63\u898F\u8868\u73FE\u975E\u5BFE\u5FDC)\u3002 2. \u8907\u6570\u306E\u7528\u8A9E\u306F\u6539\u884C\u307E\u305F\u306F\u30BB\u30DF\u30B3\u30ED\u30F3\u300C;\u300D\u3067\u533A\u5207\u308A\u307E\u3059\u3002 3. \u7528\u8A9E\u3068\u7FFB\u8A33\u306F\u82F1\u8A9E\u306E\u30B3\u30F3\u30DE\u300C,\u300D\u3067\u533A\u5207\u308A\u307E\u3059\u3002 4. \u7FFB\u8A33\u304C\u306A\u3044\u5834\u5408\u306F\u3001\u305D\u306E\u7528\u8A9E\u3092\u7FFB\u8A33\u3057\u306A\u3044\u3082\u306E\u3068\u307F\u306A\u3057\u307E\u3059\u3002",ko:"1. AI \uC9C0\uB2A5\uD615 \uB300\uCCB4, \uC815\uADDC\uC2DD\uC744 \uC9C0\uC6D0\uD558\uC9C0 \uC54A\uC2B5\uB2C8\uB2E4. 2. \uC5EC\uB7EC \uC6A9\uC5B4\uB294 \uC904\uBC14\uAFC8 \uB610\uB294 \uC138\uBBF8\uCF5C\uB860 \";\"\uC73C\uB85C \uAD6C\uBD84\uD569\uB2C8\uB2E4. 3. \uC6A9\uC5B4\uC640 \uBC88\uC5ED\uC740 \uC601\uC5B4 \uC27C\uD45C \",\"\uB85C \uAD6C\uBD84\uD569\uB2C8\uB2E4. 4. \uBC88\uC5ED\uC774 \uC5C6\uB294 \uACBD\uC6B0 \uD574\uB2F9 \uC6A9\uC5B4\uB97C \uBC88\uC5ED\uD558\uC9C0 \uC54A\uB294 \uAC83\uC73C\uB85C \uAC04\uC8FC\uD569\uB2C8\uB2E4."},text_ext_style:{zh:"\u8BD1\u6587\u9644\u52A0\u6837\u5F0F",en:"Translation additional styles",zh_TW:"\u8B6F\u6587\u9644\u52A0\u6A23\u5F0F",ja:"\u7FFB\u8A33\u306E\u8FFD\u52A0\u30B9\u30BF\u30A4\u30EB",ko:"\uBC88\uC5ED \uCD94\uAC00 \uC2A4\uD0C0\uC77C"},selector_style:{zh:"\u9009\u62E9\u5668\u8282\u70B9\u6837\u5F0F",en:"Selector Style",zh_TW:"\u9078\u64C7\u5668\u7BC0\u9EDE\u6A23\u5F0F",ja:"\u30BB\u30EC\u30AF\u30BF\u30CE\u30FC\u30C9\u30B9\u30BF\u30A4\u30EB",ko:"\uC120\uD0DD\uC790 \uB178\uB4DC \uC2A4\uD0C0\uC77C"},terms_style:{zh:"\u4E13\u4E1A\u672F\u8BED\u6837\u5F0F",en:"Terms Style",zh_TW:"\u5C08\u696D\u8853\u8A9E\u6A23\u5F0F",ja:"\u5C02\u9580\u7528\u8A9E\u30B9\u30BF\u30A4\u30EB",ko:"\uC804\uBB38 \uC6A9\uC5B4 \uC2A4\uD0C0\uC77C"},highlight_style:{zh:"\u8BCD\u6C47\u9AD8\u4EAE\u6837\u5F0F",en:"Fav Words highlight style",zh_TW:"\u8A5E\u5F59\u9AD8\u4EAE\u6A23\u5F0F",ja:"\u5358\u8A9E\u30CF\u30A4\u30E9\u30A4\u30C8\u30B9\u30BF\u30A4\u30EB",ko:"\uB2E8\uC5B4 \uD558\uC774\uB77C\uC774\uD2B8 \uC2A4\uD0C0\uC77C"},selector_style_helper:{zh:"\u5F00\u542F\u7FFB\u8BD1\u65F6\u6CE8\u5165\u3002",en:"It is injected when translation is turned on.",zh_TW:"\u5728\u958B\u555F\u7FFB\u8B6F\u6642\u6CE8\u5165\u3002",ja:"\u7FFB\u8A33\u304C\u6709\u52B9\u306A\u3068\u304D\u306B\u6CE8\u5165\u3055\u308C\u307E\u3059\u3002",ko:"\uBC88\uC5ED\uC774 \uCF1C\uC838 \uC788\uC744 \uB54C \uC8FC\uC785\uB429\uB2C8\uB2E4."},selector_parent_style:{zh:"\u9009\u62E9\u5668\u7236\u8282\u70B9\u6837\u5F0F",en:"Parent Selector Style",zh_TW:"\u9078\u64C7\u5668\u7236\u7BC0\u9EDE\u6A23\u5F0F",ja:"\u89AA\u30BB\u30EC\u30AF\u30BF\u30B9\u30BF\u30A4\u30EB",ko:"\uBD80\uBAA8 \uC120\uD0DD\uC790 \uC2A4\uD0C0\uC77C"},selector_grand_style:{zh:"\u9009\u62E9\u5668\u7956\u8282\u70B9\u6837\u5F0F",en:"Grand Selector Style",zh_TW:"\u9078\u64C7\u5668\u7956\u7BC0\u9EDE\u6A23\u5F0F",ja:"\u7956\u5148\u30BB\u30EC\u30AF\u30BF\u30B9\u30BF\u30A4\u30EB",ko:"\uC0C1\uC704 \uC120\uD0DD\uC790 \uC2A4\uD0C0\uC77C"},inject_js:{zh:"\u6CE8\u5165JS",en:"Inject JS",zh_TW:"\u6CE8\u5165 JS",ja:"JS\u3092\u6CE8\u5165",ko:"JS \uC8FC\uC785"},inject_js_helper:{zh:"\u9884\u52A0\u8F7D\u65F6\u6CE8\u5165\uFF0C\u4E00\u4E2A\u9875\u9762\u4EC5\u8FD0\u884C\u4E00\u6B21\u3002\u5185\u7F6E\u5168\u5C40\u5BF9\u8C61 KT: {\n apiTranslate,\n apiDectect,\n apiSetting,\n apisMap,\n toLang,\n docInfo,\n glossary,\n }",en:"Injected during preload, runs only once per page. Built-in global object KT: {\n apiTranslate,\n apiDectect,\n apiSetting,\n apisMap,\n toLang,\n docInfo,\n glossary,\n }",zh_TW:"\u9810\u5148\u8F09\u5165\u6642\u6CE8\u5165\uFF0C\u4E00\u500B\u9801\u9762\u50C5\u904B\u884C\u4E00\u6B21\u3002\u5167\u5EFA\u5168\u57DF\u7269\u4EF6 KT: {\n apiTranslate,\n apiDectect,\n apiSetting,\n apisMap,\n toLang,\n docInfo,\n glossary,\n }",ja:"\u30D7\u30EA\u30ED\u30FC\u30C9\u6642\u306B\u6CE8\u5165\u3055\u308C\u3001\u30DA\u30FC\u30B8\u3054\u3068\u306B1\u56DE\u3060\u3051\u5B9F\u884C\u3055\u308C\u307E\u3059\u3002\u7D44\u307F\u8FBC\u307F\u30B0\u30ED\u30FC\u30D0\u30EB\u30AA\u30D6\u30B8\u30A7\u30AF\u30C8 KT: {\n apiTranslate,\n apiDectect,\n apiSetting,\n apisMap,\n toLang,\n docInfo,\n glossary,\n }",ko:"\uBBF8\uB9AC \uB85C\uB4DC \uC2DC \uC8FC\uC785\uB418\uBA70 \uD398\uC774\uC9C0\uB2F9 \uD55C \uBC88\uB9CC \uC2E4\uD589\uB429\uB2C8\uB2E4. \uB0B4\uC7A5 \uC804\uC5ED \uAC1D\uCCB4 KT: {\n apiTranslate,\n apiDectect,\n apiSetting,\n apisMap,\n toLang,\n docInfo,\n glossary,\n }"},inject_css:{zh:"\u6CE8\u5165CSS",en:"Inject CSS",zh_TW:"\u6CE8\u5165 CSS",ja:"CSS\u3092\u6CE8\u5165",ko:"CSS \uC8FC\uC785"},inject_css_helper:{zh:"\u9884\u52A0\u8F7D\u65F6\u6CE8\u5165\uFF0C\u4E00\u4E2A\u9875\u9762\u4EC5\u8FD0\u884C\u4E00\u6B21\u3002",en:"Injected during preload, runs only once per page.",zh_TW:"\u9810\u5148\u8F09\u5165\u6642\u6CE8\u5165\uFF0C\u4E00\u500B\u9801\u9762\u50C5\u904B\u884C\u4E00\u6B21\u3002",ja:"\u30D7\u30EA\u30ED\u30FC\u30C9\u6642\u306B\u6CE8\u5165\u3055\u308C\u3001\u30DA\u30FC\u30B8\u3054\u3068\u306B1\u56DE\u3060\u3051\u5B9F\u884C\u3055\u308C\u307E\u3059\u3002",ko:"\uBBF8\uB9AC \uB85C\uB4DC \uC2DC \uC8FC\uC785\uB418\uBA70 \uD398\uC774\uC9C0\uB2F9 \uD55C \uBC88\uB9CC \uC2E4\uD589\uB429\uB2C8\uB2E4."},fixer_function:{zh:"\u4FEE\u590D\u51FD\u6570",en:"Fixer Function",zh_TW:"\u4FEE\u5FA9\u51FD\u5F0F",ja:"\u4FEE\u6B63\u95A2\u6570",ko:"\uC218\uC815 \uD568\uC218"},fixer_function_helper:{zh:"1\u3001br\u662F\u5C06
\u6362\u884C\u66FF\u6362\u6210

\u30022\u3001bn\u662F\u5C06\\n\u6362\u884C\u66FF\u6362\u6210

\u30023\u3001brToDiv\u548CbnToDiv\u662F\u66FF\u6362\u6210

\u3002",en:"1. br replaces
line breaks with

. 2. bn replaces \\n newline with

. 3. brToDiv and bnToDiv are replaced with

.",zh_TW:"1. br \u6703\u5C07
\u63DB\u884C\u66FF\u63DB\u70BA

\u30022. bn \u6703\u5C07 \\n \u63DB\u884C\u66FF\u63DB\u70BA

\u30023. brToDiv \u8207 bnToDiv \u6703\u66FF\u63DB\u70BA

\u3002",ja:"1. br \u306F
\u6539\u884C\u3092

\u306B\u7F6E\u304D\u63DB\u3048\u307E\u3059\u3002 2. bn \u306F \\n \u6539\u884C\u3092

\u306B\u7F6E\u304D\u63DB\u3048\u307E\u3059\u3002 3. brToDiv \u3068 bnToDiv \u306F

\u306B\u7F6E\u304D\u63DB\u3048\u307E\u3059\u3002",ko:"1. br\uC740
\uC904\uBC14\uAFC8\uC744

\uB85C \uB300\uCCB4\uD569\uB2C8\uB2E4. 2. bn\uC740 \\n \uC904\uBC14\uAFC8\uC744

\uB85C \uB300\uCCB4\uD569\uB2C8\uB2E4. 3. brToDiv \uBC0F bnToDiv\uB294

\uB85C \uB300\uCCB4\uB429\uB2C8\uB2E4."},import:{zh:"\u5BFC\u5165",en:"Import",zh_TW:"\u532F\u5165",ja:"\u30A4\u30F3\u30DD\u30FC\u30C8",ko:"\uAC00\uC838\uC624\uAE30"},export:{zh:"\u5BFC\u51FA",en:"Export",zh_TW:"\u532F\u51FA",ja:"\u30A8\u30AF\u30B9\u30DD\u30FC\u30C8",ko:"\uB0B4\uBCF4\uB0B4\uAE30"},export_translation:{zh:"\u5BFC\u51FA\u91CA\u4E49",en:"Export Translation",zh_TW:"\u532F\u51FA\u91CB\u7FA9",ja:"\u8A33\u6587\u306E\u30A8\u30AF\u30B9\u30DD\u30FC\u30C8",ko:"\uBC88\uC5ED \uB0B4\uBCF4\uB0B4\uAE30"},error_cant_be_blank:{zh:"\u4E0D\u80FD\u4E3A\u7A7A",en:"Can not be blank",zh_TW:"\u4E0D\u53EF\u70BA\u7A7A",ja:"\u7A7A\u767D\u306B\u3059\u308B\u3053\u3068\u306F\u3067\u304D\u307E\u305B\u3093",ko:"\uBE44\uC6CC\uB458 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4"},error_duplicate_values:{zh:"\u5B58\u5728\u91CD\u590D\u7684\u503C",en:"There are duplicate values",zh_TW:"\u5B58\u5728\u91CD\u8907\u7684\u503C",ja:"\u91CD\u8907\u3059\u308B\u5024\u304C\u5B58\u5728\u3057\u307E\u3059",ko:"\uC911\uBCF5\uB41C \uAC12\uC774 \uC788\uC2B5\uB2C8\uB2E4"},error_wrong_file_type:{zh:"\u9519\u8BEF\u7684\u6587\u4EF6\u7C7B\u578B",en:"Wrong file type",zh_TW:"\u6A94\u6848\u985E\u578B\u932F\u8AA4",ja:"\u4E0D\u6B63\u306A\u30D5\u30A1\u30A4\u30EB\u30BF\u30A4\u30D7\u3067\u3059",ko:"\uC798\uBABB\uB41C \uD30C\uC77C \uD615\uC2DD\uC785\uB2C8\uB2E4"},error_fetch_url:{zh:"\u8BF7\u68C0\u67E5url\u5730\u5740\u662F\u5426\u6B63\u786E\u6216\u7A0D\u540E\u518D\u8BD5\u3002",en:"Please check if the url address is correct or try again later.",zh_TW:"\u8ACB\u6AA2\u67E5 URL \u662F\u5426\u6B63\u78BA\u6216\u7A0D\u5F8C\u518D\u8A66\u3002",ja:"URL\u30A2\u30C9\u30EC\u30B9\u304C\u6B63\u3057\u3044\u304B\u78BA\u8A8D\u3059\u308B\u304B\u3001\u5F8C\u3067\u3082\u3046\u4E00\u5EA6\u304A\u8A66\u3057\u304F\u3060\u3055\u3044\u3002",ko:"URL \uC8FC\uC18C\uAC00 \uC62C\uBC14\uB978\uC9C0 \uD655\uC778\uD558\uAC70\uB098 \uB098\uC911\uC5D0 \uB2E4\uC2DC \uC2DC\uB3C4\uD558\uC2ED\uC2DC\uC624."},deepl_api:{zh:"DeepL \u63A5\u53E3",en:"DeepL API",zh_TW:"DeepL \u4ECB\u9762",ja:"DeepL API",ko:"DeepL API"},deepl_key:{zh:"DeepL \u5BC6\u94A5",en:"DeepL Key",zh_TW:"DeepL \u91D1\u9470",ja:"DeepL \u30AD\u30FC",ko:"DeepL \uD0A4"},openai_api:{zh:"OpenAI \u63A5\u53E3",en:"OpenAI API",zh_TW:"OpenAI \u4ECB\u9762",ja:"OpenAI API",ko:"OpenAI API"},openai_key:{zh:"OpenAI \u5BC6\u94A5",en:"OpenAI Key",zh_TW:"OpenAI \u91D1\u9470",ja:"OpenAI \u30AD\u30FC",ko:"OpenAI \uD0A4"},openai_model:{zh:"OpenAI \u6A21\u578B",en:"OpenAI Model",zh_TW:"OpenAI \u6A21\u578B",ja:"OpenAI \u30E2\u30C7\u30EB",ko:"OpenAI \uBAA8\uB378"},openai_prompt:{zh:"OpenAI \u63D0\u793A\u8BCD",en:"OpenAI Prompt",zh_TW:"OpenAI \u63D0\u793A\u8A5E",ja:"OpenAI \u30D7\u30ED\u30F3\u30D7\u30C8",ko:"OpenAI \uD504\uB86C\uD504\uD2B8"},if_clear_cache:{zh:"\u662F\u5426\u6E05\u9664\u7F13\u5B58\uFF08\u9ED8\u8BA4\u7F13\u5B587\u5929\uFF09",en:"Whether clear cache (Default cache is 7 days)",zh_TW:"\u662F\u5426\u6E05\u9664\u5FEB\u53D6\uFF08\u9810\u8A2D\u5FEB\u53D67\u5929\uFF09",ja:"\u30AD\u30E3\u30C3\u30B7\u30E5\u3092\u30AF\u30EA\u30A2\u3057\u307E\u3059\u304B\uFF08\u30C7\u30D5\u30A9\u30EB\u30C8\u306E\u30AD\u30E3\u30C3\u30B7\u30E5\u671F\u9593\u306F7\u65E5\u9593\u3067\u3059\uFF09",ko:"\uCE90\uC2DC\uB97C \uC9C0\uC6B0\uC2DC\uACA0\uC2B5\uB2C8\uAE4C (\uAE30\uBCF8 \uCE90\uC2DC 7\uC77C)"},clear_cache_never:{zh:"\u4E0D\u6E05\u9664\u7F13\u5B58",en:"Never clear cache",zh_TW:"\u4E0D\u6E05\u9664\u5FEB\u53D6",ja:"\u30AD\u30E3\u30C3\u30B7\u30E5\u3092\u30AF\u30EA\u30A2\u3057\u306A\u3044",ko:"\uCE90\uC2DC \uC9C0\uC6B0\uC9C0 \uC54A\uC74C"},clear_cache_restart:{zh:"\u91CD\u542F\u6D4F\u89C8\u5668\u65F6\u6E05\u9664\u7F13\u5B58",en:"Clear cache when restarting browser",zh_TW:"\u91CD\u65B0\u555F\u52D5\u700F\u89BD\u5668\u6642\u6E05\u9664\u5FEB\u53D6",ja:"\u30D6\u30E9\u30A6\u30B6\u518D\u8D77\u52D5\u6642\u306B\u30AD\u30E3\u30C3\u30B7\u30E5\u3092\u30AF\u30EA\u30A2",ko:"\uBE0C\uB77C\uC6B0\uC800 \uC7AC\uC2DC\uC791 \uC2DC \uCE90\uC2DC \uC9C0\uC6B0\uAE30"},data_sync_type:{zh:"\u6570\u636E\u540C\u6B65\u65B9\u5F0F",en:"Data Sync Type",zh_TW:"\u8CC7\u6599\u540C\u6B65\u65B9\u5F0F",ja:"\u30C7\u30FC\u30BF\u540C\u671F\u30BF\u30A4\u30D7",ko:"\uB370\uC774\uD130 \uB3D9\uAE30\uD654 \uC720\uD615"},data_sync_url:{zh:"\u6570\u636E\u540C\u6B65\u63A5\u53E3",en:"Data Sync API",zh_TW:"\u8CC7\u6599\u540C\u6B65\u4ECB\u9762",ja:"\u30C7\u30FC\u30BF\u540C\u671FAPI",ko:"\uB370\uC774\uD130 \uB3D9\uAE30\uD654 API"},data_sync_user:{zh:"\u6570\u636E\u540C\u6B65\u8D26\u6237",en:"Data Sync User",zh_TW:"\u8CC7\u6599\u540C\u6B65\u5E33\u865F",ja:"\u30C7\u30FC\u30BF\u540C\u671F\u30A2\u30AB\u30A6\u30F3\u30C8",ko:"\uB370\uC774\uD130 \uB3D9\uAE30\uD654 \uACC4\uC815"},data_sync_key:{zh:"\u6570\u636E\u540C\u6B65\u5BC6\u94A5",en:"Data Sync Key",zh_TW:"\u8CC7\u6599\u540C\u6B65\u91D1\u9470",ja:"\u30C7\u30FC\u30BF\u540C\u671F\u30AD\u30FC",ko:"\uB370\uC774\uD130 \uB3D9\uAE30\uD654 \uD0A4"},sync_now:{zh:"\u7ACB\u5373\u540C\u6B65",en:"Sync Now",zh_TW:"\u7ACB\u5373\u540C\u6B65",ja:"\u4ECA\u3059\u3050\u540C\u671F",ko:"\uC9C0\uAE08 \uB3D9\uAE30\uD654"},sync_success:{zh:"\u540C\u6B65\u6210\u529F\uFF01",en:"Sync Success",zh_TW:"\u540C\u6B65\u6210\u529F\uFF01",ja:"\u540C\u671F\u6210\u529F\uFF01",ko:"\uB3D9\uAE30\uD654 \uC131\uACF5!"},sync_failed:{zh:"\u540C\u6B65\u5931\u8D25\uFF01",en:"Sync Error",zh_TW:"\u540C\u6B65\u5931\u6557\uFF01",ja:"\u540C\u671F\u5931\u6557\uFF01",ko:"\uB3D9\uAE30\uD654 \uC2E4\uD328!"},error_got_some_wrong:{zh:"\u62B1\u6B49\uFF0C\u51FA\u9519\u4E86\uFF01",en:"Sorry, something went wrong!",zh_TW:"\u62B1\u6B49\uFF0C\u767C\u751F\u932F\u8AA4\uFF01",ja:"\u7533\u3057\u8A33\u3042\u308A\u307E\u305B\u3093\u3001\u30A8\u30E9\u30FC\u304C\u767A\u751F\u3057\u307E\u3057\u305F\uFF01",ko:"\uC8C4\uC1A1\uD569\uB2C8\uB2E4, \uC624\uB958\uAC00 \uBC1C\uC0DD\uD588\uC2B5\uB2C8\uB2E4!"},error_sync_setting:{zh:"\u60A8\u7684\u540C\u6B65\u7C7B\u578B\u5FC5\u987B\u4E3A\u201CKISS-Worker\u201D\uFF0C\u4E14\u9700\u586B\u5199\u5B8C\u6574",en:"Your sync type must be \"KISS-Worker\" and must be filled in completely",zh_TW:"\u60A8\u7684\u540C\u6B65\u578B\u614B\u5FC5\u9808\u70BA\u300CKISS-Worker\u300D\uFF0C\u4E14\u9700\u586B\u5BEB\u5B8C\u6574\u3002",ja:"\u540C\u671F\u30BF\u30A4\u30D7\u306F\u300CKISS-Worker\u300D\u3067\u3042\u308B\u5FC5\u8981\u304C\u3042\u308A\u3001\u3059\u3079\u3066\u5165\u529B\u3059\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059\u3002",ko:"\uB3D9\uAE30\uD654 \uC720\uD615\uC740 \"KISS-Worker\"\uC5EC\uC57C \uD558\uBA70, \uBAA8\uB4E0 \uD56D\uBAA9\uC744 \uBE60\uC9D0\uC5C6\uC774 \uC785\uB825\uD574\uC57C \uD569\uB2C8\uB2E4."},click_test:{zh:"\u70B9\u51FB\u6D4B\u8BD5",en:"Click Test",zh_TW:"\u9EDE\u64CA\u6E2C\u8A66",ja:"\u30AF\u30EA\u30C3\u30AF\u3057\u3066\u30C6\u30B9\u30C8",ko:"\uD074\uB9AD \uD14C\uC2A4\uD2B8"},test_success:{zh:"\u6D4B\u8BD5\u6210\u529F",en:"Test success",zh_TW:"\u6E2C\u8A66\u6210\u529F",ja:"\u30C6\u30B9\u30C8\u6210\u529F",ko:"\uD14C\uC2A4\uD2B8 \uC131\uACF5"},test_failed:{zh:"\u6D4B\u8BD5\u5931\u8D25",en:"Test failed",zh_TW:"\u6E2C\u8A66\u5931\u6557",ja:"\u30C6\u30B9\u30C8\u5931\u6557",ko:"\uD14C\uC2A4\uD2B8 \uC2E4\uD328"},clear_all_cache_now:{zh:"\u7ACB\u5373\u6E05\u9664\u5168\u90E8\u7F13\u5B58",en:"Clear all cache now",zh_TW:"\u7ACB\u5373\u6E05\u9664\u5168\u90E8\u5FEB\u53D6",ja:"\u3059\u3079\u3066\u306E\u30AD\u30E3\u30C3\u30B7\u30E5\u3092\u4ECA\u3059\u3050\u30AF\u30EA\u30A2",ko:"\uBAA8\uB4E0 \uCE90\uC2DC \uC9C0\uAE08 \uC9C0\uC6B0\uAE30"},clear_cache:{zh:"\u6E05\u9664\u7F13\u5B58",en:"Clear Cache",zh_TW:"\u6E05\u9664\u5FEB\u53D6",ja:"\u30AD\u30E3\u30C3\u30B7\u30E5\u3092\u30AF\u30EA\u30A2",ko:"\uCE90\uC2DC \uC9C0\uC6B0\uAE30"},clear_success:{zh:"\u6E05\u9664\u6210\u529F",en:"Clear success",zh_TW:"\u6E05\u9664\u6210\u529F",ja:"\u30AF\u30EA\u30A2\u6210\u529F",ko:"\uC9C0\uC6B0\uAE30 \uC131\uACF5"},clear_failed:{zh:"\u6E05\u9664\u5931\u8D25",en:"Clear failed",zh_TW:"\u6E05\u9664\u5931\u6557",ja:"\u30AF\u30EA\u30A2\u5931\u6557",ko:"\uC9C0\uC6B0\uAE30 \uC2E4\uD328"},share:{zh:"\u5206\u4EAB",en:"Share",zh_TW:"\u5206\u4EAB",ja:"\u5171\u6709",ko:"\uACF5\uC720"},clear_all:{zh:"\u6E05\u7A7A",en:"Clear All",zh_TW:"\u6E05\u7A7A",ja:"\u3059\u3079\u3066\u30AF\u30EA\u30A2",ko:"\uBAA8\uB450 \uC9C0\uC6B0\uAE30"},help:{zh:"\u6C42\u52A9",en:"Help",zh_TW:"\u6C42\u52A9",ja:"\u30D8\u30EB\u30D7",ko:"\uB3C4\uC6C0\uB9D0"},restore_default:{zh:"\u6062\u590D\u9ED8\u8BA4",en:"Restore Default",zh_TW:"\u6062\u5FA9\u9810\u8A2D",ja:"\u30C7\u30D5\u30A9\u30EB\u30C8\u306B\u623B\u3059",ko:"\uAE30\uBCF8\uAC12 \uBCF5\uC6D0"},shortcuts_setting:{zh:"\u5FEB\u6377\u952E\u8BBE\u7F6E",en:"Shortcuts Setting",zh_TW:"\u5FEB\u6377\u9375\u8A2D\u5B9A",ja:"\u30B7\u30E7\u30FC\u30C8\u30AB\u30C3\u30C8\u8A2D\u5B9A",ko:"\uB2E8\uCD95\uD0A4 \uC124\uC815"},toggle_translate_shortcut:{zh:"\"\u5F00\u542F\u7FFB\u8BD1\"\u5FEB\u6377\u952E",en:"\"Toggle Translate\" Shortcut",zh_TW:"\u300C\u958B\u555F\u7FFB\u8B6F\u300D\u5FEB\u6377\u9375",ja:"\u300C\u7FFB\u8A33\u5207\u308A\u66FF\u3048\u300D\u30B7\u30E7\u30FC\u30C8\u30AB\u30C3\u30C8",ko:"\"\uBC88\uC5ED \uCF1C\uAE30\" \uB2E8\uCD95\uD0A4"},toggle_style_shortcut:{zh:"\"\u5207\u6362\u6837\u5F0F\"\u5FEB\u6377\u952E",en:"\"Toggle Style\" Shortcut",zh_TW:"\u300C\u5207\u63DB\u6A23\u5F0F\u300D\u5FEB\u6377\u9375",ja:"\u300C\u30B9\u30BF\u30A4\u30EB\u5207\u308A\u66FF\u3048\u300D\u30B7\u30E7\u30FC\u30C8\u30AB\u30C3\u30C8",ko:"\"\uC2A4\uD0C0\uC77C \uC804\uD658\" \uB2E8\uCD95\uD0A4"},toggle_popup_shortcut:{zh:"\"\u6253\u5F00\u5F39\u7A97\"\u5FEB\u6377\u952E",en:"\"Open Popup\" Shortcut",zh_TW:"\u300C\u958B\u555F\u5F48\u7A97\u300D\u5FEB\u6377\u9375",ja:"\u300C\u30DD\u30C3\u30D7\u30A2\u30C3\u30D7\u3092\u958B\u304F\u300D\u30B7\u30E7\u30FC\u30C8\u30AB\u30C3\u30C8",ko:"\"\uD31D\uC5C5 \uC5F4\uAE30\" \uB2E8\uCD95\uD0A4"},open_setting_shortcut:{zh:"\"\u6253\u5F00\u8BBE\u7F6E\"\u5FEB\u6377\u952E",en:"\"Open Setting\" Shortcut",zh_TW:"\u300C\u958B\u555F\u8A2D\u5B9A\u300D\u5FEB\u6377\u9375",ja:"\u300C\u8A2D\u5B9A\u3092\u958B\u304F\u300D\u30B7\u30E7\u30FC\u30C8\u30AB\u30C3\u30C8",ko:"\"\uC124\uC815 \uC5F4\uAE30\" \uB2E8\uCD95\uD0A4"},hide_fab_button:{zh:"\u9690\u85CF\u60AC\u6D6E\u6309\u94AE",en:"Hide Fab Button",zh_TW:"\u96B1\u85CF\u61F8\u6D6E\u6309\u9215",ja:"\u30D5\u30ED\u30FC\u30C6\u30A3\u30F3\u30B0\u30DC\u30BF\u30F3\u3092\u96A0\u3059",ko:"\uD50C\uB85C\uD305 \uBC84\uD2BC \uC228\uAE30\uAE30"},fab_click_action:{zh:"\u5355\u51FB\u60AC\u6D6E\u6309\u94AE\u52A8\u4F5C",en:"Single Click Fab Action",zh_TW:"\u55AE\u64CA\u61F8\u6D6E\u6309\u94AE\u52D5\u4F5C",ja:"\u30D5\u30ED\u30FC\u30C6\u30A3\u30F3\u30B0\u30DC\u30BF\u30F3\u306E\u30AF\u30EA\u30C3\u30AF\u52D5\u4F5C",ko:"\uD50C\uB85C\uD305 \uBC84\uD2BC \uD074\uB9AD \uB3D9\uC791"},fab_click_menu:{zh:"\u5F39\u51FA\u83DC\u5355",en:"Popup Menu",zh_TW:"\u5F48\u51FA\u9078\u55AE",ja:"\u30E1\u30CB\u30E5\u30FC\u3092\u958B\u304F",ko:"\uD31D\uC5C5 \uBA54\uB274"},fab_click_translate:{zh:"\u76F4\u63A5\u7FFB\u8BD1",en:"Translate",zh_TW:"\u76F4\u63A5\u7FFB\u8B6F",ja:"\u76F4\u63A5\u7FFB\u8A33",ko:"\uBC14\uB85C \uBC88\uC5ED"},hide_tran_button:{zh:"\u9690\u85CF\u7FFB\u8BD1\u6309\u94AE",en:"Hide Translate Button",zh_TW:"\u96B1\u85CF\u7FFB\u8B6F\u6309\u9215",ja:"\u7FFB\u8A33\u30DC\u30BF\u30F3\u3092\u96A0\u3059",ko:"\uBC88\uC5ED \uBC84\uD2BC \uC228\uAE30\uAE30"},hide_click_away:{zh:"\u70B9\u51FB\u5916\u90E8\u5173\u95ED\u5F39\u7A97",en:"Click outside to close the pop-up window",zh_TW:"\u9EDE\u64CA\u5916\u90E8\u95DC\u9589\u5F48\u7A97",ja:"\u5916\u90E8\u30AF\u30EA\u30C3\u30AF\u3067\u30DD\u30C3\u30D7\u30A2\u30C3\u30D7\u3092\u9589\u3058\u308B",ko:"\uBC14\uAE65\uCABD \uD074\uB9AD \uC2DC \uD31D\uC5C5 \uB2EB\uAE30"},use_simple_style:{zh:"\u4F7F\u7528\u7B80\u6D01\u754C\u9762",en:"Use a simple interface",zh_TW:"\u4F7F\u7528\u7C21\u6F54\u4ECB\u9762",ja:"\u30B7\u30F3\u30D7\u30EBUI\u3092\u4F7F\u7528",ko:"\uAC04\uB2E8\uD55C \uC778\uD130\uD398\uC774\uC2A4 \uC0AC\uC6A9"},show:{zh:"\u663E\u793A",en:"Show",zh_TW:"\u986F\u793A",ja:"\u8868\u793A",ko:"\uD45C\uC2DC"},hide:{zh:"\u9690\u85CF",en:"Hide",zh_TW:"\u96B1\u85CF",ja:"\u975E\u8868\u793A",ko:"\uC228\uAE30\uAE30"},save_rule:{zh:"\u4FDD\u5B58\u672C\u7AD9\u89C4\u5219",en:"Save this site rule",zh_TW:"\u4FDD\u5B58\u672C\u7AD9\u898F\u5247",ja:"\u3053\u306E\u30B5\u30A4\u30C8\u306E\u30EB\u30FC\u30EB\u3092\u4FDD\u5B58",ko:"\uC774 \uC0AC\uC774\uD2B8 \uADDC\uCE59 \uC800\uC7A5"},global_rule:{zh:"\u5168\u5C40\u89C4\u5219",en:"Global Rule",zh_TW:"\u5168\u57DF\u898F\u5247",ja:"\u30B0\u30ED\u30FC\u30D0\u30EB\u30EB\u30FC\u30EB",ko:"\uC804\uC5ED \uADDC\uCE59"},input_translate:{zh:"\u8F93\u5165\u6846\u7FFB\u8BD1",en:"Input Box Translation",zh_TW:"\u8F38\u5165\u6846\u7FFB\u8B6F",ja:"\u5165\u529B\u30DC\u30C3\u30AF\u30B9\u7FFB\u8A33",ko:"\uC785\uB825\uCC3D \uBC88\uC5ED"},use_input_box_translation:{zh:"\u542F\u7528\u8F93\u5165\u6846\u7FFB\u8BD1",en:"Input Box Translation",zh_TW:"\u555F\u7528\u8F38\u5165\u6846\u7FFB\u8B6F",ja:"\u5165\u529B\u30DC\u30C3\u30AF\u30B9\u7FFB\u8A33\u3092\u6709\u52B9\u306B\u3059\u308B",ko:"\uC785\uB825\uCC3D \uBC88\uC5ED \uC0AC\uC6A9"},input_selector:{zh:"\u8F93\u5165\u6846\u9009\u62E9\u5668",en:"Input Selector",zh_TW:"\u8F38\u5165\u6846\u9078\u64C7\u5668",ja:"\u5165\u529B\u30DC\u30C3\u30AF\u30B9\u30BB\u30EC\u30AF\u30BF",ko:"\uC785\uB825\uCC3D \uC120\uD0DD\uC790"},input_selector_helper:{zh:"\u7528\u4E8E\u8F93\u5165\u6846\u7FFB\u8BD1\u3002",en:"Used for input box translation.",zh_TW:"\u7528\u65BC\u8F38\u5165\u6846\u7FFB\u8B6F\u3002",ja:"\u5165\u529B\u30DC\u30C3\u30AF\u30B9\u306E\u7FFB\u8A33\u306B\u4F7F\u7528\u3057\u307E\u3059\u3002",ko:"\uC785\uB825\uCC3D \uBC88\uC5ED\uC5D0 \uC0AC\uC6A9\uB429\uB2C8\uB2E4."},trigger_trans_shortcut:{zh:"\u89E6\u53D1\u7FFB\u8BD1\u5FEB\u6377\u952E",en:"Trigger Translation Shortcut Keys",zh_TW:"\u89F8\u767C\u7FFB\u8B6F\u5FEB\u6377\u9375",ja:"\u7FFB\u8A33\u30B7\u30E7\u30FC\u30C8\u30AB\u30C3\u30C8\u30AD\u30FC",ko:"\uBC88\uC5ED \uC2E4\uD589 \uB2E8\uCD95\uD0A4"},trigger_trans_shortcut_help:{zh:"\u9ED8\u8BA4\u4E3A\u5355\u51FB\u201CAltLeft+KeyI\u201D",en:"Default is \"AltLeft+KeyI\"",zh_TW:"\u9810\u8A2D\u70BA\u6309\u4E0B\u300CAltLeft+KeyI\u300D",ja:"\u30C7\u30D5\u30A9\u30EB\u30C8\u306F\u300CAltLeft+KeyI\u300D\u3067\u3059",ko:"\uAE30\uBCF8\uAC12 \"AltLeft+KeyI\""},shortcut_press_count:{zh:"\u5FEB\u6377\u952E\u8FDE\u51FB\u6B21\u6570",en:"Shortcut Press Number",zh_TW:"\u5FEB\u6377\u9375\u9023\u64CA\u6B21\u6578",ja:"\u30B7\u30E7\u30FC\u30C8\u30AB\u30C3\u30C8\u306E\u9023\u7D9A\u30D7\u30EC\u30B9\u56DE\u6570",ko:"\uB2E8\uCD95\uD0A4 \uC5F0\uC18D \uC785\uB825 \uD69F\uC218"},combo_timeout:{zh:"\u8FDE\u51FB\u8D85\u65F6\u65F6\u95F4 (10-1000ms)",en:"Combo Timeout (10-1000ms)",zh_TW:"\u9023\u64CA\u903E\u6642 (10-1000ms)",ja:"\u9023\u7D9A\u30D7\u30EC\u30B9\u30BF\u30A4\u30E0\u30A2\u30A6\u30C8 (10-1000ms)",ko:"\uC5F0\uC18D \uC785\uB825 \uC2DC\uAC04 \uCD08\uACFC (10-1000ms)"},input_trans_start_sign:{zh:"\u7FFB\u8BD1\u8D77\u59CB\u6807\u8BC6",en:"Translation Start Sign",zh_TW:"\u7FFB\u8B6F\u8D77\u59CB\u6A19\u8A18",ja:"\u7FFB\u8A33\u958B\u59CB\u8A18\u53F7",ko:"\uBC88\uC5ED \uC2DC\uC791 \uD45C\uC2DC"},input_trans_start_sign_help:{zh:"\u6807\u8BC6\u540E\u9762\u53EF\u4EE5\u52A0\u76EE\u6807\u8BED\u8A00\u4EE3\u7801\uFF0C\u5982\uFF1A \u201C/en \u4F60\u597D\u201D\u3001\u201C/zh hello\u201D",en:"The target language code can be added after the sign, such as: \"/en \u4F60\u597D\", \"/zh hello\"",zh_TW:"\u6A19\u8A18\u5F8C\u53EF\u52A0\u4E0A\u76EE\u6A19\u8A9E\u8A00\u4EE3\u78BC\uFF0C\u4F8B\u5982\uFF1A\u300C/en \u4F60\u597D\u300D\u3001\u300C/zh hello\u300D",ja:"\u8A18\u53F7\u306E\u5F8C\u306B\u5BFE\u8C61\u8A00\u8A9E\u30B3\u30FC\u30C9\u3092\u8FFD\u52A0\u3067\u304D\u307E\u3059\u3002\u4F8B\uFF1A\u300C/en \u4F60\u597D\u300D\u3001\u300C/zh hello\u300D",ko:"\uD45C\uC2DC \uB4A4\uC5D0 \uB300\uC0C1 \uC5B8\uC5B4 \uCF54\uB4DC\uB97C \uCD94\uAC00\uD560 \uC218 \uC788\uC2B5\uB2C8\uB2E4. \uC608: \"/en \u4F60\u597D\", \"/zh hello\""},detect_lang_remote:{zh:"\u8FDC\u7A0B\u8BED\u8A00\u68C0\u6D4B",en:"Remote language detection",zh_TW:"\u9060\u7AEF\u8A9E\u8A00\u5075\u6E2C",ja:"\u30EA\u30E2\u30FC\u30C8\u8A00\u8A9E\u691C\u51FA",ko:"\uC6D0\uACA9 \uC5B8\uC5B4 \uAC10\uC9C0"},detect_lang_remote_help:{zh:"\u542F\u7528\u540E\u68C0\u6D4B\u51C6\u786E\u5EA6\u589E\u52A0\uFF0C\u4F46\u4F1A\u964D\u4F4E\u7FFB\u8BD1\u901F\u5EA6\uFF0C\u8BF7\u914C\u60C5\u5F00\u542F",en:"After enabling, the detection accuracy will increase, but it will reduce the translation speed. Please enable it as appropriate.",zh_TW:"\u555F\u7528\u5F8C\u53EF\u63D0\u5347\u5075\u6E2C\u6E96\u78BA\u5EA6\uFF0C\u4F46\u6703\u964D\u4F4E\u7FFB\u8B6F\u901F\u5EA6\uFF0C\u8ACB\u8996\u9700\u8981\u958B\u555F\u3002",ja:"\u6709\u52B9\u306B\u3059\u308B\u3068\u691C\u51FA\u7CBE\u5EA6\u304C\u5411\u4E0A\u3057\u307E\u3059\u304C\u3001\u7FFB\u8A33\u901F\u5EA6\u304C\u4F4E\u4E0B\u3059\u308B\u53EF\u80FD\u6027\u304C\u3042\u308A\u307E\u3059\u3002\u5FC5\u8981\u306B\u5FDC\u3058\u3066\u6709\u52B9\u306B\u3057\u3066\u304F\u3060\u3055\u3044\u3002",ko:"\uD65C\uC131\uD654\uD558\uBA74 \uAC10\uC9C0 \uC815\uD655\uB3C4\uAC00 \uB192\uC544\uC9C0\uC9C0\uB9CC \uBC88\uC5ED \uC18D\uB3C4\uAC00 \uB290\uB824\uC9C8 \uC218 \uC788\uC2B5\uB2C8\uB2E4. \uC801\uC808\uD788 \uD65C\uC131\uD654\uD558\uC2ED\uC2DC\uC624."},detect_lang_service:{zh:"\u8BED\u8A00\u68C0\u6D4B\u670D\u52A1",en:"Language detect service",zh_TW:"\u8A9E\u8A00\u6AA2\u6E2C\u670D\u52D9",ja:"\u8A00\u8A9E\u691C\u51FA\u30B5\u30FC\u30D3\u30B9",ko:"\uC5B8\uC5B4 \uAC10\uC9C0 \uC11C\uBE44\uC2A4"},disable:{zh:"\u7981\u7528",en:"Disable",zh_TW:"\u505C\u7528",ja:"\u7121\u52B9",ko:"\uBE44\uD65C\uC131\uD654"},enable:{zh:"\u542F\u7528",en:"Enable",zh_TW:"\u555F\u7528",ja:"\u6709\u52B9",ko:"\uD65C\uC131\uD654"},selection_translate:{zh:"\u5212\u8BCD\u7FFB\u8BD1",en:"Selection Translation",zh_TW:"\u5283\u8A5E\u7FFB\u8B6F",ja:"\u9078\u629E\u7FFB\u8A33",ko:"\uC120\uD0DD \uBC88\uC5ED"},toggle_selection_translate:{zh:"\u542F\u7528\u5212\u8BCD\u7FFB\u8BD1",en:"Use Selection Translate",zh_TW:"\u555F\u7528\u5283\u8A5E\u7FFB\u8B6F",ja:"\u9078\u629E\u7FFB\u8A33\u3092\u6709\u52B9\u306B\u3059\u308B",ko:"\uC120\uD0DD \uBC88\uC5ED \uC0AC\uC6A9"},trigger_tranbox_shortcut:{zh:"\u663E\u793A\u7FFB\u8BD1\u6846/\u7FFB\u8BD1\u9009\u4E2D\u6587\u5B57\u5FEB\u6377\u952E",en:"Open Translate Popup/Translate Selected Shortcut",zh_TW:"\u986F\u793A\u7FFB\u8B6F\u6846\uFF0F\u7FFB\u8B6F\u9078\u4E2D\u6587\u5B57\u5FEB\u6377\u9375",ja:"\u7FFB\u8A33\u30DD\u30C3\u30D7\u30A2\u30C3\u30D7\u8868\u793A/\u9078\u629E\u7FFB\u8A33\u30B7\u30E7\u30FC\u30C8\u30AB\u30C3\u30C8",ko:"\uBC88\uC5ED\uCC3D \uD45C\uC2DC/\uC120\uD0DD \uBC88\uC5ED \uB2E8\uCD95\uD0A4"},tranbtn_offset_x:{zh:"\u7FFB\u8BD1\u6309\u94AE\u504F\u79FBX\uFF08\xB1200\uFF09",en:"Translate Button Offset X (\xB1200)",zh_TW:"\u7FFB\u8B6F\u6309\u9215\u4F4D\u79FB X\uFF08\xB1200\uFF09",ja:"\u7FFB\u8A33\u30DC\u30BF\u30F3\u30AA\u30D5\u30BB\u30C3\u30C8X (\xB1200)",ko:"\uBC88\uC5ED \uBC84\uD2BC \uC624\uD504\uC14B X (\xB1200)"},tranbtn_offset_y:{zh:"\u7FFB\u8BD1\u6309\u94AE\u504F\u79FBY\uFF08\xB1200\uFF09",en:"Translate Button Offset Y (\xB1200)",zh_TW:"\u7FFB\u8B6F\u6309\u9215\u4F4D\u79FB Y\uFF08\xB1200\uFF09",ja:"\u7FFB\u8A33\u30DC\u30BF\u30F3\u30AA\u30D5\u30BB\u30C3\u30C8Y (\xB1200)",ko:"\uBC88\uC5ED \uBC84\uD2BC \uC624\uD504\uC14B Y (\xB1200)"},tranbox_offset_x:{zh:"\u7FFB\u8BD1\u6846\u504F\u79FBX\uFF08\xB1200\uFF09",en:"Translate Box Offset X (\xB1200)",zh_TW:"\u7FFB\u8B6F\u6846\u4F4D\u79FB X\uFF08\xB1200\uFF09",ja:"\u7FFB\u8A33\u30DC\u30C3\u30AF\u30B9\u30AA\u30D5\u30BB\u30C3\u30C8X (\xB1200)",ko:"\uBC88\uC5ED\uCC3D \uC624\uD504\uC14B X (\xB1200)"},tranbox_offset_y:{zh:"\u7FFB\u8BD1\u6846\u504F\u79FBY\uFF08\xB1200\uFF09",en:"Translate Box Offset Y (\xB1200)",zh_TW:"\u7FFB\u8B6F\u6846\u4F4D\u79FB Y\uFF08\xB1200\uFF09",ja:"\u7FFB\u8A33\u30DC\u30C3\u30AF\u30B9\u30AA\u30D5\u30BB\u30C3\u30C8Y (\xB1200)",ko:"\uBC88\uC5ED\uCC3D \uC624\uD504\uC14B Y (\xB1200)"},translated_text:{zh:"\u8BD1\u6587",en:"Translated Text",zh_TW:"\u8B6F\u6587",ja:"\u7FFB\u8A33\u6E08\u307F\u30C6\u30AD\u30B9\u30C8",ko:"\uBC88\uC5ED\uB41C \uD14D\uC2A4\uD2B8"},original_text:{zh:"\u539F\u6587",en:"Original Text",zh_TW:"\u539F\u6587",ja:"\u539F\u6587",ko:"\uC6D0\uBCF8 \uD14D\uC2A4\uD2B8"},favorite_words:{zh:"\u6536\u85CF\u8BCD\u6C47",en:"Favorite Words",zh_TW:"\u6536\u85CF\u8A5E\u5F59",ja:"\u304A\u6C17\u306B\u5165\u308A\u5358\u8A9E",ko:"\uC990\uACA8\uCC3E\uB294 \uB2E8\uC5B4"},touch_setting:{zh:"\u89E6\u5C4F\u8BBE\u7F6E",en:"Touch Setting",zh_TW:"\u89F8\u63A7\u8A2D\u5B9A",ja:"\u30BF\u30C3\u30C1\u8A2D\u5B9A",ko:"\uD130\uCE58 \uC124\uC815"},touch_translate_shortcut:{zh:"\u89E6\u5C4F\u7FFB\u8BD1\u5FEB\u6377\u65B9\u5F0F (\u652F\u6301\u591A\u9009)",en:"Touch Translate Shortcut (multiple supported)",zh_TW:"\u89F8\u63A7\u7FFB\u8B6F\u6377\u5F91 (\u652F\u63F4\u591A\u9078)",ja:"\u30BF\u30C3\u30C1\u7FFB\u8A33\u30B7\u30E7\u30FC\u30C8\u30AB\u30C3\u30C8 (\u8907\u6570\u9078\u629E\u53EF)",ko:"\uD130\uCE58 \uBC88\uC5ED \uB2E8\uCD95\uD0A4 (\uB2E4\uC911 \uC120\uD0DD \uC9C0\uC6D0)"},touch_tap_0:{zh:"\u7981\u7528",en:"Disable",zh_TW:"\u505C\u7528",ja:"\u7121\u52B9",ko:"\uBE44\uD65C\uC131\uD654"},touch_tap_2:{zh:"\u53CC\u6307\u8F7B\u89E6",en:"Two finger tap",zh_TW:"\u96D9\u6307\u8F15\u89F8",ja:"2\u672C\u6307\u30BF\u30C3\u30D7",ko:"\uB450 \uC190\uAC00\uB77D \uD0ED"},touch_tap_3:{zh:"\u4E09\u6307\u8F7B\u89E6",en:"Three finger tap",zh_TW:"\u4E09\u6307\u8F15\u89F8",ja:"3\u672C\u6307\u30BF\u30C3\u30D7",ko:"\uC138 \uC190\uAC00\uB77D \uD0ED"},touch_tap_4:{zh:"\u56DB\u6307\u8F7B\u89E6",en:"Four finger tap",zh_TW:"\u56DB\u6307\u8F15\u89F8",ja:"4\u672C\u6307\u30BF\u30C3\u30D7",ko:"\uB124 \uC190\uAC00\uB77D \uD0ED"},touch_tap_5:{zh:"\u5355\u6307\u53CC\u51FB",en:"Double-click",zh_TW:"\u55AE\u6307\u96D9\u64CA",ja:"\u30C0\u30D6\u30EB\u30AF\u30EA\u30C3\u30AF",ko:"\uB354\uBE14 \uD074\uB9AD"},touch_tap_6:{zh:"\u5355\u6307\u4E09\u51FB",en:"Triple-click",zh_TW:"\u55AE\u6307\u4E09\u64CA",ja:"\u30C8\u30EA\u30D7\u30EB\u30AF\u30EA\u30C3\u30AF",ko:"\uD2B8\uB9AC\uD50C \uD074\uB9AD"},touch_tap_7:{zh:"\u53CC\u6307\u53CC\u51FB",en:"Two-finger double-click",zh_TW:"\u96D9\u6307\u96D9\u64CA",ja:"2\u672C\u6307\u30C0\u30D6\u30EB\u30AF\u30EA\u30C3\u30AF",ko:"\uB450 \uC190\uAC00\uB77D \uB354\uBE14 \uD074\uB9AD"},translate_blacklist:{zh:"\u7981\u7528\u7FFB\u8BD1\u540D\u5355",en:"Translate Blacklist",zh_TW:"\u505C\u7528\u7FFB\u8B6F\u540D\u55AE",ja:"\u7FFB\u8A33\u30D6\u30E9\u30C3\u30AF\u30EA\u30B9\u30C8",ko:"\uBC88\uC5ED \uBE14\uB799\uB9AC\uC2A4\uD2B8"},disabled_orilist:{zh:"\u7981\u7528Origin\u540D\u5355",en:"Disabled Origin List",zh_TW:"\u505C\u7528 Origin \u540D\u55AE",ja:"\u7121\u52B9\u5316Origin\u30EA\u30B9\u30C8",ko:"\uBE44\uD65C\uC131\uD654\uB41C Origin \uBAA9\uB85D"},disabled_csplist:{zh:"\u7981\u7528CSP\u540D\u5355",en:"Disabled CSP List",zh_TW:"\u505C\u7528 CSP \u540D\u55AE",ja:"\u7121\u52B9\u5316CSP\u30EA\u30B9\u30C8",ko:"\uBE44\uD65C\uC131\uD654\uB41C CSP \uBAA9\uB85D"},disabled_csplist_helper:{zh:"3\u3001\u901A\u8FC7\u8C03\u6574CSP\u7B56\u7565\uFF0C\u4F7F\u5F97\u67D0\u4E9B\u9875\u9762\u80FD\u591F\u6CE8\u5165JS/CSS/Media\uFF0C\u8BF7\u8C28\u614E\u4F7F\u7528\uFF0C\u9664\u975E\u60A8\u5DF2\u77E5\u6653\u76F8\u5173\u98CE\u9669\u3002",en:"3. By adjusting the CSP policy, some pages can inject JS/CSS/Media. Please use it with caution unless you are aware of the related risks.",zh_TW:"3. \u900F\u904E\u8ABF\u6574 CSP \u653F\u7B56\uFF0C\u4F7F\u90E8\u5206\u9801\u9762\u53EF\u6CE8\u5165 JS/CSS/Media\u3002\u8ACB\u8B39\u614E\u4F7F\u7528\uFF0C\u9664\u975E\u60A8\u5DF2\u77E5\u6089\u76F8\u95DC\u98A8\u96AA\u3002",ja:"3. CSP\u30DD\u30EA\u30B7\u30FC\u3092\u8ABF\u6574\u3059\u308B\u3053\u3068\u306B\u3088\u308A\u3001\u4E00\u90E8\u306E\u30DA\u30FC\u30B8\u3067JS/CSS/Media\u306E\u6CE8\u5165\u304C\u53EF\u80FD\u306B\u306A\u308A\u307E\u3059\u3002\u95A2\u9023\u3059\u308B\u30EA\u30B9\u30AF\u3092\u627F\u77E5\u3057\u3066\u3044\u306A\u3044\u9650\u308A\u3001\u614E\u91CD\u306B\u4F7F\u7528\u3057\u3066\u304F\u3060\u3055\u3044\u3002",ko:"3. CSP \uC815\uCC45\uC744 \uC870\uC815\uD558\uC5EC \uC77C\uBD80 \uD398\uC774\uC9C0\uC5D0\uC11C JS/CSS/Media\uB97C \uC8FC\uC785\uD560 \uC218 \uC788\uC2B5\uB2C8\uB2E4. \uAD00\uB828\uB41C \uC704\uD5D8\uC744 \uC778\uC9C0\uD558\uACE0 \uC788\uB294 \uACBD\uC6B0\uAC00 \uC544\uB2C8\uB77C\uBA74 \uC8FC\uC758\uD574\uC11C \uC0AC\uC6A9\uD558\uC2ED\uC2DC\uC624."},skip_langs:{zh:"\u4E0D\u7FFB\u8BD1\u7684\u8BED\u8A00",en:"Disable Languages",zh_TW:"\u4E0D\u7FFB\u8B6F\u7684\u8A9E\u8A00",ja:"\u7FFB\u8A33\u3057\u306A\u3044\u8A00\u8A9E",ko:"\uBC88\uC5ED\uD558\uC9C0 \uC54A\uC744 \uC5B8\uC5B4"},skip_langs_helper:{zh:"\u6B64\u529F\u80FD\u4F9D\u8D56\u51C6\u786E\u7684\u8BED\u8A00\u68C0\u6D4B\uFF0C\u5EFA\u8BAE\u542F\u7528\u8FDC\u7A0B\u8BED\u8A00\u68C0\u6D4B\u3002",en:"This feature relies on accurate language detection. It is recommended to enable remote language detection.",zh_TW:"\u6B64\u529F\u80FD\u4EF0\u8CF4\u6E96\u78BA\u7684\u8A9E\u8A00\u5075\u6E2C\uFF0C\u5EFA\u8B70\u555F\u7528\u9060\u7AEF\u8A9E\u8A00\u5075\u6E2C\u3002",ja:"\u3053\u306E\u6A5F\u80FD\u306F\u6B63\u78BA\u306A\u8A00\u8A9E\u691C\u51FA\u306B\u4F9D\u5B58\u3057\u3066\u3044\u308B\u305F\u3081\u3001\u30EA\u30E2\u30FC\u30C8\u8A00\u8A9E\u691C\u51FA\u3092\u6709\u52B9\u306B\u3059\u308B\u3053\u3068\u3092\u304A\u52E7\u3081\u3057\u307E\u3059\u3002",ko:"\uC774 \uAE30\uB2A5\uC740 \uC815\uD655\uD55C \uC5B8\uC5B4 \uAC10\uC9C0\uC5D0 \uC758\uC874\uD558\uBBC0\uB85C \uC6D0\uACA9 \uC5B8\uC5B4 \uAC10\uC9C0\uB97C \uD65C\uC131\uD654\uD558\uB294 \uAC83\uC774 \uC88B\uC2B5\uB2C8\uB2E4."},context_menus:{zh:"\u53F3\u952E\u83DC\u5355",en:"Context Menus",zh_TW:"\u53F3\u9375\u9078\u55AE",ja:"\u30B3\u30F3\u30C6\u30AD\u30B9\u30C8\u30E1\u30CB\u30E5\u30FC",ko:"\uCEE8\uD14D\uC2A4\uD2B8 \uBA54\uB274"},hide_context_menus:{zh:"\u9690\u85CF\u53F3\u952E\u83DC\u5355",en:"Hide Context Menus",zh_TW:"\u96B1\u85CF\u53F3\u9375\u9078\u55AE",ja:"\u30B3\u30F3\u30C6\u30AD\u30B9\u30C8\u30E1\u30CB\u30E5\u30FC\u3092\u96A0\u3059",ko:"\uCEE8\uD14D\uC2A4\uD2B8 \uBA54\uB274 \uC228\uAE30\uAE30"},simple_context_menus:{zh:"\u7B80\u5355\u53F3\u952E\u83DC\u5355",en:"Simple_context_menus Context Menus",zh_TW:"\u7C21\u6613\u53F3\u9375\u9078\u55AE",ja:"\u30B7\u30F3\u30D7\u30EB\u30B3\u30F3\u30C6\u30AD\u30B9\u30C8\u30E1\u30CB\u30E5\u30FC",ko:"\uAC04\uB2E8\uD55C \uCEE8\uD14D\uC2A4\uD2B8 \uBA54\uB274"},secondary_context_menus:{zh:"\u4E8C\u7EA7\u53F3\u952E\u83DC\u5355",en:"Secondary Context Menus",zh_TW:"\u6B21\u7D1A\u53F3\u9375\u9078\u55AE",ja:"\u30B5\u30D6\u30B3\u30F3\u30C6\u30AD\u30B9\u30C8\u30E1\u30CB\u30E5\u30FC",ko:"\uBCF4\uC870 \uCEE8\uD14D\uC2A4\uD2B8 \uBA54\uB274"},mulkeys_help:{zh:"\u652F\u6301\u7528\u6362\u884C\u6216\u82F1\u6587\u9017\u53F7\u201C,\u201D\u5206\u9694\uFF0C\u8F6E\u8BE2\u8C03\u7528\u3002",en:"Supports polling calls separated by newlines or English commas \",\".",zh_TW:"\u652F\u63F4\u4EE5\u63DB\u884C\u6216\u82F1\u6587\u9017\u865F\u300C,\u300D\u5206\u9694\uFF0C\u8F2A\u8A62\u547C\u53EB\u3002",ja:"\u6539\u884C\u307E\u305F\u306F\u82F1\u8A9E\u306E\u30B3\u30F3\u30DE\u300C,\u300D\u3067\u533A\u5207\u3063\u3066\u30DD\u30FC\u30EA\u30F3\u30B0\u30B3\u30FC\u30EB\u3092\u30B5\u30DD\u30FC\u30C8\u3057\u307E\u3059\u3002",ko:"\uC904\uBC14\uAFC8 \uB610\uB294 \uC601\uC5B4 \uC27C\uD45C \",\"\uB85C \uAD6C\uBD84\uB41C \uD3F4\uB9C1 \uD638\uCD9C\uC744 \uC9C0\uC6D0\uD569\uB2C8\uB2E4."},translation_element_tag:{zh:"\u8BD1\u6587\u5143\u7D20\u6807\u7B7E",en:"Translation Element Tag",zh_TW:"\u8B6F\u6587\u5143\u7D20\u6A19\u7C64",ja:"\u7FFB\u8A33\u8981\u7D20\u30BF\u30B0",ko:"\uBC88\uC5ED \uC694\uC18C \uD0DC\uADF8"},show_only_translations:{zh:"\u4EC5\u663E\u793A\u8BD1\u6587",en:"Show Only Translations",zh_TW:"\u50C5\u986F\u793A\u8B6F\u6587",ja:"\u7FFB\u8A33\u306E\u307F\u8868\u793A",ko:"\uBC88\uC5ED\uB9CC \uBCF4\uAE30"},show_only_translations_help:{zh:"\u975E\u5B8C\u7F8E\u5B9E\u73B0\uFF0C\u67D0\u4E9B\u9875\u9762\u53EF\u80FD\u6709\u6837\u5F0F\u7B49\u95EE\u9898\u3002",en:"It is not a perfect implementation and some pages may have style issues.",zh_TW:"\u6B64\u70BA\u975E\u5B8C\u7F8E\u5BE6\u4F5C\uFF0C\u90E8\u5206\u9801\u9762\u53EF\u80FD\u51FA\u73FE\u6A23\u5F0F\u7B49\u554F\u984C\u3002",ja:"\u5B8C\u5168\u306A\u5B9F\u88C5\u3067\u306F\u306A\u304F\u3001\u4E00\u90E8\u306E\u30DA\u30FC\u30B8\u3067\u30B9\u30BF\u30A4\u30EB\u306E\u554F\u984C\u304C\u767A\u751F\u3059\u308B\u53EF\u80FD\u6027\u304C\u3042\u308A\u307E\u3059\u3002",ko:"\uC644\uBCBD\uD55C \uAD6C\uD604\uC774 \uC544\uB2C8\uBA70 \uC77C\uBD80 \uD398\uC774\uC9C0\uC5D0\uC11C \uC2A4\uD0C0\uC77C \uBB38\uC81C\uAC00 \uBC1C\uC0DD\uD560 \uC218 \uC788\uC2B5\uB2C8\uB2E4."},translate_page_title:{zh:"\u662F\u5426\u7FFB\u8BD1\u9875\u9762\u6807\u9898",en:"Translate Page Title",zh_TW:"\u662F\u5426\u7FFB\u8B6F\u9801\u9762\u6A19\u984C",ja:"\u30DA\u30FC\u30B8\u30BF\u30A4\u30C8\u30EB\u3092\u7FFB\u8A33\u3059\u308B",ko:"\uD398\uC774\uC9C0 \uC81C\uBAA9 \uBC88\uC5ED"},more:{zh:"\u66F4\u591A",en:"More",zh_TW:"\u66F4\u591A",ja:"\u3082\u3063\u3068\u898B\u308B",ko:"\uB354\uBCF4\uAE30"},less:{zh:"\u66F4\u5C11",en:"Less",zh_TW:"\u66F4\u5C11",ja:"\u5C11\u306A\u304F",ko:"\uC904\uC774\uAE30"},fixer_selector:{zh:"\u7F51\u9875\u4FEE\u590D\u9009\u62E9\u5668",en:"Fixer Selector",zh_TW:"\u7DB2\u9801\u4FEE\u5FA9\u9078\u64C7\u5668",ja:"Web\u4FEE\u6B63\u30BB\u30EC\u30AF\u30BF",ko:"\uC6F9\uD398\uC774\uC9C0 \uC218\uC815 \uC120\uD0DD\uC790"},reg_niutrans:{zh:"\u83B7\u53D6\u5C0F\u725B\u7FFB\u8BD1\u5BC6\u94A5\u3010\u7B80\u7EA6\u7FFB\u8BD1\u4E13\u5C5E\u65B0\u7528\u6237\u6CE8\u518C\u8D60\u9001300\u4E07\u5B57\u7B26\u3011",en:"Get NiuTrans APIKey [KISS Translator Exclusive New User Registration Free 3 Million Characters]",zh_TW:"\u53D6\u5F97\u5C0F\u725B\u7FFB\u8B6F\u91D1\u9470\u3010\u7C21\u7D04\u7FFB\u8B6F\u5C08\u5C6C\u65B0\u7528\u6236\u8A3B\u518A\u8D08\u9001 300 \u842C\u5B57\u5143\u3011",ja:"NiuTrans API\u30AD\u30FC\u3092\u53D6\u5F97 [KISS\u7FFB\u8A33 \u5C02\u7528 \u65B0\u898F\u30E6\u30FC\u30B6\u30FC\u767B\u9332\u3067300\u4E07\u6587\u5B57\u7121\u6599]",ko:"NiuTrans API \uD0A4 \uBC1B\uAE30 [KISS \uBC88\uC5ED\uAE30 \uC2E0\uADDC \uC0AC\uC6A9\uC790 \uB4F1\uB85D \uC2DC 300\uB9CC \uC790 \uBB34\uB8CC \uC81C\uACF5]"},trigger_mode:{zh:"\u89E6\u53D1\u65B9\u5F0F",en:"Trigger Mode",zh_TW:"\u89F8\u767C\u65B9\u5F0F",ja:"\u30C8\u30EA\u30AC\u30FC\u30E2\u30FC\u30C9",ko:"\uD2B8\uB9AC\uAC70 \uBAA8\uB4DC"},trigger_click:{zh:"\u70B9\u51FB\u89E6\u53D1",en:"Click Trigger",zh_TW:"\u9EDE\u64CA\u89F8\u767C",ja:"\u30AF\u30EA\u30C3\u30AF\u30C8\u30EA\u30AC\u30FC",ko:"\uD074\uB9AD \uD2B8\uB9AC\uAC70"},trigger_hover:{zh:"\u9F20\u6807\u60AC\u505C\u89E6\u53D1",en:"Hover Trigger",zh_TW:"\u6ED1\u9F20\u61F8\u505C\u89F8\u767C",ja:"\u30DB\u30D0\u30FC\u30C8\u30EA\u30AC\u30FC",ko:"\uD638\uBC84 \uD2B8\uB9AC\uAC70"},trigger_select:{zh:"\u9009\u4E2D\u89E6\u53D1",en:"Select Trigger",zh_TW:"\u9078\u53D6\u89F8\u767C",ja:"\u9078\u629E\u30C8\u30EA\u30AC\u30FC",ko:"\uC120\uD0DD \uD2B8\uB9AC\uAC70"},extend_styles:{zh:"\u9644\u52A0\u6837\u5F0F",en:"Extend Styles",zh_TW:"\u9644\u52A0\u6A23\u5F0F",ja:"\u62E1\u5F35\u30B9\u30BF\u30A4\u30EB",ko:"\uD655\uC7A5 \uC2A4\uD0C0\uC77C"},custom_option:{zh:"\u81EA\u5B9A\u4E49\u9009\u9879",en:"Custom Option",zh_TW:"\u81EA\u8A02\u9078\u9805",ja:"\u30AB\u30B9\u30BF\u30E0\u30AA\u30D7\u30B7\u30E7\u30F3",ko:"\uC0AC\uC6A9\uC790 \uC9C0\uC815 \uC635\uC158"},translate_selected_text:{zh:"\u7FFB\u8BD1\u9009\u4E2D\u6587\u5B57",en:"Translate Selected Text",zh_TW:"\u7FFB\u8B6F\u9078\u53D6\u6587\u5B57",ja:"\u9078\u629E\u3057\u305F\u30C6\u30AD\u30B9\u30C8\u3092\u7FFB\u8A33",ko:"\uC120\uD0DD\uD55C \uD14D\uC2A4\uD2B8 \uBC88\uC5ED"},toggle_style:{zh:"\u5207\u6362\u6837\u5F0F",en:"Toggle Style",zh_TW:"\u5207\u63DB\u6A23\u5F0F",ja:"\u30B9\u30BF\u30A4\u30EB\u3092\u5207\u308A\u66FF\u3048",ko:"\uC2A4\uD0C0\uC77C \uC804\uD658"},open_menu:{zh:"\u6253\u5F00\u5F39\u7A97\u83DC\u5355",en:"Open Popup Menu",zh_TW:"\u958B\u555F\u5F48\u7A97\u9078\u55AE",ja:"\u30DD\u30C3\u30D7\u30A2\u30C3\u30D7\u30E1\u30CB\u30E5\u30FC\u3092\u958B\u304F",ko:"\uD31D\uC5C5 \uBA54\uB274 \uC5F4\uAE30"},open_setting:{zh:"\u6253\u5F00\u8BBE\u7F6E",en:"Open Setting",zh_TW:"\u958B\u555F\u8A2D\u5B9A",ja:"\u8A2D\u5B9A\u3092\u958B\u304F",ko:"\uC124\uC815 \uC5F4\uAE30"},follow_selection:{zh:"\u7FFB\u8BD1\u6846\u8DDF\u968F\u9009\u4E2D\u6587\u672C",en:"Transbox Follow Selection",zh_TW:"\u7FFB\u8B6F\u6846\u8DDF\u96A8\u9078\u53D6\u6587\u5B57",ja:"\u7FFB\u8A33\u30DC\u30C3\u30AF\u30B9\u3092\u9078\u629E\u7BC4\u56F2\u306B\u8FFD\u5F93",ko:"\uBC88\uC5ED \uC0C1\uC790\uAC00 \uC120\uD0DD \uD56D\uBAA9 \uB530\uB77C\uAC00\uAE30"},tranbox_auto_height:{zh:"\u7FFB\u8BD1\u6846\u81EA\u9002\u5E94\u9AD8\u5EA6",en:"Translation box adaptive height",zh_TW:"\u7FFB\u8B6F\u6846\u81EA\u9069\u61C9\u9AD8\u5EA6",ja:"\u7FFB\u8A33\u30DC\u30C3\u30AF\u30B9\u306E\u9AD8\u3055\u81EA\u52D5\u8ABF\u6574",ko:"\uBC88\uC5ED \uC0C1\uC790 \uB192\uC774 \uC790\uB3D9 \uC870\uC808"},translate_start_hook:{zh:"\u7FFB\u8BD1\u5F00\u59CB\u94A9\u5B50\u51FD\u6570",en:"Translate Start Hook",zh_TW:"\u7FFB\u8B6F\u958B\u59CB Hook",ja:"\u7FFB\u8A33\u958B\u59CB\u30D5\u30C3\u30AF",ko:"\uBC88\uC5ED \uC2DC\uC791 \uD6C4\uD06C"},translate_start_hook_helper:{zh:"\u7FFB\u8BD1\u524D\u65F6\u8FD0\u884C\uFF0C\u5165\u53C2\u4E3A\uFF1A {text,\n fromLang,\n toLang,\n apiSetting,\n docInfo,\n glossary,}",en:"Run before translation, input parameters are: {text,\n fromLang,\n toLang,\n apiSetting,\n docInfo,\n glossary,}",zh_TW:"\u7FFB\u8B6F\u524D\u6642\u904B\u884C\uFF0C\u5165\u53C3\u70BA\uFF1A {text,\n fromLang,\n toLang,\n apiSetting,\n docInfo,\n glossary,}",ja:"\u7FFB\u8A33\u524D\u306B\u5B9F\u884C\u3001\u5165\u529B\u30D1\u30E9\u30E1\u30FC\u30BF: {text,\n fromLang,\n toLang,\n apiSetting,\n docInfo,\n glossary,}",ko:"\uBC88\uC5ED \uC804 \uC2E4\uD589, \uC785\uB825 \uB9E4\uAC1C\uBCC0\uC218: {text,\n fromLang,\n toLang,\n apiSetting,\n docInfo,\n glossary,}"},translate_end_hook:{zh:"\u7FFB\u8BD1\u5B8C\u6210\u94A9\u5B50\u51FD\u6570",en:"Translate End Hook",zh_TW:"\u7FFB\u8B6F\u5B8C\u6210 Hook",ja:"\u7FFB\u8A33\u5B8C\u4E86\u30D5\u30C3\u30AF",ko:"\uBC88\uC5ED \uC644\uB8CC \uD6C4\uD06C"},translate_end_hook_helper:{zh:"\u7FFB\u8BD1\u5B8C\u6210\u65F6\u8FD0\u884C\uFF0C\u5165\u53C2\u4E3A\uFF1A ({hostNode, parentNode, nodes, wrapperNode, innerNode})",en:"Run when translation is complete, input parameters are: ({hostNode, parentNode, nodes, wrapperNode, innerNode})",zh_TW:"\u7FFB\u8B6F\u5B8C\u6210\u6642\u904B\u884C\uFF0C\u5165\u53C3\u70BA\uFF1A ({hostNode, parentNode, nodes, wrapperNode, innerNode})",ja:"\u7FFB\u8A33\u5B8C\u4E86\u6642\u306B\u5B9F\u884C\u3001\u5165\u529B\u30D1\u30E9\u30E1\u30FC\u30BF: ({hostNode, parentNode, nodes, wrapperNode, innerNode})",ko:"\uBC88\uC5ED \uC644\uB8CC \uC2DC \uC2E4\uD589, \uC785\uB825 \uB9E4\uAC1C\uBCC0\uC218: ({hostNode, parentNode, nodes, wrapperNode, innerNode})"},translate_remove_hook:{zh:"\u7FFB\u8BD1\u79FB\u9664\u94A9\u5B50\u51FD\u6570",en:"Translate Removed Hook",zh_TW:"\u7FFB\u8B6F\u79FB\u9664 Hook",ja:"\u7FFB\u8A33\u524A\u9664\u30D5\u30C3\u30AF",ko:"\uBC88\uC5ED \uC81C\uAC70 \uD6C4\uD06C"},translate_remove_hook_helper:{zh:"\u7FFB\u8BD1\u79FB\u9664\u65F6\u8FD0\u884C\uFF0C\u5165\u53C2\u4E3A\uFF1A \u7FFB\u8BD1\u8282\u70B9\u3002",en:"Run when translation is removed, the input parameters are: translation node.",zh_TW:"\u79FB\u9664\u7FFB\u8B6F\u6642\u57F7\u884C\uFF0C\u5165\u53C3\u70BA\uFF1A\u7FFB\u8B6F\u7BC0\u9EDE\u3002",ja:"\u7FFB\u8A33\u524A\u9664\u6642\u306B\u5B9F\u884C\u3001\u5165\u529B\u30D1\u30E9\u30E1\u30FC\u30BF: \u7FFB\u8A33\u30CE\u30FC\u30C9\u3002",ko:"\uBC88\uC5ED \uC81C\uAC70 \uC2DC \uC2E4\uD589, \uC785\uB825 \uB9E4\uAC1C\uBCC0\uC218: \uBC88\uC5ED \uB178\uB4DC."},english_dict:{zh:"\u82F1\u6587\u8BCD\u5178",en:"English Dictionary",zh_TW:"\u82F1\u6587\u5B57\u5178",ja:"\u82F1\u8A9E\u8F9E\u66F8",ko:"\uC601\uC5B4 \uC0AC\uC804"},english_suggest:{zh:"\u82F1\u6587\u5EFA\u8BAE",en:"English Suggest",zh_TW:"\u82F1\u6587\u5EFA\u8B70",ja:"\u82F1\u8A9E\u30B5\u30B8\u30A7\u30B9\u30C8",ko:"\uC601\uC5B4 \uC81C\uC548"},api_name:{zh:"\u63A5\u53E3\u540D\u79F0",en:"API Name",zh_TW:"\u4ECB\u9762\u540D\u7A31",ja:"API\u540D",ko:"API \uC774\uB984"},is_disabled:{zh:"\u662F\u5426\u7981\u7528",en:"Is Disabled",zh_TW:"\u662F\u5426\u505C\u7528",ja:"\u7121\u52B9\u306B\u3059\u308B",ko:"\uBE44\uD65C\uC131\uD654 \uC5EC\uBD80"},translate_selected:{zh:"\u662F\u5426\u542F\u7528\u5212\u8BCD\u7FFB\u8BD1",en:"If translate selected",zh_TW:"\u662F\u5426\u555F\u7528\u5283\u8A5E\u7FFB\u8B6F",ja:"\u9078\u629E\u7BC4\u56F2\u306E\u7FFB\u8A33\u3092\u6709\u52B9\u306B\u3059\u308B",ko:"\uC120\uD0DD \uBC88\uC5ED \uC0AC\uC6A9 \uC5EC\uBD80"},use_batch_fetch:{zh:"\u662F\u5426\u805A\u5408\u53D1\u9001\u7FFB\u8BD1\u8BF7\u6C42",en:"Whether to aggregate and send translation requests",zh_TW:"\u662F\u5426\u805A\u5408\u767C\u9001\u7FFB\u8B6F\u8ACB\u6C42",ja:"\u7FFB\u8A33\u30EA\u30AF\u30A8\u30B9\u30C8\u3092\u307E\u3068\u3081\u3066\u9001\u4FE1",ko:"\uBC88\uC5ED \uC694\uCCAD \uC77C\uAD04 \uC804\uC1A1 \uC5EC\uBD80"},batch_interval:{zh:"\u805A\u5408\u8BF7\u6C42\u7B49\u5F85\u65F6\u95F4(100-10000)",en:"Aggregation request waiting time (100-10000)",zh_TW:"\u805A\u5408\u8ACB\u6C42\u7B49\u5F85\u6642\u9593(100-10000)",ja:"\u4E00\u62EC\u30EA\u30AF\u30A8\u30B9\u30C8\u306E\u5F85\u6A5F\u6642\u9593(100-10000)",ko:"\uC77C\uAD04 \uC694\uCCAD \uB300\uAE30 \uC2DC\uAC04(100-10000)"},batch_size:{zh:"\u805A\u5408\u8BF7\u6C42\u6700\u5927\u6BB5\u843D\u6570(1-100)",en:"Maximum number of paragraphs in an aggregation request (1-100)",zh_TW:"\u805A\u5408\u8ACB\u6C42\u6700\u5927\u6BB5\u843D\u6578(1-100)",ja:"\u4E00\u62EC\u30EA\u30AF\u30A8\u30B9\u30C8\u306E\u6700\u5927\u6BB5\u843D\u6570(1-100)",ko:"\uC77C\uAD04 \uC694\uCCAD \uCD5C\uB300 \uB2E8\uB77D \uC218(1-100)"},batch_length:{zh:"\u805A\u5408\u8BF7\u6C42\u6700\u5927\u6587\u672C\u957F\u5EA6(1000-100000)",en:"Maximum text length for aggregation requests (1000-100000)",zh_TW:"\u805A\u5408\u8ACB\u6C42\u6700\u5927\u6587\u5B57\u9577\u5EA6(1000-100000)",ja:"\u4E00\u62EC\u30EA\u30AF\u30A8\u30B9\u30C8\u306E\u6700\u5927\u30C6\u30AD\u30B9\u30C8\u9577(1000-100000)",ko:"\uC77C\uAD04 \uC694\uCCAD \uCD5C\uB300 \uD14D\uC2A4\uD2B8 \uAE38\uC774(1000-100000)"},use_context:{zh:"\u662F\u5426\u542F\u7528\u667A\u80FD\u4E0A\u4E0B\u6587",en:"Whether to enable AI context",zh_TW:"\u662F\u5426\u555F\u7528\u667A\u6167\u4E0A\u4E0B\u6587",ja:"AI\u30B3\u30F3\u30C6\u30AD\u30B9\u30C8\u3092\u6709\u52B9\u306B\u3059\u308B",ko:"AI \uCEE8\uD14D\uC2A4\uD2B8 \uD65C\uC131\uD654 \uC5EC\uBD80"},context_size:{zh:"\u4E0A\u4E0B\u6587\u4F1A\u8BDD\u6570\u91CF(1-20)",en:"Number of context sessions(1-20)",zh_TW:"\u4E0A\u4E0B\u6587\u6703\u8A71\u6578\u91CF(1-20)",ja:"\u30B3\u30F3\u30C6\u30AD\u30B9\u30C8\u30BB\u30C3\u30B7\u30E7\u30F3\u6570(1-20)",ko:"\uCEE8\uD14D\uC2A4\uD2B8 \uC138\uC158 \uC218(1-20)"},auto_scan_page:{zh:"\u81EA\u52A8\u626B\u63CF\u9875\u9762",en:"Auto scan page",zh_TW:"\u81EA\u52D5\u6383\u63CF\u9801\u9762",ja:"\u30DA\u30FC\u30B8\u3092\u81EA\u52D5\u30B9\u30AD\u30E3\u30F3",ko:"\uD398\uC774\uC9C0 \uC790\uB3D9 \uC2A4\uCE94"},has_rich_text:{zh:"\u542F\u7528\u5BCC\u6587\u672C\u7FFB\u8BD1",en:"Enable rich text translation",zh_TW:"\u555F\u7528\u5BCC\u6587\u672C\u7FFB\u8B6F",ja:"\u30EA\u30C3\u30C1\u30C6\u30AD\u30B9\u30C8\u7FFB\u8A33\u3092\u6709\u52B9\u306B\u3059\u308B",ko:"\uB9AC\uCE58 \uD14D\uC2A4\uD2B8 \uBC88\uC5ED \uD65C\uC131\uD654"},has_shadowroot:{zh:"\u626B\u63CFShadowroot",en:"Scan Shadowroot",zh_TW:"\u6383\u63CFShadowroot",ja:"Shadowroot\u3092\u30B9\u30AD\u30E3\u30F3",ko:"Shadowroot \uC2A4\uCE94"},mousehover_translate:{zh:"\u9F20\u6807\u60AC\u505C\u7FFB\u8BD1",en:"Mouseover Translation",zh_TW:"\u6ED1\u9F20\u61F8\u505C\u7FFB\u8B6F",ja:"\u30DE\u30A6\u30B9\u30AA\u30FC\u30D0\u30FC\u7FFB\u8A33",ko:"\uB9C8\uC6B0\uC2A4\uC624\uBC84 \uBC88\uC5ED"},use_mousehover_translation:{zh:"\u542F\u7528\u9F20\u6807\u60AC\u505C\u7FFB\u8BD1",en:"Enable mouseover translation",zh_TW:"\u555F\u7528\u6ED1\u9F20\u61F8\u505C\u7FFB\u8B6F",ja:"\u30DE\u30A6\u30B9\u30AA\u30FC\u30D0\u30FC\u7FFB\u8A33\u3092\u6709\u52B9\u306B\u3059\u308B",ko:"\uB9C8\uC6B0\uC2A4\uC624\uBC84 \uBC88\uC5ED \uD65C\uC131\uD654"},selected_translation_alert:{zh:"\u5212\u8BCD\u7FFB\u8BD1\u7684\u5F00\u542F\u548C\u5173\u95ED\u8BF7\u5230\u201C\u89C4\u5219\u8BBE\u7F6E\u201D\u91CC\u9762\u8BBE\u7F6E\u3002",en:"To turn selected translation on or off, please go to \"Rule Settings\".",zh_TW:"\u5283\u8A5E\u7FFB\u8B6F\u7684\u958B\u555F\u548C\u95DC\u9589\u8ACB\u5230\u300C\u898F\u5247\u8A2D\u5B9A\u300D\u88E1\u9762\u8A2D\u5B9A\u3002",ja:"\u9078\u629E\u7FFB\u8A33\u306E\u30AA\u30F3/\u30AA\u30D5\u306F\u300C\u30EB\u30FC\u30EB\u8A2D\u5B9A\u300D\u3067\u884C\u3063\u3066\u304F\u3060\u3055\u3044\u3002",ko:"\uC120\uD0DD \uBC88\uC5ED \uD65C\uC131\uD654/\uBE44\uD65C\uC131\uD654\uB294 \"\uADDC\uCE59 \uC124\uC815\"\uC5D0\uC11C \uD558\uC2ED\uC2DC\uC624."},mousehover_key_help:{zh:"\u5F53\u5FEB\u6377\u952E\u7F6E\u7A7A\u65F6\u8868\u793A\u9F20\u6807\u61F8\u505C\u76F4\u63A5\u7FFB\u8BD1",en:"When the shortcut key is empty, it means that the mouse hovers to translate directly",zh_TW:"\u7576\u5FEB\u6377\u9375\u7F6E\u7A7A\u6642\u8868\u793A\u6ED1\u9F20\u61F8\u505C\u76F4\u63A5\u7FFB\u8B6F",ja:"\u30B7\u30E7\u30FC\u30C8\u30AB\u30C3\u30C8\u30AD\u30FC\u304C\u7A7A\u306E\u5834\u5408\u3001\u30DE\u30A6\u30B9\u30AA\u30FC\u30D0\u30FC\u3067\u76F4\u63A5\u7FFB\u8A33\u3057\u307E\u3059",ko:"\uB2E8\uCD95\uD0A4\uAC00 \uBE44\uC5B4 \uC788\uC73C\uBA74 \uB9C8\uC6B0\uC2A4\uC624\uBC84 \uC2DC \uBC14\uB85C \uBC88\uC5ED\uD569\uB2C8\uB2E4"},autoscan_alt:{zh:"\u81EA\u52A8\u626B\u63CF",en:"Auto Scan",zh_TW:"\u81EA\u52D5\u6383\u63CF",ja:"\u81EA\u52D5\u30B9\u30AD\u30E3\u30F3",ko:"\uC790\uB3D9 \uC2A4\uCE94"},shadowroot_alt:{zh:"ShadowRoot",en:"ShadowRoot",zh_TW:"ShadowRoot",ja:"ShadowRoot",ko:"ShadowRoot"},richtext_alt:{zh:"\u4FDD\u7559\u5BCC\u6587\u672C",en:"Rich Text",zh_TW:"\u4FDD\u7559\u5BCC\u6587\u672C",ja:"\u30EA\u30C3\u30C1\u30C6\u30AD\u30B9\u30C8",ko:"\uB9AC\uCE58 \uD14D\uC2A4\uD2B8"},transonly_alt:{zh:"\u9690\u85CF\u539F\u6587",en:"Hide Original",zh_TW:"\u96B1\u85CF\u539F\u6587",ja:"\u539F\u6587\u3092\u96A0\u3059",ko:"\uC6D0\uBB38 \uC228\uAE30\uAE30"},confirm_title:{zh:"\u786E\u8BA4",en:"Confirm",zh_TW:"\u78BA\u8A8D",ja:"\u78BA\u8A8D",ko:"\uD655\uC778"},confirm_message:{zh:"\u786E\u5B9A\u64CD\u4F5C\u5417\uFF1F",en:"Are you sure you want to proceed?",zh_TW:"\u78BA\u5B9A\u64CD\u4F5C\u55CE\uFF1F",ja:"\u64CD\u4F5C\u3092\u7D9A\u884C\u3057\u307E\u3059\u304B\uFF1F",ko:"\uACC4\uC18D\uD558\uC2DC\uACA0\uC2B5\uB2C8\uAE4C?"},confirm_action:{zh:"\u786E\u5B9A",en:"Confirm",zh_TW:"\u78BA\u5B9A",ja:"\u78BA\u8A8D",ko:"\uD655\uC778"},cancel_action:{zh:"\u53D6\u6D88",en:"Cancel",zh_TW:"\u53D6\u6D88",ja:"\u30AD\u30E3\u30F3\u30BB\u30EB",ko:"\uCDE8\uC18C"},pls_press_shortcut:{zh:"\u8BF7\u6309\u4E0B\u5FEB\u6377\u952E\u7EC4\u5408",en:"Please press the shortcut key combination",zh_TW:"\u8ACB\u6309\u4E0B\u5FEB\u901F\u9375\u7D44\u5408",ja:"\u30B7\u30E7\u30FC\u30C8\u30AB\u30C3\u30C8\u30AD\u30FC\u3092\u62BC\u3057\u3066\u304F\u3060\u3055\u3044",ko:"\uB2E8\uCD95\uD0A4 \uC870\uD569\uC744 \uB204\uB974\uC138\uC694"},load_setting_err:{zh:"\u6570\u636E\u52A0\u8F7D\u51FA\u9519\uFF0C\u8BF7\u5237\u65B0\u9875\u9762\u6216\u5378\u8F7D\u540E\u91CD\u65B0\u5B89\u88C5\u3002",en:"Please press the shortcut key combination",// 注意:这里的英文和繁体是用户上次错误的拷贝 +zh_TW:"\u8ACB\u6309\u4E0B\u5FEB\u901F\u9375\u7D44\u5408",// 注意:这里的英文和繁体是用户上次错误的拷贝 +ja:"\u30C7\u30FC\u30BF\u8AAD\u307F\u8FBC\u307F\u30A8\u30E9\u30FC\u3002\u30DA\u30FC\u30B8\u3092\u66F4\u65B0\u3059\u308B\u304B\u3001\u30A2\u30F3\u30A4\u30F3\u30B9\u30C8\u30FC\u30EB\u5F8C\u306B\u518D\u30A4\u30F3\u30B9\u30C8\u30FC\u30EB\u3057\u3066\u304F\u3060\u3055\u3044\u3002",// 翻译自 "zh" +ko:"\uB370\uC774\uD130 \uB85C\uB529 \uC624\uB958. \uD398\uC774\uC9C0\uB97C \uC0C8\uB85C \uACE0\uCE58\uAC70\uB098 \uC81C\uAC70 \uD6C4 \uB2E4\uC2DC \uC124\uCE58\uD558\uC138\uC694."// 翻译自 "zh" +},translation_style:{zh:"\u7FFB\u8BD1\u98CE\u683C",en:"Translation style",zh_TW:"\u7FFB\u8B6F\u98A8\u683C",ja:"\u7FFB\u8A33\u30B9\u30BF\u30A4\u30EB",ko:"\uBC88\uC5ED \uC2A4\uD0C0\uC77C"},placeholder:{zh:"\u5360\u4F4D\u7B26",en:"Placeholder",zh_TW:"\u4F54\u4F4D\u7B26",ja:"\u30D7\u30EC\u30FC\u30B9\u30DB\u30EB\u30C0\u30FC",ko:"\uD50C\uB808\uC774\uC2A4\uD640\uB354"},tag_name:{zh:"\u5360\u4F4D\u6807\u7B7E\u540D",en:"Placeholder tag name",zh_TW:"\u4F54\u4F4D\u6A19\u540D",ja:"\u30D7\u30EC\u30FC\u30B9\u30DB\u30EB\u30C0\u30FC\u30BF\u30B0\u540D",ko:"\uD50C\uB808\uC774\uC2A4\uD640\uB354 \uD0DC\uADF8 \uC774\uB984"},system_prompt_helper:{zh:"\u5728\u672A\u5B8C\u5168\u7406\u89E3\u9ED8\u8BA4Prompt\u7684\u60C5\u51B5\u4E0B\uFF0C\u8BF7\u52FF\u968F\u610F\u4FEE\u6539\uFF0C\u5426\u5219\u53EF\u80FD\u65E0\u6CD5\u5DE5\u4F5C\u3002",en:"Do not modify the default prompt without fully understanding it, otherwise it may not work.",zh_TW:"\u5728\u672A\u5B8C\u5168\u7406\u89E3\u9810\u8A2DPrompt\u7684\u60C5\u6CC1\u4E0B\uFF0C\u8ACB\u52FF\u96A8\u610F\u4FEE\u6539\uFF0C\u5426\u5247\u53EF\u80FD\u7121\u6CD5\u904B\u4F5C\u3002",ja:"\u30C7\u30D5\u30A9\u30EB\u30C8\u306E\u30D7\u30ED\u30F3\u30D7\u30C8\u3092\u5B8C\u5168\u306B\u7406\u89E3\u305B\u305A\u306B\u5909\u66F4\u3057\u306A\u3044\u3067\u304F\u3060\u3055\u3044\u3002\u52D5\u4F5C\u3057\u306A\u304F\u306A\u308B\u53EF\u80FD\u6027\u304C\u3042\u308A\u307E\u3059\u3002",ko:"\uAE30\uBCF8 \uD504\uB86C\uD504\uD2B8\uB97C \uC644\uC804\uD788 \uC774\uD574\uD558\uC9C0 \uC54A\uACE0 \uC218\uC815\uD558\uC9C0 \uB9C8\uC2ED\uC2DC\uC624. \uC791\uB3D9\uD558\uC9C0 \uC54A\uC744 \uC218 \uC788\uC2B5\uB2C8\uB2E4."},if_pre_init:{zh:"\u662F\u5426\u9884\u521D\u59CB\u5316",en:"Whether to pre-initialize",zh_TW:"\u662F\u5426\u9810\u521D\u59CB\u5316",ja:"\u4E8B\u524D\u521D\u671F\u5316\u3059\u308B\u304B",ko:"\uC0AC\uC804 \uCD08\uAE30\uD654 \uC5EC\uBD80"},export_old:{zh:"\u5BFC\u51FA\u65E7\u7248",en:"Export old version",zh_TW:"\u532F\u51FA\u820A\u7248",ja:"\u65E7\u30D0\u30FC\u30B8\u30E7\u30F3\u3092\u30A8\u30AF\u30B9\u30DD\u30FC\u30C8",ko:"\uC774\uC804 \uBC84\uC804 \uB0B4\uBCF4\uB0B4\uAE30"},favorite_words_helper:{zh:"\u5BFC\u5165\u8BCD\u6C47\u8BF7\u4F7F\u7528txt\u6587\u4EF6\uFF0C\u6BCF\u4E00\u884C\u4E00\u4E2A\u5355\u8BCD\u3002",en:"To import vocabulary, please use a txt file with one word per line.",zh_TW:"\u532F\u5165\u8A5E\u5F59\u8ACB\u4F7F\u7528txt\u6587\u4EF6\uFF0C\u6BCF\u4E00\u884C\u4E00\u500B\u55AE\u5B57\u3002",ja:"\u5358\u8A9E\u3092\u30A4\u30F3\u30DD\u30FC\u30C8\u3059\u308B\u306B\u306F\u30011\u884C\u306B1\u5358\u8A9E\u305A\u3064\u8A18\u8FF0\u3057\u305Ftxt\u30D5\u30A1\u30A4\u30EB\u3092\u4F7F\u7528\u3057\u3066\u304F\u3060\u3055\u3044\u3002",ko:"\uB2E8\uC5B4\uB97C \uAC00\uC838\uC624\uB824\uBA74 \uD55C \uC904\uC5D0 \uD55C \uB2E8\uC5B4\uC529 .txt \uD30C\uC77C\uC744 \uC0AC\uC6A9\uD558\uC138\uC694."},btn_tip_click_away:{zh:"\u5931\u7126\u9690\u85CF/\u663E\u793A",en:"Loss of focus hide/show",zh_TW:"\u5931\u7126\u96B1\u85CF/\u986F\u793A",ja:"\u30D5\u30A9\u30FC\u30AB\u30B9\u3092\u5931\u3063\u305F\u6642\u306B\u975E\u8868\u793A/\u8868\u793A",ko:"\uD3EC\uCEE4\uC2A4 \uC783\uC744 \uC2DC \uC228\uAE30\uAE30/\uD45C\uC2DC"},btn_tip_follow_selection:{zh:"\u8DDF\u968F/\u56FA\u5B9A\u6A21\u5F0F",en:"Follow/Fixed Mode",zh_TW:"\u8DDF\u96A8/\u56FA\u5B9A\u6A21\u5F0F",ja:"\u8FFD\u5F93/\u56FA\u5B9A\u30E2\u30FC\u30C9",ko:"\uB530\uB77C\uAC00\uAE30/\uACE0\uC815 \uBAA8\uB4DC"},btn_tip_simple_style:{zh:"\u8FF7\u4F60/\u5E38\u89C4\u6A21\u5F0F",en:"Mini/Regular Mode",zh_TW:"\u8FF7\u4F60/\u5E38\u898F\u6A21\u5F0F",ja:"\u30DF\u30CB/\u901A\u5E38\u30E2\u30FC\u30C9",ko:"\uBBF8\uB2C8/\uC77C\uBC18 \uBAA8\uB4DC"},api_placeholder:{zh:"\u5360\u4F4D\u7B26",en:"Placeholder",zh_TW:"\u4F54\u4F4D\u7B26",ja:"\u30D7\u30EC\u30FC\u30B9\u30DB\u30EB\u30C0\u30FC",ko:"\uD50C\uB808\uC774\uC2A4\uD640\uB354"},api_placetag:{zh:"\u5360\u4F4D\u6807\u7B7E",en:"Placeholder tags",zh_TW:"\u4F54\u4F4D\u6A19",ja:"\u30D7\u30EC\u30FC\u30B9\u30DB\u30EB\u30C0\u30BF\u30B0",ko:"\uD50C\uB808\uC774\uC2A4\uD640\uB354 \uD0DC\uADF8"},detected_lang:{zh:"\u8BED\u8A00\u68C0\u6D4B",en:"Language detection",zh_TW:"\u8A9E\u8A00\u5075\u6E2C",ja:"\u8A00\u8A9E\u691C\u51FA",ko:"\uC5B8\uC5B4 \uAC10\uC9C0"},detected_result:{zh:"\u68C0\u6D4B\u7ED3\u679C",en:"Detect result",zh_TW:"\u6AA2\u6E2C\u7D50\u679C",ja:"\u691C\u51FA\u7D50\u679C",ko:"\uAC10\uC9C0 \uACB0\uACFC"},subtitle_translate:{zh:"\u5B57\u5E55\u7FFB\u8BD1",en:"Subtitle Translation",zh_TW:"\u5B57\u5E55\u7FFB\u8B6F",ja:"\u5B57\u5E55\u7FFB\u8A33",ko:"\uC790\uB9C9 \uBC88\uC5ED"},toggle_subtitle_translate:{zh:"\u542F\u7528\u5B57\u5E55\u7FFB\u8BD1",en:"Enable subtitle translation",zh_TW:"\u555F\u7528\u5B57\u5E55\u7FFB\u8B6F",ja:"\u5B57\u5E55\u7FFB\u8A33\u3092\u6709\u52B9\u306B\u3059\u308B",ko:"\uC790\uB9C9 \uBC88\uC5ED \uD65C\uC131\uD654"},is_bilingual_view:{zh:"\u53CC\u8BED\u663E\u793A",en:"Enable bilingual display",zh_TW:"\u96D9\u8A9E\u986F\u793A",ja:"\u30D0\u30A4\u30EA\u30F3\u30AC\u30EB\u8868\u793A",ko:"\uC774\uC911 \uC5B8\uC5B4 \uD45C\uC2DC"},is_skip_ad:{zh:"\u5FEB\u8FDB\u5E7F\u544A",en:"Skip AD",zh_TW:"\u5FEB\u8F49\u5EE3\u544A",ja:"\u5E83\u544A\u3092\u30B9\u30AD\u30C3\u30D7",ko:"\uAD11\uACE0 \uAC74\uB108\uB6F0\uAE30"},download_subtitles:{zh:"\u4E0B\u8F7D\u5B57\u5E55",en:"Download subtitles",zh_TW:"\u4E0B\u8F7D\u5B57\u5E55",ja:"\u5B57\u5E55\u3092\u30C0\u30A6\u30F3\u30ED\u30FC\u30C9",ko:"\uC790\uB9C9 \uB2E4\uC6B4\uB85C\uB4DC"},background_styles:{zh:"\u80CC\u666F\u6837\u5F0F",en:"DBackground Style",zh_TW:"\u80CC\u666F\u6A23\u5F0F",ja:"\u80CC\u666F\u30B9\u30BF\u30A4\u30EB",ko:"\uBC30\uACBD \uC2A4\uD0C0\uC77C"},origin_styles:{zh:"\u539F\u6587\u6837\u5F0F",en:"Original style",zh_TW:"\u539F\u6587\u6A23\u5F0F",ja:"\u539F\u6587\u30B9\u30BF\u30A4\u30EB",ko:"\uC6D0\uBB38 \uC2A4\uD0C0\uC77C"},translation_styles:{zh:"\u8BD1\u6587\u6837\u5F0F",en:"Translation style",zh_TW:"\u8B6F\u6587\u6A23\u5F0F",ja:"\u7FFB\u8A33\u30B9\u30BF\u30A4\u30EB",ko:"\uBC88\uC5ED\uBB38 \uC2A4\uD0C0\uC77C"},ai_segmentation:{zh:"AI\u667A\u80FD\u65AD\u53E5",en:"AI intelligent punctuation",zh_TW:"AI\u667A\u6167\u65B7\u53E5",ja:"AI\u306B\u3088\u308B\u30A4\u30F3\u30C6\u30EA\u30B8\u30A7\u30F3\u30C8\u306A\u6587\u5206\u5272",ko:"AI \uC9C0\uB2A5\uD615 \uBB38\uC7A5 \uBD84\uB9AC"},ai_chunk_length:{zh:"AI\u5904\u7406\u5207\u5272\u957F\u5EA6(200-20000)",en:"AI processing chunk length(200-20000)",zh_TW:"AI\u5904\u7406\u5207\u5272\u957F\u5EA6(200-20000)",ja:"AI\u51E6\u7406\u306E\u30C1\u30E3\u30F3\u30AF\u9577(200-20000)",ko:"AI \uCC98\uB9AC \uCCAD\uD06C \uAE38\uC774(200-20000)"},subtitle_helper_1:{zh:"1\u3001\u76EE\u524D\u4EC5\u652F\u6301Youtube\u684C\u9762\u7F51\u7AD9\u3002",en:"1. Currently only supports Youtube desktop website.",zh_TW:"1.\u76EE\u524D\u50C5\u652F\u63F4Youtube\u684C\u9762\u7DB2\u7AD9\uFF0C\u4E14\u50C5\u652F\u63F4\u700F\u89BD\u5668\u64F4\u5145\u529F\u80FD\u3002",ja:"1. \u73FE\u5728\u3001Youtube\u306E\u30C7\u30B9\u30AF\u30C8\u30C3\u30D7\u30B5\u30A4\u30C8\u306E\u307F\u30B5\u30DD\u30FC\u30C8\u3057\u3066\u3044\u307E\u3059\u3002",ko:"1. \uD604\uC7AC Youtube \uB370\uC2A4\uD06C\uD1B1 \uC6F9\uC0AC\uC774\uD2B8\uB9CC \uC9C0\uC6D0\uD569\uB2C8\uB2E4."},subtitle_helper_2:{zh:"2\u3001\u63D2\u4EF6\u5185\u7F6E\u57FA\u7840\u7684\u5B57\u5E55\u5408\u5E76\u3001\u65AD\u53E5\u7B97\u6CD5\uFF0C\u53EF\u6EE1\u8DB3\u5927\u90E8\u5206\u60C5\u51B5\u3002",en:"2. The plug-in has built-in basic subtitle merging and sentence segmentation algorithms, which can meet most situations.",zh_TW:"2.\u63D2\u4EF6\u5167\u5EFA\u57FA\u790E\u7684\u5B57\u5E55\u5408\u4F75\u3001\u65B7\u53E5\u6F14\u7B97\u6CD5\uFF0C\u53EF\u6EFF\u8DB3\u5927\u90E8\u5206\u60C5\u6CC1\u3002",ja:"2. \u30D7\u30E9\u30B0\u30A4\u30F3\u306B\u306F\u57FA\u672C\u7684\u306A\u5B57\u5E55\u7D50\u5408\u3068\u6587\u5206\u5272\u30A2\u30EB\u30B4\u30EA\u30BA\u30E0\u304C\u7D44\u307F\u8FBC\u307E\u308C\u3066\u304A\u308A\u3001\u307B\u3068\u3093\u3069\u306E\u72B6\u6CC1\u306B\u5BFE\u5FDC\u3067\u304D\u307E\u3059\u3002",ko:"2. \uD50C\uB7EC\uADF8\uC778\uC5D0\uB294 \uAE30\uBCF8\uC801\uC778 \uC790\uB9C9 \uBCD1\uD569 \uBC0F \uBB38\uC7A5 \uBD84\uB9AC \uC54C\uACE0\uB9AC\uC998\uC774 \uB0B4\uC7A5\uB418\uC5B4 \uC788\uC5B4 \uB300\uBD80\uBD84\uC758 \uC0C1\uD669\uC5D0 \uB300\uC751\uD560 \uC218 \uC788\uC2B5\uB2C8\uB2E4."},subtitle_helper_3:{zh:"3\u3001\u4EA6\u53EF\u4EE5\u542F\u7528AI\u667A\u80FD\u65AD\u53E5\uFF0C\u4F46\u9700\u8003\u8651\u5207\u5272\u957F\u5EA6\u53CAAI\u63A5\u53E3\u80FD\u529B\uFF0C\u53EF\u80FD\u5904\u7406\u65F6\u95F4\u4F1A\u5F88\u957F\uFF0C\u751A\u81F3\u5904\u7406\u5931\u8D25\uFF0C\u5BFC\u81F4\u65E0\u6CD5\u770B\u5230\u5B57\u5E55\u3002",en:"3. You can also enable AI intelligent segmentation, but you need to consider the segmentation length and AI interface capabilities. The processing time may be very long or even fail, resulting in the inability to see subtitles.",zh_TW:"3.\u4EA6\u53EF\u555F\u7528AI\u667A\u80FD\u65B7\u53E5\uFF0C\u4F46\u9700\u8003\u616E\u5207\u5272\u9577\u5EA6\u53CAAI\u4ECB\u9762\u80FD\u529B\uFF0C\u53EF\u80FD\u8655\u7406\u6642\u9593\u6703\u5F88\u9577\uFF0C\u751A\u81F3\u8655\u7406\u5931\u6557\uFF0C\u5C0E\u81F4\u7121\u6CD5\u770B\u5230\u5B57\u5E55\u3002",ja:"3. AI\u30A4\u30F3\u30C6\u30EA\u30B8\u30A7\u30F3\u30C8\u6587\u5206\u5272\u3092\u6709\u52B9\u306B\u3059\u308B\u3053\u3068\u3082\u3067\u304D\u307E\u3059\u304C\u3001\u5206\u5272\u9577\u3068AI\u30A4\u30F3\u30BF\u30FC\u30D5\u30A7\u30FC\u30B9\u306E\u80FD\u529B\u3092\u8003\u616E\u3059\u308B\u5FC5\u8981\u304C\u3042\u308A\u3001\u51E6\u7406\u6642\u9593\u304C\u9577\u304F\u306A\u3063\u305F\u308A\u3001\u5931\u6557\u3057\u3066\u5B57\u5E55\u304C\u8868\u793A\u3055\u308C\u306A\u304F\u306A\u308B\u53EF\u80FD\u6027\u304C\u3042\u308A\u307E\u3059\u3002",ko:"3. AI \uC9C0\uB2A5\uD615 \uBD84\uB9AC\uB97C \uD65C\uC131\uD654\uD560 \uC218\uB3C4 \uC788\uC9C0\uB9CC, \uBD84\uB9AC \uAE38\uC774\uC640 AI \uC778\uD130\uD398\uC774\uC2A4\uC758 \uB2A5\uB825\uC744 \uACE0\uB824\uD574\uC57C \uD558\uBA70, \uCC98\uB9AC \uC2DC\uAC04\uC774 \uB9E4\uC6B0 \uAE38\uAC70\uB098 \uC2E4\uD328\uD558\uC5EC \uC790\uB9C9\uC744 \uBCFC \uC218 \uC5C6\uAC8C \uB420 \uC218\uB3C4 \uC788\uC2B5\uB2C8\uB2E4."},default_styles_example:{zh:"\u9ED8\u8BA4\u6837\u5F0F\u53C2\u8003\uFF1A",en:"Default styles reference:",zh_TW:"\u8A8D\u6A23\u5F0F\u53C3\u8003\uFF1A",ja:"\u30C7\u30D5\u30A9\u30EB\u30C8\u30B9\u30BF\u30A4\u30EB\u306E\u4F8B\uFF1A",ko:"\uAE30\uBCF8 \uC2A4\uD0C0\uC77C \uC608\uC2DC:"},subtitle_load_succeed:{zh:"\u53CC\u8BED\u5B57\u5E55\u52A0\u8F7D\u6210\u529F\uFF01",en:"Bilingual subtitles loaded successfully!",zh_TW:"\u53CC\u8BED\u5B57\u5E55\u52A0\u8F7D\u6210\u529F\uFF01",ja:"\u30D0\u30A4\u30EA\u30F3\u30AC\u30EB\u5B57\u5E55\u306E\u8AAD\u307F\u8FBC\u307F\u306B\u6210\u529F\u3057\u307E\u3057\u305F\uFF01",ko:"\uC774\uC911 \uC5B8\uC5B4 \uC790\uB9C9 \uB85C\uB529 \uC131\uACF5!"},subtitle_load_failed:{zh:"\u53CC\u8BED\u5B57\u5E55\u52A0\u8F7D\u5931\u8D25\uFF01",en:"Failed to load bilingual subtitles!",zh_TW:"\u53CC\u8BED\u5B57\u5E55\u52A0\u8F7D\u5931\u8D25\uFF01",ja:"\u30D0\u30A4\u30EA\u30F3\u30AC\u30EB\u5B57\u5E55\u306E\u8AAD\u307F\u8FBC\u307F\u306B\u5931\u6557\u3057\u307E\u3057\u305F\uFF01",ko:"\uC774\uC911 \uC5B8\uC5B4 \uC790\uB9C9 \uB85C\uB529 \uC2E4\uD328!"},try_get_subtitle_data:{zh:"\u5C1D\u8BD5\u83B7\u53D6\u5B57\u5E55\u6570\u636E\uFF0C\u8BF7\u7A0D\u5019...",en:"Trying to get subtitle data, please wait...",zh_TW:"\u5C1D\u8BD5\u83B7\u53D6\u5B57\u5E55\u6570\u636E\uFF0C\u8BF7\u7A0D\u5019...",ja:"\u5B57\u5E55\u30C7\u30FC\u30BF\u3092\u53D6\u5F97\u3057\u3066\u3044\u307E\u3059\u3002\u304A\u5F85\u3061\u304F\u3060\u3055\u3044...",ko:"\uC790\uB9C9 \uB370\uC774\uD130\uB97C \uAC00\uC838\uC624\uB294 \uC911\uC785\uB2C8\uB2E4. \uC7A0\uC2DC \uAE30\uB2E4\uB824\uC8FC\uC138\uC694..."},subtitle_data_processing:{zh:"\u5B57\u5E55\u6570\u636E\u5904\u7406\u4E2D...",en:"Subtitle data processing...",zh_TW:"\u5B57\u5E55\u6570\u636E\u5904\u7406\u4E2D...",ja:"\u5B57\u5E55\u30C7\u30FC\u30BF\u3092\u51E6\u7406\u4E2D...",ko:"\uC790\uB9C9 \uB370\uC774\uD130 \uCC98\uB9AC \uC911..."},starting_to_process_subtitle:{zh:"\u5F00\u59CB\u5904\u7406\u5B57\u5E55\u6570\u636E...",en:"Starting to process subtitle data...",zh_TW:"\u5F00\u59CB\u5904\u7406\u5B57\u5E55\u6570\u636E...",ja:"\u5B57\u5E55\u30C7\u30FC\u30BF\u306E\u51E6\u7406\u3092\u958B\u59CB\u3057\u307E\u3059...",ko:"\uC790\uB9C9 \uB370\uC774\uD130 \uCC98\uB9AC\uB97C \uC2DC\uC791\uD569\uB2C8\uB2E4..."},subtitle_data_is_ready:{zh:"\u5B57\u5E55\u6570\u636E\u5DF2\u51C6\u5907\u5C31\u7EEA\uFF0C\u8BF7\u70B9\u51FBKT\u6309\u94AE\u52A0\u8F7D",en:"The subtitle data is ready, please click the KT button to load it",zh_TW:"\u5B57\u5E55\u8CC7\u6599\u5DF2\u6E96\u5099\u5C31\u7DD2\uFF0C\u8ACB\u9EDE\u64CAKT\u6309\u9215\u52A0\u8F09",ja:"\u5B57\u5E55\u30C7\u30FC\u30BF\u306E\u6E96\u5099\u304C\u3067\u304D\u307E\u3057\u305F\u3002KT\u30DC\u30BF\u30F3\u3092\u30AF\u30EA\u30C3\u30AF\u3057\u3066\u8AAD\u307F\u8FBC\u3093\u3067\u304F\u3060\u3055\u3044",ko:"\uC790\uB9C9 \uB370\uC774\uD130\uAC00 \uC900\uBE44\uB418\uC5C8\uC2B5\uB2C8\uB2E4. KT \uBC84\uD2BC\uC744 \uD074\uB9AD\uD558\uC5EC \uB85C\uB4DC\uD558\uC138\uC694"},starting_reprocess_events:{zh:"\u91CD\u65B0\u5904\u7406\u5B57\u5E55\u6570\u636E...",en:"Reprocess the subtitle data...",zh_TW:"\u91CD\u65B0\u5904\u7406\u5B57\u5E55\u6570\u636E...",ja:"\u5B57\u5E55\u30C7\u30FC\u30BF\u3092\u518D\u51E6\u7406\u3057\u3066\u3044\u307E\u3059...",ko:"\uC790\uB9C9 \uB370\uC774\uD130\uB97C \uB2E4\uC2DC \uCC98\uB9AC \uC911..."},waitting_for_subtitle:{zh:"\u8BF7\u7B49\u5F85\u5B57\u5E55\u6570\u636E",en:"Please wait for the subtitle data.",zh_TW:"\u8BF7\u7B49\u5F85\u5B57\u5E55\u6570\u636E",ja:"\u5B57\u5E55\u30C7\u30FC\u30BF\u3092\u5F85\u6A5F\u4E2D",ko:"\uC790\uB9C9 \uB370\uC774\uD130\uB97C \uAE30\uB2E4\uB824\uC8FC\uC138\uC694"},ai_processing_pls_wait:{zh:"AI\u5904\u7406\u4E2D\uFF0C\u8BF7\u7A0D\u7B49...",en:"AI processing in progress, please wait...",zh_TW:"AI\u5904\u7406\u4E2D\uFF0C\u8BF7\u7A0D\u7B49...",ja:"AI\u51E6\u7406\u4E2D\u3067\u3059\u3002\u304A\u5F85\u3061\u304F\u3060\u3055\u3044...",ko:"AI \uCC98\uB9AC \uC911\uC785\uB2C8\uB2E4. \uC7A0\uC2DC \uAE30\uB2E4\uB824\uC8FC\uC138\uC694..."},processing_subtitles:{zh:"\u5B57\u5E55\u5904\u7406\u4E2D...",en:"Subtitle processing...",zh_TW:"\u5B57\u5E55\u5904\u7406\u4E2D...",ja:"\u5B57\u5E55\u51E6\u7406\u4E2D...",ko:"\uC790\uB9C9 \uCC98\uB9AC \uC911..."},waiting_subtitles:{zh:"\u7B49\u5F85\u5B57\u5E55\u4E2D",en:"Waiting for subtitles",zh_TW:"\u7B49\u5F85\u5B57\u5E55\u4E2D",ja:"\u5B57\u5E55\u5F85\u6A5F\u4E2D",ko:"\uC790\uB9C9 \uB300\uAE30 \uC911"},subtitle_is_not_yet_ready:{zh:"\u5B57\u5E55\u6570\u636E\u5C1A\u672A\u51C6\u5907\u597D",en:"Subtitle is not yet ready.",zh_TW:"\u5B57\u5E55\u6570\u636E\u5C1A\u672A\u51C6\u5907\u597D",ja:"\u5B57\u5E55\u30C7\u30FC\u30BF\u306E\u6E96\u5099\u304C\u307E\u3060\u3067\u304D\u3066\u3044\u307E\u305B\u3093\u3002",ko:"\uC790\uB9C9 \uB370\uC774\uD130\uAC00 \uC544\uC9C1 \uC900\uBE44\uB418\uC9C0 \uC54A\uC558\uC2B5\uB2C8\uB2E4."},log_level:{zh:"\u65E5\u5FD7\u7EA7\u522B",en:"Log Level",zh_TW:"\u65E5\u8A8C\u7B49\u7D1A",ja:"\u30ED\u30B0\u30EC\u30D9\u30EB",ko:"\uB85C\uADF8 \uB808\uBCA8"},goto_custom_api_example:{zh:"\u70B9\u51FB\u67E5\u770B\u3010\u81EA\u5B9A\u4E49\u63A5\u53E3\u793A\u4F8B\u3011",en:"Click to view [Custom Interface Example]",zh_TW:"\u9EDE\u9078\u67E5\u770B\u3010\u81EA\u8A02\u4ECB\u9762\u7BC4\u4F8B\u3011",ja:"\u3010\u30AB\u30B9\u30BF\u30E0\u30A4\u30F3\u30BF\u30FC\u30D5\u30A7\u30FC\u30B9\u306E\u4F8B\u3011\u3092\u898B\u308B",ko:"[\uC0AC\uC6A9\uC790 \uC9C0\uC815 \uC778\uD130\uD398\uC774\uC2A4 \uC608\uC2DC] \uBCF4\uAE30"},split_paragraph:{zh:"\u5207\u5206\u957F\u6BB5\u843D",en:"Split long paragraph",zh_TW:"\u5207\u5206\u9577\u6BB5\u843D",ja:"\u9577\u3044\u6BB5\u843D\u3092\u5206\u5272",ko:"\uAE34 \uB2E8\uB77D \uB098\uB204\uAE30"},split_length:{zh:"\u5207\u5206\u957F\u5EA6 (0-10000)",en:"Segmentation length(0-10000)",zh_TW:"\u5207\u5206\u9577\u5EA6(0-10000)",ja:"\u5206\u5272\u9577(0-10000)",ko:"\uBD84\uD560 \uAE38\uC774(0-10000)"},highlight_words:{zh:"\u9AD8\u4EAE\u6536\u85CF\u8BCD\u6C47",en:"Highlight favorite words",zh_TW:"\u9AD8\u4EAE\u6536\u85CF\u8A5E\u5F59",ja:"\u304A\u6C17\u306B\u5165\u308A\u5358\u8A9E\u3092\u30CF\u30A4\u30E9\u30A4\u30C8",ko:"\uC990\uACA8\uCC3E\uB294 \uB2E8\uC5B4 \uD558\uC774\uB77C\uC774\uD2B8"},split_disable:{zh:"\u7981\u7528",en:"Disable",zh_TW:"\u505C\u7528",ja:"\u7121\u52B9",ko:"\uBE44\uD65C\uC131\uD654"},split_textlength:{zh:"\u6309\u7167\u957F\u5EA6\u5207\u5206",en:"Split by length",zh_TW:"\u4F9D\u9577\u5EA6\u5207\u5206",ja:"\u9577\u3055\u3067\u5206\u5272",ko:"\uAE38\uC774\uB85C \uB098\uB204\uAE30"},split_punctuation:{zh:"\u6309\u7167\u53E5\u5B50\u5207\u5206",en:"Split by sentence",zh_TW:"\u6309\u7167\u53E5\u5B50\u5207\u5206",ja:"\u6587\u3067\u5206\u5272",ko:"\uBB38\uC7A5\uC73C\uB85C \uB098\uB204\uAE30"},highlight_disable:{zh:"\u7981\u7528",en:"Disable",zh_TW:"\u505C\u7528",ja:"\u7121\u52B9",ko:"\uBE44\uD65C\uC131\uD654"},highlight_beforetrans:{zh:"\u7FFB\u8BD1\u524D\u9AD8\u4EAE",en:"Highlight before translation",zh_TW:"\u7FFB\u8B6F\u524D\u9AD8\u4EAE",ja:"\u7FFB\u8A33\u524D\u306B\u30CF\u30A4\u30E9\u30A4\u30C8",ko:"\uBC88\uC5ED \uC804 \uD558\uC774\uB77C\uC774\uD2B8"},highlight_aftertrans:{zh:"\u7FFB\u8BD1\u540E\u9AD8\u4EAE",en:"Highlight after translation",zh_TW:"\u7FFB\u8B6F\u5F8C\u9AD8\u4EAE",ja:"\u7FFB\u8A33\u5F8C\u306B\u30CF\u30A4\u30E9\u30A4\u30C8",ko:"\uBC88\uC5ED \uD6C4 \uD558\uC774\uB77C\uC774\uD2B8"},pagescroll_root_margin:{zh:"\u6EDA\u52A8\u52A0\u8F7D\u63D0\u524D\u89E6\u53D1 (0-10000px)",en:"Early triggering of scroll loading (0-10000px)",zh_TW:"\u6EFE\u52D5\u8F09\u5165\u63D0\u524D\u89F8\u767C (0-10000px)",ja:"\u30B9\u30AF\u30ED\u30FC\u30EB\u8AAD\u307F\u8FBC\u307F\u306E\u4E8B\u524D\u30C8\u30EA\u30AC\u30FC (0-10000px)",ko:"\uC2A4\uD06C\uB864 \uB85C\uB529 \uBBF8\uB9AC \uD2B8\uB9AC\uAC70 (0-10000px)"},styles_setting:{zh:"\u6837\u5F0F\u8BBE\u7F6E",en:"Style Setting",zh_TW:"\u6A23\u5F0F\u8A2D\u5B9A",ja:"\u30B9\u30BF\u30A4\u30EB\u8A2D\u5B9A",ko:"\uC2A4\uD0C0\uC77C \uC124\uC815"},style_name:{zh:"\u6837\u5F0F\u540D\u79F0",en:"Style Name",zh_TW:"\u6A23\u5F0F\u540D\u7A31",ja:"\u30B9\u30BF\u30A4\u30EB\u540D",ko:"\uC2A4\uD0C0\uC77C \uC774\uB984"},style_code:{zh:"\u6837\u5F0F\u4EE3\u7801",en:"Style Code",zh_TW:"\u6A23\u5F0F\u7A0B\u5F0F\u78BC",ja:"\u30B9\u30BF\u30A4\u30EB\u30B3\u30FC\u30C9",ko:"\uC2A4\uD0C0\uC77C \uCF54\uB4DC"},pre_trans_seconds:{zh:"\u63D0\u524D\u7FFB\u8BD1\u65F6\u957F (10-36000s)",en:"Pre translation seconds (10-36000s)",zh_TW:"\u63D0\u524D\u7FFB\u8BD1\u65F6\u957F (10-36000s)",ja:"\u4E8B\u524D\u7FFB\u8A33\u6642\u9593 (10-36000s)",ko:"\uBBF8\uB9AC \uBC88\uC5ED \uC2DC\uAC04 (10-36000s)"},throttle_trans_interval:{zh:"\u8282\u6D41\u7FFB\u8BD1\u95F4\u9694 (1-3600s)",en:"Throttling translation interval (1-3600s)",zh_TW:"\u8282\u6D41\u7FFB\u8BD1\u95F4\u9694 (1-3600s)",ja:"\u7FFB\u8A33\u9593\u9694\u306E\u30B9\u30ED\u30C3\u30C8\u30EA\u30F3\u30B0 (1-3600s)",ko:"\uBC88\uC5ED \uAC04\uACA9 \uC870\uC808 (1-3600s)"},show_origin_subtitle:{zh:"\u663E\u793A\u539F\u5B57\u5E55",en:"Show original subtitles",zh_TW:"\u663E\u793A\u539F\u5B57\u5E55",ja:"\u539F\u5B57\u5E55\u3092\u8868\u793A",ko:"\uC6D0\uBCF8 \uC790\uB9C9 \uD45C\uC2DC"}};const newI18n=lang=>key=>{var _I18N$key;return((_I18N$key=I18N[key])===null||_I18N$key===void 0?void 0:_I18N$key[lang])||"";}; ;// CONCATENATED MODULE: ./src/config/storage.js const KV_RULES_KEY="kiss-rules_v".concat(APP_VERSION[0],".json");const KV_WORDS_KEY="kiss-words.json";const KV_RULES_SHARE_KEY="kiss-rules-share_v".concat(APP_VERSION[0],".json");const KV_SETTING_KEY="kiss-setting_v".concat(APP_VERSION[0],".json");const KV_SALT_SYNC="KISS-Translator-SYNC";const KV_SALT_SHARE="KISS-Translator-SHARE";const STOKEY_MSAUTH="".concat(APP_NAME,"_msauth");const storage_STOKEY_BDAUTH="".concat(APP_NAME,"_bdauth");const STOKEY_SETTING_OLD="".concat(APP_NAME,"_setting");const STOKEY_RULES_OLD="".concat(APP_NAME,"_rules");const storage_STOKEY_SETTING="".concat(APP_NAME,"_setting_v").concat(APP_VERSION[0]);const storage_STOKEY_RULES="".concat(APP_NAME,"_rules_v").concat(APP_VERSION[0]);const STOKEY_WORDS="".concat(APP_NAME,"_words");const storage_STOKEY_SYNC="".concat(APP_NAME,"_sync");const storage_STOKEY_FAB="".concat(APP_NAME,"_fab");const storage_STOKEY_TRANBOX="".concat(APP_NAME,"_tranbox");const storage_STOKEY_RULESCACHE_PREFIX="".concat(APP_NAME,"_rulescache_");const storage_CACHE_NAME="".concat(APP_NAME,"_cache");const DEFAULT_CACHE_TIMEOUT=3600*24*7;// 缓存超时时间(7天) ;// CONCATENATED MODULE: ./src/config/url.js @@ -56069,7 +56075,7 @@ return mimeMap[extension]||defaultType;}/** * @param {*} filename */function downloadBlobFile(str){let filename=arguments.length>1&&arguments[1]!==undefined?arguments[1]:"kiss-file.txt";const mimeType=getMimeTypeFromFilename(filename);const blob=new Blob([str],{type:mimeType});const url=URL.createObjectURL(blob);const a=document.createElement("a");a.style.display="none";a.href=url;a.download=filename||"kiss-file.txt";document.body.appendChild(a);a.click();document.body.removeChild(a);URL.revokeObjectURL(url);} ;// CONCATENATED MODULE: ./src/libs/storage.js -async function set(key,val){if(client_isExt){await browser_browser.storage.local.set({[key]:val});}else if(isGm){await(window.KISS_GM||GM).setValue(key,val);}else{window.localStorage.setItem(key,val);}}async function get(key){if(client_isExt){const val=await browser_browser.storage.local.get([key]);return val[key];}else if(isGm){const val=await(window.KISS_GM||GM).getValue(key);return val;}return window.localStorage.getItem(key);}async function del(key){if(client_isExt){await browser_browser.storage.local.remove([key]);}else if(isGm){await(window.KISS_GM||GM).deleteValue(key);}else{window.localStorage.removeItem(key);}}async function setObj(key,obj){await set(key,JSON.stringify(obj));}async function trySetObj(key,obj){if(!(await get(key))){await setObj(key,obj);}}async function getObj(key){const val=await get(key);if(val===null||val===undefined)return null;try{return JSON.parse(val);}catch(err){log_kissLog("parse json in storage err: ",key);}return null;}async function putObj(key,obj){var _await$getObj;const cur=(_await$getObj=await getObj(key))!==null&&_await$getObj!==void 0?_await$getObj:{};await setObj(key,_objectSpread2(_objectSpread2({},cur),obj));}/** +async function set(key,val){if(client_isExt){await browser_browser.storage.local.set({[key]:val});}else if(isGm){await(window.KISS_GM||GM).setValue(key,val);}else{var _window;(_window=window)===null||_window===void 0?void 0:_window.localStorage.setItem(key,val);}}async function get(key){var _window2;if(client_isExt){const val=await browser_browser.storage.local.get([key]);return val[key];}else if(isGm){const val=await(window.KISS_GM||GM).getValue(key);return val;}return(_window2=window)===null||_window2===void 0?void 0:_window2.localStorage.getItem(key);}async function del(key){if(client_isExt){await browser_browser.storage.local.remove([key]);}else if(isGm){await(window.KISS_GM||GM).deleteValue(key);}else{var _window3;(_window3=window)===null||_window3===void 0?void 0:_window3.localStorage.removeItem(key);}}async function setObj(key,obj){await set(key,JSON.stringify(obj));}async function trySetObj(key,obj){if(!(await get(key))){await setObj(key,obj);}}async function getObj(key){const val=await get(key);if(val===null||val===undefined)return null;try{return JSON.parse(val);}catch(err){log_kissLog("parse json in storage err: ",key);}return null;}async function putObj(key,obj){var _await$getObj;const cur=(_await$getObj=await getObj(key))!==null&&_await$getObj!==void 0?_await$getObj:{};await setObj(key,_objectSpread2(_objectSpread2({},cur),obj));}/** * 对storage的封装 */const storage={get,set,del,setObj,trySetObj,getObj,putObj// onChanged, };/** @@ -56811,7 +56817,7 @@ contents:[{role:"model",parts:[{text:systemPrompt}]},...hisMsgs,userMsg],generat // }, safetySettings:[{category:"HARM_CATEGORY_HARASSMENT",threshold:"BLOCK_NONE"},{category:"HARM_CATEGORY_HATE_SPEECH",threshold:"BLOCK_NONE"},{category:"HARM_CATEGORY_SEXUALLY_EXPLICIT",threshold:"BLOCK_NONE"},{category:"HARM_CATEGORY_DANGEROUS_CONTENT",threshold:"BLOCK_NONE"}]};const headers={"Content-type":"application/json"};return{url,body,headers,userMsg};};const genGemini2=_ref14=>{let{url,key,systemPrompt,userPrompt,model,temperature,maxTokens,hisMsgs=[]}=_ref14;const userMsg={role:"user",content:userPrompt};const body={model,messages:[{role:"system",content:systemPrompt},...hisMsgs,userMsg],temperature,max_tokens:maxTokens};const headers={"Content-type":"application/json",Authorization:"Bearer ".concat(key)};return{url,body,headers,userMsg};};const genClaude=_ref15=>{let{url,key,systemPrompt,userPrompt,model,temperature,maxTokens,hisMsgs=[]}=_ref15;const userMsg={role:"user",content:userPrompt};const body={model,system:systemPrompt,messages:[...hisMsgs,userMsg],temperature,max_tokens:maxTokens};const headers={"Content-type":"application/json","anthropic-version":"2023-06-01","anthropic-dangerous-direct-browser-access":"true","x-api-key":key};return{url,body,headers,userMsg};};const genOpenRouter=_ref16=>{let{url,key,systemPrompt,userPrompt,model,temperature,maxTokens,hisMsgs=[]}=_ref16;const userMsg={role:"user",content:userPrompt};const body={model,messages:[{role:"system",content:systemPrompt},...hisMsgs,userMsg],temperature,max_tokens:maxTokens};const headers={"Content-type":"application/json",Authorization:"Bearer ".concat(key)};return{url,body,headers,userMsg};};const genOllama=_ref17=>{let{// think, url,key,systemPrompt,userPrompt,model,temperature,maxTokens,hisMsgs=[]}=_ref17;const userMsg={role:"user",content:userPrompt};const body={model,messages:[{role:"system",content:systemPrompt},...hisMsgs,userMsg],temperature,max_tokens:maxTokens,// think, -stream:false};const headers={"Content-type":"application/json"};if(key){headers.Authorization="Bearer ".concat(key);}return{url,body,headers,userMsg};};const genCloudflareAI=_ref18=>{let{texts,from,to,url,key}=_ref18;const body={text:texts.join(" "),source_lang:from,target_lang:to};const headers={"Content-type":"application/json",Authorization:"Bearer ".concat(key)};return{url,body,headers};};const genCustom=_ref19=>{let{texts,fromLang,toLang,url,key}=_ref19;const body={texts,from:fromLang,to:toLang};const headers={"Content-type":"application/json",Authorization:"Bearer ".concat(key)};return{url,body,headers};};const genReqFuncs={[OPT_TRANS_GOOGLE]:genGoogle,[OPT_TRANS_GOOGLE_2]:genGoogle2,[OPT_TRANS_MICROSOFT]:genMicrosoft,[OPT_TRANS_AZUREAI]:genAzureAI,[OPT_TRANS_DEEPL]:genDeepl,[OPT_TRANS_DEEPLFREE]:genDeeplFree,[OPT_TRANS_DEEPLX]:genDeeplX,[OPT_TRANS_NIUTRANS]:genNiuTrans,[OPT_TRANS_BAIDU]:genBaidu,[OPT_TRANS_TENCENT]:genTencent,[OPT_TRANS_VOLCENGINE]:genVolcengine,[api_OPT_TRANS_OPENAI]:genOpenAI,[api_OPT_TRANS_GEMINI]:genGemini,[api_OPT_TRANS_GEMINI_2]:genGemini2,[api_OPT_TRANS_CLAUDE]:genClaude,[OPT_TRANS_CLOUDFLAREAI]:genCloudflareAI,[api_OPT_TRANS_OLLAMA]:genOllama,[api_OPT_TRANS_OPENROUTER]:genOpenRouter,[api_OPT_TRANS_CUSTOMIZE]:genCustom};const genInit=_ref20=>{let{url="",body=null,headers={},userMsg=null,method="POST"}=_ref20;if(!url){throw new Error("genInit: url is empty");}const init={method,headers};if(method!=="GET"&&method!=="HEAD"&&body){var _body$params;let payload=JSON.stringify(body);const id=body===null||body===void 0?void 0:(_body$params=body.params)===null||_body$params===void 0?void 0:_body$params.id;if(id){payload=payload.replace('method":"',(id+3)%13===0||(id+5)%29===0?'method" : "':'method": "');}Object.assign(init,{body:payload});}return[url,init,userMsg];};/** +stream:false};const headers={"Content-type":"application/json"};if(key){headers.Authorization="Bearer ".concat(key);}return{url,body,headers,userMsg};};const genCloudflareAI=_ref18=>{let{texts,from,to,url,key}=_ref18;const body={text:texts.join(" "),source_lang:from,target_lang:to};const headers={"Content-type":"application/json",Authorization:"Bearer ".concat(key)};return{url,body,headers};};const genCustom=_ref19=>{let{texts,fromLang,toLang,url,key,useBatchFetch}=_ref19;const body=useBatchFetch?{texts,from:fromLang,to:toLang}:{text:texts[0],from:fromLang,to:toLang};const headers={"Content-type":"application/json",Authorization:"Bearer ".concat(key)};return{url,body,headers};};const genReqFuncs={[OPT_TRANS_GOOGLE]:genGoogle,[OPT_TRANS_GOOGLE_2]:genGoogle2,[OPT_TRANS_MICROSOFT]:genMicrosoft,[OPT_TRANS_AZUREAI]:genAzureAI,[OPT_TRANS_DEEPL]:genDeepl,[OPT_TRANS_DEEPLFREE]:genDeeplFree,[OPT_TRANS_DEEPLX]:genDeeplX,[OPT_TRANS_NIUTRANS]:genNiuTrans,[OPT_TRANS_BAIDU]:genBaidu,[OPT_TRANS_TENCENT]:genTencent,[OPT_TRANS_VOLCENGINE]:genVolcengine,[api_OPT_TRANS_OPENAI]:genOpenAI,[api_OPT_TRANS_GEMINI]:genGemini,[api_OPT_TRANS_GEMINI_2]:genGemini2,[api_OPT_TRANS_CLAUDE]:genClaude,[OPT_TRANS_CLOUDFLAREAI]:genCloudflareAI,[api_OPT_TRANS_OLLAMA]:genOllama,[api_OPT_TRANS_OPENROUTER]:genOpenRouter,[api_OPT_TRANS_CUSTOMIZE]:genCustom};const genInit=_ref20=>{let{url="",body=null,headers={},userMsg=null,method="POST"}=_ref20;if(!url){throw new Error("genInit: url is empty");}const init={method,headers};if(method!=="GET"&&method!=="HEAD"&&body){var _body$params;let payload=JSON.stringify(body);const id=body===null||body===void 0?void 0:(_body$params=body.params)===null||_body$params===void 0?void 0:_body$params.id;if(id){payload=payload.replace('method":"',(id+3)%13===0||(id+5)%29===0?'method" : "':'method": "');}Object.assign(init,{body:payload});}return[url,init,userMsg];};/** * 构造翻译接口请求参数 * @param {*} * @returns @@ -56823,16 +56829,16 @@ if(reqHook!==null&&reqHook!==void 0&&reqHook.trim()&&!events){try{interpreter.ru * @param {*} res * @param {*} param3 * @returns - */const parseTransRes=async(res,_ref22)=>{var _res$sentences,_res$,_res$translations,_res$result,_res$result$texts,_res$result2,_res$auto_translation,_res$choices,_res$choices$,_modelMsg,_res$candidates,_res$candidates$,_modelMsg$parts$0$tex,_modelMsg2,_modelMsg2$parts,_modelMsg2$parts$,_res$content,_res$content$0$text,_res$content2,_res$content2$,_res$result3,_res$choices2,_res$choices2$,_modelMsg3,_ref23,_res$translations2;let{texts,from,to,fromLang,toLang,langMap,resHook,// thinkIgnore, + */const parseTransRes=async(res,_ref22)=>{var _res$sentences,_res$,_res$translations,_res$result,_res$result$texts,_res$result2,_res$auto_translation,_res$choices,_res$choices$,_modelMsg,_res$candidates,_res$candidates$,_modelMsg$parts$0$tex,_modelMsg2,_modelMsg2$parts,_modelMsg2$parts$,_res$content,_res$content$0$text,_res$content2,_res$content2$,_res$result3,_res$choices2,_res$choices2$,_modelMsg3;let{texts,from,to,fromLang,toLang,langMap,resHook,// thinkIgnore, history,userMsg,apiType,useBatchFetch}=_ref22;// 执行 response hook -if(resHook!==null&&resHook!==void 0&&resHook.trim()){try{interpreter.run("exports.resHook = ".concat(resHook));const hookResult=await interpreter.exports.resHook({apiType,userMsg,res,texts,from,to,fromLang,toLang,langMap,extractJson: extractJson,parseAIRes});if(hookResult&&Array.isArray(hookResult.translations)){if(history&&userMsg&&hookResult.modelMsg){history.add(userMsg,hookResult.modelMsg);}return hookResult.translations;}}catch(err){log_kissLog("run res hook",err);}}let modelMsg="";// todo: 根据结果抛出实际异常信息 +if(resHook!==null&&resHook!==void 0&&resHook.trim()){try{interpreter.run("exports.resHook = ".concat(resHook));const hookResult=await interpreter.exports.resHook({apiType,userMsg,res,texts,from,to,fromLang,toLang,langMap,extractJson: extractJson,parseAIRes});if(hookResult&&Array.isArray(hookResult.translations)){if(history&&userMsg&&hookResult.modelMsg){history.add(userMsg,hookResult.modelMsg);}return hookResult.translations;}else if(Array.isArray(hookResult)){return hookResult;}}catch(err){log_kissLog("run res hook",err);}}let modelMsg="";// todo: 根据结果抛出实际异常信息 switch(apiType){case OPT_TRANS_GOOGLE:return[[res===null||res===void 0?void 0:(_res$sentences=res.sentences)===null||_res$sentences===void 0?void 0:_res$sentences.map(item=>item.trans).join(" "),res===null||res===void 0?void 0:res.src]];case OPT_TRANS_GOOGLE_2:return res===null||res===void 0?void 0:(_res$=res[0])===null||_res$===void 0?void 0:_res$.map((_,i)=>{var _res$2,_res$3;return[res===null||res===void 0?void 0:(_res$2=res[0])===null||_res$2===void 0?void 0:_res$2[i],res===null||res===void 0?void 0:(_res$3=res[1])===null||_res$3===void 0?void 0:_res$3[i]];});case OPT_TRANS_MICROSOFT:case OPT_TRANS_AZUREAI:return res===null||res===void 0?void 0:res.map(item=>{var _item$detectedLanguag;return[item.translations.map(item=>item.text).join(" "),(_item$detectedLanguag=item.detectedLanguage)===null||_item$detectedLanguag===void 0?void 0:_item$detectedLanguag.language];});case OPT_TRANS_DEEPL:return res===null||res===void 0?void 0:(_res$translations=res.translations)===null||_res$translations===void 0?void 0:_res$translations.map(item=>[item.text,item.detected_source_language]);case OPT_TRANS_DEEPLFREE:return[[res===null||res===void 0?void 0:(_res$result=res.result)===null||_res$result===void 0?void 0:(_res$result$texts=_res$result.texts)===null||_res$result$texts===void 0?void 0:_res$result$texts.map(item=>item.text).join(" "),res===null||res===void 0?void 0:(_res$result2=res.result)===null||_res$result2===void 0?void 0:_res$result2.lang]];case OPT_TRANS_DEEPLX:return[[res===null||res===void 0?void 0:res.data,res===null||res===void 0?void 0:res.source_lang]];case OPT_TRANS_NIUTRANS:const json=JSON.parse(res);if(json.error_msg){throw new Error(json.error_msg);}return[[json.tgt_text,json.from]];case OPT_TRANS_BAIDU:if(res.type===1){return[[Object.keys(JSON.parse(res.result).content[0].mean[0].cont)[0],res.from]];}else if(res.type===2){return[[res.data.map(item=>item.dst).join(" "),res.from]];}break;case OPT_TRANS_TENCENT:return res===null||res===void 0?void 0:(_res$auto_translation=res.auto_translation)===null||_res$auto_translation===void 0?void 0:_res$auto_translation.map(text=>[text,res===null||res===void 0?void 0:res.src_lang]);case OPT_TRANS_VOLCENGINE:return[[res===null||res===void 0?void 0:res.translation,res===null||res===void 0?void 0:res.detected_language]];case api_OPT_TRANS_OPENAI:case api_OPT_TRANS_GEMINI_2:case api_OPT_TRANS_OPENROUTER:modelMsg=res===null||res===void 0?void 0:(_res$choices=res.choices)===null||_res$choices===void 0?void 0:(_res$choices$=_res$choices[0])===null||_res$choices$===void 0?void 0:_res$choices$.message;if(history&&userMsg&&modelMsg){history.add(userMsg,{role:modelMsg.role,content:modelMsg.content});}return parseAIRes((_modelMsg=modelMsg)===null||_modelMsg===void 0?void 0:_modelMsg.content,useBatchFetch);case api_OPT_TRANS_GEMINI:modelMsg=res===null||res===void 0?void 0:(_res$candidates=res.candidates)===null||_res$candidates===void 0?void 0:(_res$candidates$=_res$candidates[0])===null||_res$candidates$===void 0?void 0:_res$candidates$.content;if(history&&userMsg&&modelMsg){history.add(userMsg,modelMsg);}return parseAIRes((_modelMsg$parts$0$tex=(_modelMsg2=modelMsg)===null||_modelMsg2===void 0?void 0:(_modelMsg2$parts=_modelMsg2.parts)===null||_modelMsg2$parts===void 0?void 0:(_modelMsg2$parts$=_modelMsg2$parts[0])===null||_modelMsg2$parts$===void 0?void 0:_modelMsg2$parts$.text)!==null&&_modelMsg$parts$0$tex!==void 0?_modelMsg$parts$0$tex:"",useBatchFetch);case api_OPT_TRANS_CLAUDE:modelMsg={role:res===null||res===void 0?void 0:res.role,content:res===null||res===void 0?void 0:(_res$content=res.content)===null||_res$content===void 0?void 0:_res$content.text};if(history&&userMsg&&modelMsg){history.add(userMsg,{role:modelMsg.role,content:modelMsg.content});}return parseAIRes((_res$content$0$text=res===null||res===void 0?void 0:(_res$content2=res.content)===null||_res$content2===void 0?void 0:(_res$content2$=_res$content2[0])===null||_res$content2$===void 0?void 0:_res$content2$.text)!==null&&_res$content$0$text!==void 0?_res$content$0$text:"",useBatchFetch);case OPT_TRANS_CLOUDFLAREAI:return[[res===null||res===void 0?void 0:(_res$result3=res.result)===null||_res$result3===void 0?void 0:_res$result3.translated_text]];case api_OPT_TRANS_OLLAMA:modelMsg=res===null||res===void 0?void 0:(_res$choices2=res.choices)===null||_res$choices2===void 0?void 0:(_res$choices2$=_res$choices2[0])===null||_res$choices2$===void 0?void 0:_res$choices2$.message;// const deepModels = thinkIgnore // .split(",") // .filter((model) => model?.trim()); // if (deepModels.some((model) => res?.model?.startsWith(model))) { // modelMsg?.content.replace(/[\s\S]*<\/think>/i, ""); // } -if(history&&userMsg&&modelMsg){history.add(userMsg,{role:modelMsg.role,content:modelMsg.content});}return parseAIRes((_modelMsg3=modelMsg)===null||_modelMsg3===void 0?void 0:_modelMsg3.content,useBatchFetch);case api_OPT_TRANS_CUSTOMIZE:return(_ref23=(_res$translations2=res===null||res===void 0?void 0:res.translations)!==null&&_res$translations2!==void 0?_res$translations2:res)===null||_ref23===void 0?void 0:_ref23.map(item=>[item.text,item.src]);default:}throw new Error("parse translate result: apiType not matched",apiType);};/** +if(history&&userMsg&&modelMsg){history.add(userMsg,{role:modelMsg.role,content:modelMsg.content});}return parseAIRes((_modelMsg3=modelMsg)===null||_modelMsg3===void 0?void 0:_modelMsg3.content,useBatchFetch);case api_OPT_TRANS_CUSTOMIZE:if(useBatchFetch){var _ref23,_res$translations2;return(_ref23=(_res$translations2=res===null||res===void 0?void 0:res.translations)!==null&&_res$translations2!==void 0?_res$translations2:res)===null||_ref23===void 0?void 0:_ref23.map(item=>[item.text,item.src]);}return[[res.text,res.src||res.from]];default:}throw new Error("parse translate result: apiType not matched",apiType);};/** * 发送翻译请求并解析 * @param {*} param0 * @returns @@ -56927,7 +56933,7 @@ keyfrom:"webdict"});const init={headers:{accept:"application/json, text/plain, * * @param {*} param0 * @returns */const apiTranslate=async _ref2=>{let{text,fromLang="auto",toLang,apiSetting=DEFAULT_API_SETTING,docInfo={},glossary,useCache=true,usePool=true}=_ref2;if(!text){throw new Error("The text cannot be empty.");}const{apiType,apiSlug,useBatchFetch}=apiSetting;const langMap=OPT_LANGS_TO_SPEC[apiType]||OPT_LANGS_SPEC_DEFAULT;const from=langMap.get(fromLang);const to=langMap.get(toLang);if(!to){throw new Error("The target lang: ".concat(toLang," not support"));}// todo: 优化缓存失效因素 -const[v1,v2]="2.0.8".split(".");const cacheOpts={apiSlug,text,fromLang,toLang,version:[v1,v2].join(".")};const cacheInput="".concat(URL_CACHE_TRAN,"?").concat(query_string.stringify(cacheOpts));// 查询缓存数据 +const[v1,v2]="2.0.9".split(".");const cacheOpts={apiSlug,text,fromLang,toLang,version:[v1,v2].join(".")};const cacheInput="".concat(URL_CACHE_TRAN,"?").concat(query_string.stringify(cacheOpts));// 查询缓存数据 if(useCache){const cache=await cache_getHttpCachePolyfill(cacheInput);if(cache!==null&&cache!==void 0&&cache.trText){return cache;}}// 请求接口数据 let tranlation=[];if(apiType===OPT_TRANS_BUILTINAI){tranlation=await apiBuiltinAITranslate({text,from,to,apiSetting});}else if(useBatchFetch&&API_SPE_TYPES.batch.has(apiType)){const{apiSlug,batchInterval,batchSize,batchLength}=apiSetting;const key="".concat(apiSlug,"_").concat(fromLang,"_").concat(toLang);const queue=getBatchQueue(key,handleTranslate,{batchInterval,batchSize,batchLength});tranlation=await queue.addTask(text,{from,to,fromLang,toLang,langMap,docInfo,glossary,apiSetting,usePool});}else{[tranlation]=await handleTranslate([text],{from,to,fromLang,toLang,langMap,docInfo,glossary,apiSetting,usePool});}let trText="";let srLang="";let srCode="";if(Array.isArray(tranlation)){[trText,srLang=""]=tranlation;if(srLang){srCode=OPT_LANGS_TO_CODE[apiType].get(srLang)||"";}}else if(typeof tranlation==="string"){trText=tranlation;}if(!trText){throw new Error("tanslate api got empty trtext");}const isSame=fromLang==="auto"&&srLang===to;// 插入缓存 if(useCache){cache_putHttpCachePolyfill(cacheInput,null,{trText,isSame,srLang,srCode});}return{trText,srLang,srCode,isSame};};// 字幕处理/翻译 @@ -59744,7 +59750,7 @@ var n = {}; return t.length === e && "." !== t && ".." !== t; }; }, - te = "object" === ("undefined" == typeof process ? "undefined" : Nt(process)) && process ? "object" === Nt(({"NODE_ENV":"production","PUBLIC_URL":"","WDS_SOCKET_HOST":undefined,"WDS_SOCKET_PATH":undefined,"WDS_SOCKET_PORT":undefined,"FAST_REFRESH":true,"REACT_APP_CLIENT":"userscript","REACT_APP_NAME":"KISS Translator","REACT_APP_NAME_CN":"简约翻译","REACT_APP_VERSION":"2.0.8","REACT_APP_HOMEPAGE":"https://github.com/fishjar/kiss-translator","REACT_APP_OPTIONSPAGE":"https://fishjar.github.io/kiss-translator/options.html","REACT_APP_OPTIONSPAGE_DEV":"http://localhost:3000/options.html","REACT_APP_LOGOURL":"https://fishjar.github.io/kiss-translator/images/logo192.png","REACT_APP_RULESURL":"https://fishjar.github.io/kiss-rules/kiss-rules_v2.json","REACT_APP_RULESURL_ON":"https://fishjar.github.io/kiss-rules/kiss-rules-on_v2.json","REACT_APP_RULESURL_OFF":"https://fishjar.github.io/kiss-rules/kiss-rules-off_v2.json","REACT_APP_USERSCRIPT_DOWNLOADURL":"https://fishjar.github.io/kiss-translator/kiss-translator.user.js","REACT_APP_USERSCRIPT_IOS_DOWNLOADURL":"https://fishjar.github.io/kiss-translator/kiss-translator-ios-safari.user.js"})) && ({"NODE_ENV":"production","PUBLIC_URL":"","WDS_SOCKET_HOST":undefined,"WDS_SOCKET_PATH":undefined,"WDS_SOCKET_PORT":undefined,"FAST_REFRESH":true,"REACT_APP_CLIENT":"userscript","REACT_APP_NAME":"KISS Translator","REACT_APP_NAME_CN":"简约翻译","REACT_APP_VERSION":"2.0.8","REACT_APP_HOMEPAGE":"https://github.com/fishjar/kiss-translator","REACT_APP_OPTIONSPAGE":"https://fishjar.github.io/kiss-translator/options.html","REACT_APP_OPTIONSPAGE_DEV":"http://localhost:3000/options.html","REACT_APP_LOGOURL":"https://fishjar.github.io/kiss-translator/images/logo192.png","REACT_APP_RULESURL":"https://fishjar.github.io/kiss-rules/kiss-rules_v2.json","REACT_APP_RULESURL_ON":"https://fishjar.github.io/kiss-rules/kiss-rules-on_v2.json","REACT_APP_RULESURL_OFF":"https://fishjar.github.io/kiss-rules/kiss-rules-off_v2.json","REACT_APP_USERSCRIPT_DOWNLOADURL":"https://fishjar.github.io/kiss-translator/kiss-translator.user.js","REACT_APP_USERSCRIPT_IOS_DOWNLOADURL":"https://fishjar.github.io/kiss-translator/kiss-translator-ios-safari.user.js"}) && ({"NODE_ENV":"production","PUBLIC_URL":"","WDS_SOCKET_HOST":undefined,"WDS_SOCKET_PATH":undefined,"WDS_SOCKET_PORT":undefined,"FAST_REFRESH":true,"REACT_APP_CLIENT":"userscript","REACT_APP_NAME":"KISS Translator","REACT_APP_NAME_CN":"简约翻译","REACT_APP_VERSION":"2.0.8","REACT_APP_HOMEPAGE":"https://github.com/fishjar/kiss-translator","REACT_APP_OPTIONSPAGE":"https://fishjar.github.io/kiss-translator/options.html","REACT_APP_OPTIONSPAGE_DEV":"http://localhost:3000/options.html","REACT_APP_LOGOURL":"https://fishjar.github.io/kiss-translator/images/logo192.png","REACT_APP_RULESURL":"https://fishjar.github.io/kiss-rules/kiss-rules_v2.json","REACT_APP_RULESURL_ON":"https://fishjar.github.io/kiss-rules/kiss-rules-on_v2.json","REACT_APP_RULESURL_OFF":"https://fishjar.github.io/kiss-rules/kiss-rules-off_v2.json","REACT_APP_USERSCRIPT_DOWNLOADURL":"https://fishjar.github.io/kiss-translator/kiss-translator.user.js","REACT_APP_USERSCRIPT_IOS_DOWNLOADURL":"https://fishjar.github.io/kiss-translator/kiss-translator-ios-safari.user.js"}).__MINIMATCH_TESTING_PLATFORM__ || process.platform : "posix"; + te = "object" === ("undefined" == typeof process ? "undefined" : Nt(process)) && process ? "object" === Nt(({"NODE_ENV":"production","PUBLIC_URL":"","WDS_SOCKET_HOST":undefined,"WDS_SOCKET_PATH":undefined,"WDS_SOCKET_PORT":undefined,"FAST_REFRESH":true,"REACT_APP_CLIENT":"userscript","REACT_APP_NAME":"KISS Translator","REACT_APP_NAME_CN":"简约翻译","REACT_APP_VERSION":"2.0.9","REACT_APP_HOMEPAGE":"https://github.com/fishjar/kiss-translator","REACT_APP_OPTIONSPAGE":"https://fishjar.github.io/kiss-translator/options.html","REACT_APP_OPTIONSPAGE_DEV":"http://localhost:3000/options.html","REACT_APP_LOGOURL":"https://fishjar.github.io/kiss-translator/images/logo192.png","REACT_APP_RULESURL":"https://fishjar.github.io/kiss-rules/kiss-rules_v2.json","REACT_APP_RULESURL_ON":"https://fishjar.github.io/kiss-rules/kiss-rules-on_v2.json","REACT_APP_RULESURL_OFF":"https://fishjar.github.io/kiss-rules/kiss-rules-off_v2.json","REACT_APP_USERSCRIPT_DOWNLOADURL":"https://fishjar.github.io/kiss-translator/kiss-translator.user.js","REACT_APP_USERSCRIPT_IOS_DOWNLOADURL":"https://fishjar.github.io/kiss-translator/kiss-translator-ios-safari.user.js"})) && ({"NODE_ENV":"production","PUBLIC_URL":"","WDS_SOCKET_HOST":undefined,"WDS_SOCKET_PATH":undefined,"WDS_SOCKET_PORT":undefined,"FAST_REFRESH":true,"REACT_APP_CLIENT":"userscript","REACT_APP_NAME":"KISS Translator","REACT_APP_NAME_CN":"简约翻译","REACT_APP_VERSION":"2.0.9","REACT_APP_HOMEPAGE":"https://github.com/fishjar/kiss-translator","REACT_APP_OPTIONSPAGE":"https://fishjar.github.io/kiss-translator/options.html","REACT_APP_OPTIONSPAGE_DEV":"http://localhost:3000/options.html","REACT_APP_LOGOURL":"https://fishjar.github.io/kiss-translator/images/logo192.png","REACT_APP_RULESURL":"https://fishjar.github.io/kiss-rules/kiss-rules_v2.json","REACT_APP_RULESURL_ON":"https://fishjar.github.io/kiss-rules/kiss-rules-on_v2.json","REACT_APP_RULESURL_OFF":"https://fishjar.github.io/kiss-rules/kiss-rules-off_v2.json","REACT_APP_USERSCRIPT_DOWNLOADURL":"https://fishjar.github.io/kiss-translator/kiss-translator.user.js","REACT_APP_USERSCRIPT_IOS_DOWNLOADURL":"https://fishjar.github.io/kiss-translator/kiss-translator-ios-safari.user.js"}) && ({"NODE_ENV":"production","PUBLIC_URL":"","WDS_SOCKET_HOST":undefined,"WDS_SOCKET_PATH":undefined,"WDS_SOCKET_PORT":undefined,"FAST_REFRESH":true,"REACT_APP_CLIENT":"userscript","REACT_APP_NAME":"KISS Translator","REACT_APP_NAME_CN":"简约翻译","REACT_APP_VERSION":"2.0.9","REACT_APP_HOMEPAGE":"https://github.com/fishjar/kiss-translator","REACT_APP_OPTIONSPAGE":"https://fishjar.github.io/kiss-translator/options.html","REACT_APP_OPTIONSPAGE_DEV":"http://localhost:3000/options.html","REACT_APP_LOGOURL":"https://fishjar.github.io/kiss-translator/images/logo192.png","REACT_APP_RULESURL":"https://fishjar.github.io/kiss-rules/kiss-rules_v2.json","REACT_APP_RULESURL_ON":"https://fishjar.github.io/kiss-rules/kiss-rules-on_v2.json","REACT_APP_RULESURL_OFF":"https://fishjar.github.io/kiss-rules/kiss-rules-off_v2.json","REACT_APP_USERSCRIPT_DOWNLOADURL":"https://fishjar.github.io/kiss-translator/kiss-translator.user.js","REACT_APP_USERSCRIPT_IOS_DOWNLOADURL":"https://fishjar.github.io/kiss-translator/kiss-translator-ios-safari.user.js"}).__MINIMATCH_TESTING_PLATFORM__ || process.platform : "posix"; It.sep = "win32" === te ? "\\" : "/"; var ee = Symbol("globstar **"); It.GLOBSTAR = ee; @@ -62129,7 +62135,7 @@ Divider.muiSkipListHighlight = true; false ? 0 : void 0; /* harmony default export */ const Divider_Divider = (Divider); ;// CONCATENATED MODULE: ./src/hooks/Loading.js -function Loading(){return/*#__PURE__*/(0,jsx_runtime.jsxs)("center",{children:[/*#__PURE__*/(0,jsx_runtime.jsx)(Divider_Divider,{children:/*#__PURE__*/(0,jsx_runtime.jsx)(material_Link_Link,{href:"https://github.com/fishjar/kiss-translator",children:"KISS Translator v".concat("2.0.8")})}),/*#__PURE__*/(0,jsx_runtime.jsx)(CircularProgress_CircularProgress,{})]});} +function Loading(){return/*#__PURE__*/(0,jsx_runtime.jsxs)("center",{children:[/*#__PURE__*/(0,jsx_runtime.jsx)(Divider_Divider,{children:/*#__PURE__*/(0,jsx_runtime.jsx)(material_Link_Link,{href:"https://github.com/fishjar/kiss-translator",children:"KISS Translator v".concat("2.0.9")})}),/*#__PURE__*/(0,jsx_runtime.jsx)(CircularProgress_CircularProgress,{})]});} ;// CONCATENATED MODULE: ./src/hooks/Setting.js const SettingContext=/*#__PURE__*/(0,react.createContext)({setting:setting_DEFAULT_SETTING,updateSetting:()=>{},reloadSetting:()=>{}});function SettingProvider(_ref){let{children}=_ref;const{data:setting,isLoading,update,reload}=useStorage(storage_STOKEY_SETTING,setting_DEFAULT_SETTING,KV_SETTING_KEY);(0,react.useEffect)(()=>{if(typeof(setting===null||setting===void 0?void 0:setting.darkMode)==="boolean"){update(currentSetting=>_objectSpread2(_objectSpread2({},currentSetting),{},{darkMode:currentSetting.darkMode?"dark":"light"}));}},[setting===null||setting===void 0?void 0:setting.darkMode,update]);(0,react.useEffect)(()=>{(async()=>{try{logger.setLevel(setting===null||setting===void 0?void 0:setting.logLevel);if(client_isExt){await msg_sendBgMsg(MSG_SET_LOGLEVEL,setting===null||setting===void 0?void 0:setting.logLevel);}}catch(error){logger.error("Failed to fetch log level, using default.",error);}})();},[setting]);const updateSetting=(0,react.useCallback)(objOrFn=>{update(objOrFn);debounceSyncMeta(KV_SETTING_KEY);},[update]);const updateChild=(0,react.useCallback)(key=>async obj=>{updateSetting(prev=>_objectSpread2(_objectSpread2({},prev),{},{[key]:_objectSpread2(_objectSpread2({},(prev===null||prev===void 0?void 0:prev[key])||{}),obj)}));},[updateSetting]);const value=(0,react.useMemo)(()=>({setting,updateSetting,updateChild,reloadSetting:reload}),[setting,updateSetting,updateChild,reload]);if(isLoading){return/*#__PURE__*/(0,jsx_runtime.jsx)(Loading,{});}if(!setting){/*#__PURE__*/(0,jsx_runtime.jsx)("center",{children:/*#__PURE__*/(0,jsx_runtime.jsxs)(Alert_Alert,{severity:"error",sx:{maxWidth:600,margin:"60px auto"},children:[/*#__PURE__*/(0,jsx_runtime.jsx)("p",{children:"\u6570\u636E\u52A0\u8F7D\u51FA\u9519\uFF0C\u8BF7\u5237\u65B0\u9875\u9762\u6216\u5378\u8F7D\u540E\u91CD\u65B0\u5B89\u88C5\u3002"}),/*#__PURE__*/(0,jsx_runtime.jsx)("p",{children:"Data loading error, please refresh the page or uninstall and reinstall."})]})});}return/*#__PURE__*/(0,jsx_runtime.jsx)(SettingContext.Provider,{value:value,children:children});}/** * 设置 hook @@ -69766,7 +69772,7 @@ textStyle:type(textStyle)==="string"&&textStyle.trim()!==""?textStyle.trim():rul splitParagraph:matchValue([rules_GLOBAL_KEY,...OPT_SPLIT_PARAGRAPH_ALL],splitParagraph),splitLength:Number.isInteger(splitLength)?splitLength:0,highlightWords:matchValue([rules_GLOBAL_KEY,...OPT_HIGHLIGHT_WORDS_ALL],highlightWords)};});return rules;};/** * 保存或更新rule * @param {*} curRule - */const saveRule=async curRule=>{const rules=await getRulesWithDefault();const index=rules.findIndex(item=>item.pattern!==GLOBAL_KEY&&isMatch(curRule.pattern,item.pattern));if(index!==-1){const rule=rules.splice(index,1)[0];curRule=_objectSpread(_objectSpread(_objectSpread({},rule),curRule),{},{pattern:rule.pattern});}const newRule={};Object.entries(GLOBLA_RULE).forEach(_ref4=>{let[key,val]=_ref4;newRule[key]=!curRule[key]||curRule[key]===val?DEFAULT_RULE[key]:curRule[key];});rules.unshift(newRule);await setRules(rules);trySyncRules();}; + */const saveRule=async curRule=>{const rules=await getRulesWithDefault();const index=rules.findIndex(item=>item.pattern!==GLOBAL_KEY&&isMatch(curRule.pattern,item.pattern));if(index!==-1){const rule=rules.splice(index,1)[0];curRule=_objectSpread(_objectSpread(_objectSpread({},rule),curRule),{},{pattern:rule.pattern});}const newRule={};const globalRule=_objectSpread(_objectSpread({},GLOBLA_RULE),rules.find(r=>r.pattern===GLOBAL_KEY)||{});Object.keys(GLOBLA_RULE).forEach(key=>{newRule[key]=!curRule[key]||curRule[key]===globalRule[key]?DEFAULT_RULE[key]:curRule[key];});rules.unshift(newRule);await setRules(rules);trySyncRules();}; ;// CONCATENATED MODULE: ./src/hooks/Rules.js /** * 规则 hook @@ -76576,7 +76582,7 @@ var BrightnessAuto = __webpack_require__(5538); ;// CONCATENATED MODULE: ./src/views/Options/DarkModeButton.js function DarkModeButton(){const{darkMode,toggleDarkMode}=useDarkMode();return/*#__PURE__*/(0,jsx_runtime.jsx)(IconButton_IconButton,{sx:{ml:1},onClick:toggleDarkMode,color:"inherit",children:darkMode==="dark"?/*#__PURE__*/(0,jsx_runtime.jsx)(DarkMode/* default */.Z,{}):darkMode==="light"?/*#__PURE__*/(0,jsx_runtime.jsx)(LightMode/* default */.Z,{}):/*#__PURE__*/(0,jsx_runtime.jsx)(BrightnessAuto/* default */.Z,{})});} ;// CONCATENATED MODULE: ./src/views/Options/Header.js -function Header(props){const i18n=useI18n();const{onDrawerToggle}=props;return/*#__PURE__*/(0,jsx_runtime.jsx)(AppBar_AppBar,{color:"primary",position:"sticky",sx:{zIndex:1300},children:/*#__PURE__*/(0,jsx_runtime.jsxs)(Toolbar_Toolbar,{variant:"dense",children:[/*#__PURE__*/(0,jsx_runtime.jsx)(Box_Box,{sx:{display:{sm:"none",xs:"block"}},children:/*#__PURE__*/(0,jsx_runtime.jsx)(IconButton_IconButton,{color:"inherit","aria-label":"open drawer",onClick:onDrawerToggle,edge:"start",children:/*#__PURE__*/(0,jsx_runtime.jsx)(icons_material_Menu/* default */.Z,{})})}),/*#__PURE__*/(0,jsx_runtime.jsx)(Typography_Typography,{component:"div",sx:{flexGrow:1,fontWeight:"bold"},children:/*#__PURE__*/(0,jsx_runtime.jsx)(material_Link_Link,{underline:"none",color:"inherit",href:"https://github.com/fishjar/kiss-translator",target:"_blank",children:"".concat(i18n("app_name")," v").concat("2.0.8")})}),/*#__PURE__*/(0,jsx_runtime.jsx)(DarkModeButton,{})]})});}/* harmony default export */ const Options_Header = (Header); +function Header(props){const i18n=useI18n();const{onDrawerToggle}=props;return/*#__PURE__*/(0,jsx_runtime.jsx)(AppBar_AppBar,{color:"primary",position:"sticky",sx:{zIndex:1300},children:/*#__PURE__*/(0,jsx_runtime.jsxs)(Toolbar_Toolbar,{variant:"dense",children:[/*#__PURE__*/(0,jsx_runtime.jsx)(Box_Box,{sx:{display:{sm:"none",xs:"block"}},children:/*#__PURE__*/(0,jsx_runtime.jsx)(IconButton_IconButton,{color:"inherit","aria-label":"open drawer",onClick:onDrawerToggle,edge:"start",children:/*#__PURE__*/(0,jsx_runtime.jsx)(icons_material_Menu/* default */.Z,{})})}),/*#__PURE__*/(0,jsx_runtime.jsx)(Typography_Typography,{component:"div",sx:{flexGrow:1,fontWeight:"bold"},children:/*#__PURE__*/(0,jsx_runtime.jsx)(material_Link_Link,{underline:"none",color:"inherit",href:"https://github.com/fishjar/kiss-translator",target:"_blank",children:"".concat(i18n("app_name")," v").concat("2.0.9")})}),/*#__PURE__*/(0,jsx_runtime.jsx)(DarkModeButton,{})]})});}/* harmony default export */ const Options_Header = (Header); ;// CONCATENATED MODULE: ./src/views/Options/Layout.js function Layout(){const navWidth=256;const location=dist_useLocation();const theme=useTheme_useTheme();const[open,setOpen]=(0,react.useState)(false);const isSm=useMediaQuery(theme.breakpoints.up("sm"));const handleDrawerToggle=()=>{setOpen(!open);};(0,react.useEffect)(()=>{setOpen(false);},[location]);return/*#__PURE__*/(0,jsx_runtime.jsxs)(Box_Box,{children:[/*#__PURE__*/(0,jsx_runtime.jsx)(CssBaseline_CssBaseline,{}),/*#__PURE__*/(0,jsx_runtime.jsx)(Options_Header,{onDrawerToggle:handleDrawerToggle}),/*#__PURE__*/(0,jsx_runtime.jsxs)(Box_Box,{sx:{display:"flex"},children:[/*#__PURE__*/(0,jsx_runtime.jsx)(Box_Box,{component:"nav",sx:{width:{sm:navWidth},flexShrink:{sm:0}},children:/*#__PURE__*/(0,jsx_runtime.jsx)(Navigator,{PaperProps:{style:{width:navWidth}},variant:isSm?"permanent":"temporary",open:isSm?true:open,onClose:handleDrawerToggle})}),/*#__PURE__*/(0,jsx_runtime.jsx)(Box_Box,{component:"main",sx:{flex:1,p:2,width:"100%"},children:/*#__PURE__*/(0,jsx_runtime.jsx)(Outlet,{})})]})]});} // EXTERNAL MODULE: ./node_modules/.pnpm/@mui+icons-material@5.15.15_@mui+material@5.15.15_@emotion+react@11.11.1_@types+react@1_1e29dcefa4691dc57f2acd9f73947cfd/node_modules/@mui/icons-material/ContentCopy.js @@ -76753,7 +76759,7 @@ mediaQuery.addEventListener("change",handleChange);return()=>mediaQuery.removeEv const MSG_GM_xmlHttpRequest="xmlHttpRequest";const MSG_GM_setValue="setValue";const MSG_GM_getValue="getValue";const MSG_GM_deleteValue="deleteValue";const MSG_GM_info="info";/** * 注入页面的脚本,请求并接受GM接口信息 * @param {*} param0 - */const injectScript=ping=>{window.APP_INFO={name:"KISS Translator",version:"2.0.8",eventName:ping};};/** + */const injectScript=ping=>{window.APP_INFO={name:"KISS Translator",version:"2.0.9",eventName:ping};};/** * 适配GM脚本 */const adaptScript=ping=>{const promiseGM=function(action,args){let timeout=arguments.length>2&&arguments[2]!==undefined?arguments[2]:5000;return new Promise((resolve,reject)=>{const pong=genEventName();const handleEvent=e=>{window.removeEventListener(pong,handleEvent);const{data,error}=e.detail;if(error){reject(new Error(error));}else{resolve(data);}};window.addEventListener(pong,handleEvent);window.dispatchEvent(new CustomEvent(ping,{detail:{action,args,pong}}));setTimeout(()=>{window.removeEventListener(pong,handleEvent);reject(new Error("timeout"));},timeout);});};window.KISS_GM={fetch:(input,init)=>promiseGM(MSG_GM_xmlHttpRequest,{input,init}),setValue:(key,val)=>promiseGM(MSG_GM_setValue,{key,val}),getValue:key=>promiseGM(MSG_GM_getValue,{key}),deleteValue:key=>promiseGM(MSG_GM_deleteValue,{key}),getInfo:async()=>{if(!window.GM_info){window.GM_info=await promiseGM(MSG_GM_info);}return window.GM_info;}};};/** * 监听并回应页面对GM接口的请求 @@ -81322,9 +81328,9 @@ var StylesSetting_templateObject;function StyleFields(_ref){let{customStyle,dele ;// CONCATENATED MODULE: ./src/views/Options/index.js function Options(){const[error,setError]=(0,react.useState)("");const[ready,setReady]=(0,react.useState)(false);(0,react.useEffect)(()=>{(async()=>{if(isGm){// 等待GM注入 let i=0;for(;;){var _window,_window$APP_INFO;if(((_window=window)===null||_window===void 0?void 0:(_window$APP_INFO=_window.APP_INFO)===null||_window$APP_INFO===void 0?void 0:_window$APP_INFO.name)==="KISS Translator"){const{version,eventName}=window.APP_INFO;// 检查版本是否一致 -if(version!=="2.0.8"){setError("The version of the local script(v".concat(version,") is not the latest version(v").concat("2.0.8","). \u672C\u5730\u811A\u672C\u4E4B\u7248\u672C(v").concat(version,")\u975E\u6700\u65B0\u7248(v").concat("2.0.8",")\u3002"));return;}if(eventName){// 注入GM接口 +if(version!=="2.0.9"){setError("The version of the local script(v".concat(version,") is not the latest version(v").concat("2.0.9","). \u672C\u5730\u811A\u672C\u4E4B\u7248\u672C(v").concat(version,")\u975E\u6700\u65B0\u7248(v").concat("2.0.9",")\u3002"));return;}if(eventName){// 注入GM接口 adaptScript(eventName);}break;}if(++i>8){setError("Time out. Please confirm whether to install or enable KISS Translator GreaseMonkey script? 连接超时,请检查是否安装或启用简约翻译油猴脚本。");return;}await sleep(1000);}}// 同步数据 -await trySyncSettingAndRules();setReady(true);})();},[]);if(error){return/*#__PURE__*/(0,jsx_runtime.jsxs)("center",{children:[/*#__PURE__*/(0,jsx_runtime.jsx)(Divider_Divider,{children:/*#__PURE__*/(0,jsx_runtime.jsx)(material_Link_Link,{href:"https://github.com/fishjar/kiss-translator",children:"KISS Translator v".concat("2.0.8")})}),/*#__PURE__*/(0,jsx_runtime.jsx)(Alert_Alert,{severity:"error",children:error}),/*#__PURE__*/(0,jsx_runtime.jsxs)(Stack_Stack,{spacing:2,children:[/*#__PURE__*/(0,jsx_runtime.jsx)(material_Link_Link,{href:"https://fishjar.github.io/kiss-translator/kiss-translator.user.js",children:"Install/Update Userscript for Tampermonkey/Violentmonkey"}),/*#__PURE__*/(0,jsx_runtime.jsx)(material_Link_Link,{href:"https://fishjar.github.io/kiss-translator/kiss-translator-ios-safari.user.js",children:"Install/Update Userscript for iOS Safari"})]})]});}if(!ready){return/*#__PURE__*/(0,jsx_runtime.jsx)(Loading,{});}return/*#__PURE__*/(0,jsx_runtime.jsx)(SettingProvider,{children:/*#__PURE__*/(0,jsx_runtime.jsx)(Theme,{children:/*#__PURE__*/(0,jsx_runtime.jsx)(AlertProvider,{children:/*#__PURE__*/(0,jsx_runtime.jsx)(ConfirmProvider,{children:/*#__PURE__*/(0,jsx_runtime.jsx)(HashRouter,{children:/*#__PURE__*/(0,jsx_runtime.jsx)(Routes,{children:/*#__PURE__*/(0,jsx_runtime.jsxs)(Route,{path:"/",element:/*#__PURE__*/(0,jsx_runtime.jsx)(Layout,{}),children:[/*#__PURE__*/(0,jsx_runtime.jsx)(Route,{index:true,element:/*#__PURE__*/(0,jsx_runtime.jsx)(Settings,{})}),/*#__PURE__*/(0,jsx_runtime.jsx)(Route,{path:"rules",element:/*#__PURE__*/(0,jsx_runtime.jsx)(Rules,{})}),/*#__PURE__*/(0,jsx_runtime.jsx)(Route,{path:"styles",element:/*#__PURE__*/(0,jsx_runtime.jsx)(StylesSetting,{})}),/*#__PURE__*/(0,jsx_runtime.jsx)(Route,{path:"input",element:/*#__PURE__*/(0,jsx_runtime.jsx)(InputSetting,{})}),/*#__PURE__*/(0,jsx_runtime.jsx)(Route,{path:"tranbox",element:/*#__PURE__*/(0,jsx_runtime.jsx)(Tranbox,{})}),/*#__PURE__*/(0,jsx_runtime.jsx)(Route,{path:"mousehover",element:/*#__PURE__*/(0,jsx_runtime.jsx)(MouseHoverSetting,{})}),/*#__PURE__*/(0,jsx_runtime.jsx)(Route,{path:"subtitle",element:/*#__PURE__*/(0,jsx_runtime.jsx)(SubtitleSetting,{})}),/*#__PURE__*/(0,jsx_runtime.jsx)(Route,{path:"apis",element:/*#__PURE__*/(0,jsx_runtime.jsx)(Apis,{})}),/*#__PURE__*/(0,jsx_runtime.jsx)(Route,{path:"sync",element:/*#__PURE__*/(0,jsx_runtime.jsx)(SyncSetting,{})}),/*#__PURE__*/(0,jsx_runtime.jsx)(Route,{path:"words",element:/*#__PURE__*/(0,jsx_runtime.jsx)(FavWords,{})}),/*#__PURE__*/(0,jsx_runtime.jsx)(Route,{path:"playground",element:/*#__PURE__*/(0,jsx_runtime.jsx)(Playgound,{})}),/*#__PURE__*/(0,jsx_runtime.jsx)(Route,{path:"about",element:/*#__PURE__*/(0,jsx_runtime.jsx)(About,{})})]})})})})})})});} +await trySyncSettingAndRules();setReady(true);})();},[]);if(error){return/*#__PURE__*/(0,jsx_runtime.jsxs)("center",{children:[/*#__PURE__*/(0,jsx_runtime.jsx)(Divider_Divider,{children:/*#__PURE__*/(0,jsx_runtime.jsx)(material_Link_Link,{href:"https://github.com/fishjar/kiss-translator",children:"KISS Translator v".concat("2.0.9")})}),/*#__PURE__*/(0,jsx_runtime.jsx)(Alert_Alert,{severity:"error",children:error}),/*#__PURE__*/(0,jsx_runtime.jsxs)(Stack_Stack,{spacing:2,children:[/*#__PURE__*/(0,jsx_runtime.jsx)(material_Link_Link,{href:"https://fishjar.github.io/kiss-translator/kiss-translator.user.js",children:"Install/Update Userscript for Tampermonkey/Violentmonkey"}),/*#__PURE__*/(0,jsx_runtime.jsx)(material_Link_Link,{href:"https://fishjar.github.io/kiss-translator/kiss-translator-ios-safari.user.js",children:"Install/Update Userscript for iOS Safari"})]})]});}if(!ready){return/*#__PURE__*/(0,jsx_runtime.jsx)(Loading,{});}return/*#__PURE__*/(0,jsx_runtime.jsx)(SettingProvider,{children:/*#__PURE__*/(0,jsx_runtime.jsx)(Theme,{children:/*#__PURE__*/(0,jsx_runtime.jsx)(AlertProvider,{children:/*#__PURE__*/(0,jsx_runtime.jsx)(ConfirmProvider,{children:/*#__PURE__*/(0,jsx_runtime.jsx)(HashRouter,{children:/*#__PURE__*/(0,jsx_runtime.jsx)(Routes,{children:/*#__PURE__*/(0,jsx_runtime.jsxs)(Route,{path:"/",element:/*#__PURE__*/(0,jsx_runtime.jsx)(Layout,{}),children:[/*#__PURE__*/(0,jsx_runtime.jsx)(Route,{index:true,element:/*#__PURE__*/(0,jsx_runtime.jsx)(Settings,{})}),/*#__PURE__*/(0,jsx_runtime.jsx)(Route,{path:"rules",element:/*#__PURE__*/(0,jsx_runtime.jsx)(Rules,{})}),/*#__PURE__*/(0,jsx_runtime.jsx)(Route,{path:"styles",element:/*#__PURE__*/(0,jsx_runtime.jsx)(StylesSetting,{})}),/*#__PURE__*/(0,jsx_runtime.jsx)(Route,{path:"input",element:/*#__PURE__*/(0,jsx_runtime.jsx)(InputSetting,{})}),/*#__PURE__*/(0,jsx_runtime.jsx)(Route,{path:"tranbox",element:/*#__PURE__*/(0,jsx_runtime.jsx)(Tranbox,{})}),/*#__PURE__*/(0,jsx_runtime.jsx)(Route,{path:"mousehover",element:/*#__PURE__*/(0,jsx_runtime.jsx)(MouseHoverSetting,{})}),/*#__PURE__*/(0,jsx_runtime.jsx)(Route,{path:"subtitle",element:/*#__PURE__*/(0,jsx_runtime.jsx)(SubtitleSetting,{})}),/*#__PURE__*/(0,jsx_runtime.jsx)(Route,{path:"apis",element:/*#__PURE__*/(0,jsx_runtime.jsx)(Apis,{})}),/*#__PURE__*/(0,jsx_runtime.jsx)(Route,{path:"sync",element:/*#__PURE__*/(0,jsx_runtime.jsx)(SyncSetting,{})}),/*#__PURE__*/(0,jsx_runtime.jsx)(Route,{path:"words",element:/*#__PURE__*/(0,jsx_runtime.jsx)(FavWords,{})}),/*#__PURE__*/(0,jsx_runtime.jsx)(Route,{path:"playground",element:/*#__PURE__*/(0,jsx_runtime.jsx)(Playgound,{})}),/*#__PURE__*/(0,jsx_runtime.jsx)(Route,{path:"about",element:/*#__PURE__*/(0,jsx_runtime.jsx)(About,{})})]})})})})})})});} ;// CONCATENATED MODULE: ./src/options.js const options_root=client.createRoot(document.getElementById("root"));options_root.render(/*#__PURE__*/(0,jsx_runtime.jsx)(react.StrictMode,{children:/*#__PURE__*/(0,jsx_runtime.jsx)(Options,{})})); })(); diff --git a/version.txt b/version.txt index e8f41f0..ed35d09 100644 --- a/version.txt +++ b/version.txt @@ -1 +1 @@ -2.0.8 \ No newline at end of file +2.0.9 \ No newline at end of file