diff --git a/index.ts b/index.ts index 367254b..5c091b4 100644 --- a/index.ts +++ b/index.ts @@ -1,7 +1,9 @@ import en from "./en.json"; import zh_cn from "./zh_cn.json"; +import zh_tw from "./zh_tw.json"; export const LANGS = { en: en, zh_cn: zh_cn, + zh_tw: zh_tw, }; diff --git a/zh_tw.json b/zh_tw.json new file mode 100644 index 0000000..b05ba7e --- /dev/null +++ b/zh_tw.json @@ -0,0 +1,219 @@ +{ + "confirm": "確認", + "disable": "關閉", + "enable": "開啟", + "goback": "返回", + "submit": "提交", + + "syncrun_alreadyrunning": "{{pluginName}} 正處於此階段:{{syncStatus}}!", + "syncrun_syncingribbon": "{{pluginName}}:正在由 {{triggerSource}} 觸發執行", + "syncrun_step0": "0/{{maxSteps}} Remotely Save 在空跑(dry run)模式,不會發生實際的檔案交換。", + "syncrun_step1": "1/{{maxSteps}} Remotely Save 準備同步({{serviceType}})", + "syncrun_step2": "2/{{maxSteps}} 正在獲取遠端的元資料。", + "syncrun_step3": "3/{{maxSteps}} 正在檢查密碼正確與否。", + "syncrun_passworderr": "檢查密碼時候出錯。", + "syncrun_step4": "4/{{maxSteps}} 正在獲取遠端的額外的元資料。", + "syncrun_step5": "5/{{maxSteps}} 正在獲取本地的元資料。", + "syncrun_step6": "6/{{maxSteps}} 正在生成同步計劃。", + "syncrun_step7": "7/{{maxSteps}} Remotely Save 開始發生資料交換!", + "syncrun_step7skip": "7/{{maxSteps}} Remotely Save 在空跑模式,跳過實際資料交換步驟。", + "syncrun_step8": "8/{{maxSteps}} Remotely Save 已完成同步!", + "syncrun_abort": "{{manifestID}}-{{theDate}}:中斷同步,同步來源={{triggerSource}},出錯階段={{syncStatus}}", + + "protocol_saveqr": " {{manifestName}} 新的非 oauth2 設定儲存完成。請重啟外掛設定頁使之生效。", + "protocol_callbacknotsupported": "您的 uri callback 暫不支援: {{params}}", + "protocol_dropbox_connecting": "正在連線 Dropbox……\n請不要關閉此彈窗。", + "protocol_dropbox_connect_succ": "好!我們作為使用者 {{username}} 連線上了 Dropbox!", + "protocol_dropbox_connect_succ_revoke": "您已作為使用者 {{username}} 連線上了。如果您想取消連線,請點選此按鈕。", + "protocol_dropbox_connect_fail": "Dropbox 的回撥請求有點異常。您是否拒絕了鑑權?", + "protocol_dropbox_connect_unknown": "不知道如何處理此 callback:{{params}}", + "protocol_onedrive_connecting": "正在連線 OneDrive……\n請不要關閉此彈窗。", + "protocol_onedrive_connect_succ_revoke": "您已作為使用者 {{username}} 連線上了。如果您想取消連線,請點選此按鈕。", + "protocol_onedrive_connect_fail": "OneDrive 的回撥請求有點異常。您是否拒絕了鑑權?", + "protocol_onedrive_connect_unknown": "不知道如何處理此 callback:{{params}}", + + "command_startsync": "開始同步(start sync)", + "command_drynrun": "開始同步(空跑模式)(start sync (dry run only))", + + "modal_password_title": "稍等一下,請閱讀下文:", + "modal_password_shortdesc": "如果密碼不是空的,那麼檔案會在上傳之前,在本地先用此密碼加密。\n如果密碼是空的,那麼檔案會被非加密地上傳。", + "modal_password_attn1": "注意 1/5:庫(Vault)名字是不會加密的!本外掛會在一些遠端儲存裡建立一個和庫名字有著同名的資料夾。", + "modal_password_attn2": "注意 2/5:密碼在本地不加密地儲存!", + "modal_password_attn3": "注意 3/5:一些元資訊是沒有被加密的,或者可以被較容易地猜測出來。(檔案大小很接近於沒加密的時候,且資料夾可能會被儲存為大小為 0 byte 的物件。)", + "modal_password_attn4": "注意 4/5:您需要確保遠端儲存是“空”的,或者已有檔案也是被同一個新密碼加密的;從而避免衝突。", + "modal_password_attn5": "注意 5/5:密碼越長越好。", + "modal_password_secondconfirm": "再次確認儲存新密碼", + "modal_password_notice": "新密碼已儲存!", + + "modal_dropboxauth_manualsteps": "第 1 步:在瀏覽器中訪問以下地址,然後按照網頁提示操作。\n到了最後,您應該會獲得一串很長的程式碼文字,請複製貼上到下方,並點選“提交”", + "modal_dropboxauth_autosteps": "在瀏覽器中訪問以下地址,然後按照網頁提示操作。\n到了最後,您應該會被自動重定向回來 Obsidian。", + "modal_dropboxauth_copybutton": "點選此按鈕從而複製鑑權 url", + "modal_dropboxauth_copynotice": "鑑權 url 已複製到剪貼簿!", + "modal_dropboxauth_maualinput": "來自網頁的授權碼", + "modal_dropboxauth_maualinput_desc": "您需要點選“確認”", + "modal_dropboxauth_maualinput_notice": "正在嘗試連線 Dropbox", + "modal_dropboxauth_maualinput_conn_succ": "很好!我們作為使用者 {{username}} 連線到 Dropbox 了!", + "modal_dropboxauth_maualinput_conn_succ_revoke": "您已作為使用者 {{username}} 連線到 Dropbox。如果您想斷開連線,點選此按鈕。", + "modal_dropboxauth_maualinput_conn_fail": "連線 Dropbox 途中出錯了。", + + "modal_onedriveauth_shortdesc": "現在只支援個人版 OneDrive,(暫)不支援企業版。\n在瀏覽器中訪問以下地址,然後按照網頁提示操作。\n到了最後,您應該會被自動重定向回來 Obsidian。", + "modal_onedriveauth_copybutton": "點選此按鈕從而複製鑑權 url", + "modal_onedriveauth_copynotice": "鑑權 url 已複製到剪貼簿!", + "modal_onedriverevokeauth_step1": "第 1 步:用瀏覽器開啟以下地址,點選本外掛對應的“Edit”按鈕,點選“Remove these permissions”按鈕。", + "modal_onedriverevokeauth_step2": "第 2 步:點選以下按鈕,清理本地儲存的登入資訊。", + "modal_onedriverevokeauth_clean": "清理本地儲存的登入資訊", + "modal_onedriverevokeauth_clean_desc": "您需要點選“清理”按鈕。", + "modal_onedriverevokeauth_clean_button": "清理", + "modal_onedriverevokeauth_clean_notice": "已清理!", + "modal_onedriverevokeauth_clean_fail": "鑑權途中出錯了。", + + "modal_syncconfig_attn": "注意 1/3:此設定只同步(複製)整個 Obsidian 的配置資料夾,但是不會同步其它 . 開頭的資料夾或檔案。除了會忽略 .git 和 node_modules 資料夾之外,它也並不理解配置資料夾的裡各個子檔案或子資料夾的含義。\n注意 2/3:配置資料夾被同步之後,各外掛的設定或許會出錯,且 Obsidian 或許需要重啟來過載各外掛的新配置。\n注意 3/3:配置資料夾內的刪除(解除安裝)操作無法被識別,因此,如果您想解除安裝一個外掛,在下一次同步之前,您需要手動在所有裝置上先手動解除安裝那個外掛。\n如果您同意自行承受以上風險,您可以點選以下再次確認按鈕。", + "modal_syncconfig_secondconfirm": "再次確認開啟", + "modal_syncconfig_notice": "您已開啟配置資料夾的同步!", + + "modal_qr_shortdesc": "這裡可匯出非 oauth2 設定。(意味著:Dropbox 和 OneDrive 資訊不會被匯出。)\n您可以使用另一個裝置來掃描此 QR 碼。\n又或者,您可以點選以下按鈕複製此特殊 URI。", + "modal_qr_button": "點選此按鈕複製特殊 URI", + "modal_qr_button_notice": "特殊 URI 已被複制到剪貼簿!", + + "settings_general": "通用", + "settings_password": "密碼", + "settings_password_desc": "端到端加密的密碼。不填寫則代表沒密碼。您需要點選“確認”來修改。", + "settings_autorun": "自動執行", + "settings_autorun_desc": "每隔一段時間,此外掛嘗試自動同步。會影響到電池用量。", + "settings_autorun_notset": "(不設定)", + "settings_autorun_1min": "每 1 分鐘", + "settings_autorun_5min": "每 5 分鐘", + "settings_autorun_10min": "每 10 分鐘", + "settings_autorun_30min": "每 30 分鐘", + "settings_runoncestartup": "啟動後自動執行一次", + "settings_runoncestartup_desc": "本設定使得外掛在程式啟動後自動觸發一次同步。修改後,會在下一次啟動生效。本設定和“自動執行”是不同的,那個設定是指“每隔一段時間”都自動同步一次。", + "settings_runoncestartup_notset": "(不設定)", + "settings_runoncestartup_10sec": "啟動後第 10 秒執行一次", + "settings_runoncestartup_30sec": "啟動後第 30 秒執行一次", + + "settings_checkonnectivity": "檢查可否連線", + "settings_checkonnectivity_desc": "檢查可否連線。", + "settings_checkonnectivity_button": "檢查", + "settings_checkonnectivity_checking": "正在檢查……", + + "settings_s3": "S3 或相容 S3 的服務的設定", + "settings_s3_disclaimer1": "宣告:本外掛不是 Amazon 的官方產品。", + "settings_s3_disclaimer2": "宣告:您所輸入的資訊儲存於本地。其它有害的或者出錯的外掛,是有可能讀取到這些資訊的。如果您發現了儲存桶有不符合預期的訪問,請立刻從 AWS(或其它 S3 服務商)刪除記錄於此的 access key。", + "settings_s3_cors": "您需要設定 CORS,從而允許這些源的請求訪問:app://obsidian.md 和 capacitor://localhost 和 http://localhost", + "settings_s3_prod": "一些可參考的 Amazon S3 官方文件:", + "settings_s3_prod1": "服務地址(Endpoint)和區域(Region)資訊", + "settings_s3_prod2": "Access Key ID 和 Secret Access Key 資訊", + "settings_s3_prod3": "設定 CORS", + "settings_s3_endpoint": "服務地址(Endpoint)", + "settings_s3_region": "區域(Region)", + "settings_s3_region_desc": "如果您不知道這個值填什麼,可以嘗試填寫此預設值:us-east-1", + "settings_s3_accesskeyid": "Access Key ID", + "settings_s3_secretaccesskey": "Secret Access Key", + "settings_s3_bucketname": "儲存桶(Bucket)的名字", + "settings_s3_bypasscorslocally": "本地繞過 CORS 問題", + "settings_s3_bypasscorslocally_desc": "對於 Obsidian 新版本(>= {{ver}}),本外掛可以跳過伺服器設定 CORS 的步驟。如果您遇到任意問題,可以關閉此設定,並在服務端設定 CORS(app://obsidian.md 和 capacitor://localhost 和 http://localhost)。", + "settings_s3_parts": "分塊並行度", + "settings_s3_parts_desc": "在 S3 裡,大檔案會被分塊上傳。您希望同一時間最多有多少個分塊被上傳?", + "settings_s3_connect_succ": "很好!可以訪問到對應儲存桶。", + "settings_s3_connect_fail": "無法訪問到對應儲存桶。", + + "settings_dropbox": "Dropbox 設定", + "settings_dropbox_disclaimer1": "宣告:此外掛不是 Dropbox 官方產品。", + "settings_dropbox_disclaimer2": "宣告:您所輸入的資訊儲存於本地。其它有害的或者出錯的外掛,是有可能讀取到這些資訊的。如果您發現了 Dropbox 有不符合預期的訪問,請立刻從 https://www.dropbox.com/account/connected_apps 刪除記錄於此外掛的連線鑑權。", + "settings_dropbox_folder": "我們會在您的 Dropbox 上建立此資料夾並在裡面同步:/Apps/{{pluginID}}/{{vaultName}}。", + "settings_dropbox_revoke": "撤回鑑權", + "settings_dropbox_revoke_desc": "您現在使用了使用者名稱 {{username}} 來連線。如果想取消連線,請點選此按鈕。", + "settings_dropbox_revoke_button": "撤回鑑權", + "settings_dropbox_revoke_notice": "鑑權已被撤回!", + "settings_dropbox_revoke_noticeerr": "撤回鑑權出錯。", + "settings_dropbox_auth": "鑑權", + "settings_dropbox_auth_desc": "鑑權。", + "settings_dropbox_auth_button": "鑑權", + "settings_dropbox_connect_succ": "很好!我們可連線上 Dropbox!", + "settings_dropbox_connect_fail": "我們未能連線上 Dropbox。", + + "settings_onedrive": "Onedrive(個人版)設定", + "settings_onedrive_disclaimer1": "宣告:此外掛不是微軟或 OneDrive 的官方產品。", + "settings_onedrive_disclaimer2": "宣告:您所輸入的資訊儲存於本地。其它有害的或者出錯的外掛,是有可能讀取到這些資訊的。如果您發現了 OneDrive 有不符合預期的訪問,請立刻從 https://microsoft.com/consent 刪除記錄於此外掛的連線鑑權。", + "settings_onedrive_folder": "我們會在您的 OneDrive 上建立此資料夾並在裡面同步:/Apps/{{pluginID}}/{{vaultName}}。", + "settings_onedrive_nobiz": "現在只支援個人版 OneDrive。(暫時)並不支援企業版 OneDrive。", + "settings_onedrive_revoke": "撤回鑑權", + "settings_onedrive_revoke_desc": "您現在使用了使用者名稱 {{username}} 來連線。如果想取消連線,請點選此按鈕。", + "settings_onedrive_revoke_button": "撤回鑑權", + "settings_onedrive_auth": "鑑權", + "settings_onedrive_auth_desc": "鑑權。", + "settings_onedrive_auth_button": "鑑權", + "settings_onedrive_connect_succ": "很好!我們可連線上 OneDrive!", + "settings_onedrive_connect_fail": "我們未能連線上 OneDrive。", + + "settings_webdav": "Webdav 設定", + "settings_webdav_disclaimer1": "宣告:您所輸入的資訊儲存於本地。其它有害的或者出錯的外掛,是有可能讀取到這些資訊的。如果您發現了 Webdav 伺服器有不符合預期的訪問,請立刻修改使用者名稱和密碼。", + "settings_webdav_cors": "您需要設定 CORS,允許來自這些源的請求:app://obsidian.md 和 capacitor://localhost 和 http://localhost。", + "settings_webdav_folder": "我們會在您的伺服器上建立此資料夾並在裡面同步:/{{vaultName}}", + "settings_webdav_addr": "伺服器地址", + "settings_webdav_addr_desc": "伺服器地址。", + "settings_webdav_user": "使用者名稱", + "settings_webdav_user_desc": "使用者名稱。", + "settings_webdav_password": "密碼", + "settings_webdav_password_desc": "密碼。", + "settings_webdav_auth": "鑑權型別", + "settings_webdav_auth_desc": "如果不填寫密碼,本設定會被忽略。", + "settings_webdav_depth": "傳送到伺服器的 Depth header", + "settings_webdav_depth_desc": "Webdav 伺服器會被設為接收 Depth header 為“1”或“Infinity”請求。本外掛需要得知此資訊。如果您不清楚如何設定,可以選擇“自動檢測”", + "settings_webdav_depth_auto": "自動檢測", + "settings_webdav_depth_1": "只支援 depth='1'", + "settings_webdav_depth_inf": "支援 depth='infinity'", + "settings_webdav_connect_succ": "很好!可以連線上 Webdav 伺服器。", + "settings_webdav_connect_fail": "無法連線上 Webdav 伺服器。(可能是地址/賬號/密碼/鑑權型別{{corsErrMsg}}等錯誤。", + + "settings_chooseservice": "選擇服務", + "settings_chooseservice_desc": "選擇服務。", + "settings_chooseservice_s3": "S3 或相容 S3 的服務", + "settings_chooseservice_dropbox": "Dropbox", + "settings_chooseservice_webdav": "Webdav", + "settings_chooseservice_onedrive": "OneDrive(個人版)", + + "settings_adv": "進階設定", + "settings_concurrency": "並行度", + "settings_concurrency_desc": "您希望同時最多有多少個檔案被上傳和下載?預設值是 5。如果您遇到了一些問題(如訪問頻率限制),您可以減少並行度。", + "settings_syncunderscore": "同步 _ 檔案或資料夾", + "settings_syncunderscore_desc": "是否同步“_”(下劃線)開始的檔案或資料夾。", + "settings_configdir": "同步配置資料夾(實驗性質)", + "settings_configdir_desc": "是否同步 Obsidian 的配置資料夾 {{configDir}}(其中的 .git 和 node_modules 依然會被忽略)。請注意,此設定可能會影響到您 Obsidian 或者所有的外掛設定,也可能需要您同步完畢後重啟 Obsidian。如果您同意自行承受其風險,則可以開啟本設定。", + + "settings_importexport": "匯入匯出部分設定", + "settings_export": "匯出", + "settings_export_desc": "用 QR 碼匯出非 oauth2 的設定資訊。", + "settings_export_desc_button": "生成 QR 碼", + "settings_import": "匯入", + "settings_import_desc": "您需要使用系統拍攝 app 或者掃描 QR 碼的app,來掃描對應的 QR 碼。", + + "settings_debug": "除錯", + "settings_debuglevel": "修改終端輸出的 level", + "settings_debuglevel_desc": "預設值為 \"info\"。您可以改為 \"debug\" 從而在終端裡獲取更多資訊。", + "settings_outputsettingsconsole": "讀取硬碟上的設定檔案輸出到終端", + "settings_outputsettingsconsole_desc": "硬碟上的設定檔案是編碼過的,點選這裡從而解碼並輸出到終端。", + "settings_outputsettingsconsole_button": "輸出", + "settings_outputsettingsconsole_notice": "已輸出到終端", + "settings_syncplans": "匯出同步計劃", + "settings_syncplans_desc": "每次您啟動同步,並在實際上傳下載前,外掛會生成同步計劃。它可以使您知道每次同步發生了什麼。點選按鈕可以匯出同步計劃。", + "settings_syncplans_button": "匯出", + "settings_syncplans_notice": "同步計劃已匯出", + "settings_delsyncplans": "刪除資料庫裡的同步計劃歷史", + "settings_delsyncplans_desc": "刪除資料庫裡的同步計劃歷史。", + "settings_delsyncplans_button": "刪除歷史", + "settings_delsyncplans_notice": "(資料庫裡的)同步計劃已被刪除。", + "settings_delsyncmap": "刪除資料庫裡的同步對映歷史", + "settings_delsyncmap_desc": "同步對映歷史儲存了本地真正的最後修改時間和遠端檔案時間的對映。刪除之可能會導致下一次同步時發生不必要的資料交換。點選按鈕刪除資料庫裡的同步對映歷史。", + "settings_delsyncmap_button": "刪除同步對映歷史", + "settings_delsyncmap_notice": "(本地資料庫裡的)同步對映歷史已被刪除。", + "settings_resetcache": "重設本地快取和資料庫", + "settings_resetcache_desc": "(出於除錯原因)重設本地快取和資料庫。您需要在重設之後重新載入此外掛。本重設不會刪除 s3,密碼……等設定。", + "settings_resetcache_button": "重設", + "settings_resetcache_notice": "本地同步快取和資料庫已被刪除。請手動重新載入此外掛。", + + "syncalgov2_title": "Remotely Save 的同步演算法得到最佳化", + "syncalgov2_texts": "歡迎使用 Remotely Save!\n從版本 0.3.0 開始,它帶來了新的同步演算法,但是,除了您的筆記之外,它還需要上傳額外的帶有元資訊的檔案 _remotely-save-metadata-on-remote.{json,bin} 到您的雲服務目的地上。\n從而,比如說,透過讀取這些資訊,另一臺裝置可以知道什麼檔案或資料夾在第一臺裝置上被刪除了。\n如果您同意此策略,請點選按鈕 \"同意\",然後開始享用此外掛!且特別要注意:使用外掛之前,請首先備份好您的庫(Vault)!\n如果您不同意此策略,您應該停止使用此版本和之後版本的 Remotely Save。您可以考慮手動安裝舊版 0.2.14,它使用舊的同步演算法,並不上傳額外元資訊檔案。點選 \"不同意\" 之後,外掛會自動停止執行(unload),然後您需要 Obsidian 設定裡手動停用(disable)此外掛。", + "syncalgov2_button_agree": "同意", + "syncalgov2_button_disagree": "不同意" +}