feat(i18n): add multi-language support (ja/ko/vi/ru/zh-TW) with system auto-detection
- Extend AppLanguage to 7 locales: zh-CN, zh-TW, en, ja, ko, vi, ru - Auto-detect system language via navigator.languages; fallback to English - Add BCP47 locale mapping for date formatting and sorting - Create 50 translation JSON files (5 languages × 10 namespaces, 1137 keys each) - Update language selector with native language names - Extend locale key parity test to cover all 7 languages (70 assertions) - Add VNC/RDP desktop, serial terminal, AI agent, port forwarding, and SFTP features - Add credential encryption, host metrics, session backup crypto, and zmodem bridge - Update Rust backend: desktop services, host metrics, SSH/SFTP enhancements
This commit is contained in:
1 parent
fea6d8db04
commit
b0d0e3a5f3
301 files changed
+28002
-2705
No files matched your search
@@ -0,0 +1,174 @@
|
||||
{
|
||||
"nav": {
|
||||
"general": "工作區",
|
||||
"generalDesc": "版面與資源",
|
||||
"appearance": "外觀",
|
||||
"appearanceDesc": "介面主題與語言",
|
||||
"terminal": "終端機",
|
||||
"terminalDesc": "字型與配色",
|
||||
"shortcuts": "快捷鍵",
|
||||
"shortcutsDesc": "鍵盤綁定",
|
||||
"ssh": "SSH",
|
||||
"sshDesc": "連線與連線池",
|
||||
"security": "安全",
|
||||
"securityDesc": "憑證與主機金鑰",
|
||||
"ai": "大模型",
|
||||
"aiDesc": "AI Provider",
|
||||
"about": "關於",
|
||||
"aboutDesc": "版本與資料"
|
||||
},
|
||||
"title": "設定",
|
||||
"search": {
|
||||
"placeholder": "搜尋設定..."
|
||||
},
|
||||
"language": {
|
||||
"label": "介面語言",
|
||||
"description": "切換後立即生效",
|
||||
"zhCN": "简体中文",
|
||||
"zhTW": "繁體中文",
|
||||
"en": "English",
|
||||
"ja": "日本語",
|
||||
"ko": "한국어",
|
||||
"vi": "Tiếng Việt",
|
||||
"ru": "Русский"
|
||||
},
|
||||
"general": {
|
||||
"layout": "工作區版面",
|
||||
"sidebarWidth": "側欄寬度",
|
||||
"sidebarWidthDesc": "連線側欄的預設寬度",
|
||||
"collapseSidebar": "摺疊側欄",
|
||||
"collapseSidebarDesc": "隱藏連線樹以專注操作終端機,可用 Ctrl/Cmd+B 切換"
|
||||
},
|
||||
"appearance": {
|
||||
"themeGroup": "介面主題",
|
||||
"theme": "主題",
|
||||
"themeDesc": "應用介面配色(與終端機配色無關)",
|
||||
"dark": "深色",
|
||||
"light": "淺色",
|
||||
"system": "跟隨系統"
|
||||
},
|
||||
"terminal": {
|
||||
"fontGroup": "字型與字號",
|
||||
"fontFamily": "字型",
|
||||
"fontFamilyDesc": "需 Nerd Font 才能正確顯示 Zsh 提示字元圖示",
|
||||
"fontSize": "字號",
|
||||
"fontSizeDesc": "終端機文字大小",
|
||||
"scrollback": "回捲緩衝",
|
||||
"scrollbackDesc": "每個終端機保留的歷史行數",
|
||||
"keywordHighlight": "關鍵字高亮",
|
||||
"keywordHighlightDesc": "突顯錯誤、警告和成功狀態",
|
||||
"colorTheme": "配色主題"
|
||||
},
|
||||
"shortcuts": {
|
||||
"resetAll": "重置全部為預設",
|
||||
"custom": "自訂",
|
||||
"pressKeys": "按下快捷鍵...",
|
||||
"resetDefault": "重置為預設",
|
||||
"conflict": "與「{{label}}」衝突",
|
||||
"setTo": "設定為 {{keys}}",
|
||||
"hint": "點擊快捷鍵可重新綁定 · 按 Esc 取消錄入",
|
||||
"category": {
|
||||
"tabs": "分頁管理",
|
||||
"view": "檢視",
|
||||
"session": "連線",
|
||||
"tools": "工具"
|
||||
},
|
||||
"actions": {
|
||||
"tabNext": "切換到下一個分頁",
|
||||
"tabPrev": "切換到上一個分頁",
|
||||
"tabGotoN": "跳轉到第 N 個分頁",
|
||||
"tabClose": "關閉目前分頁",
|
||||
"tabNew": "新增分頁",
|
||||
"viewFullscreen": "切換全螢幕",
|
||||
"viewToggleSidebar": "摺疊/展開側欄",
|
||||
"sessionNew": "新增連線",
|
||||
"sessionQuickConnect": "快速連線",
|
||||
"toolsCommandPalette": "命令面板"
|
||||
}
|
||||
},
|
||||
"ssh": {
|
||||
"connection": "連線",
|
||||
"keepAlive": "保持心跳",
|
||||
"keepAliveDesc": "閒置時發送心跳,減少斷線",
|
||||
"autoReconnect": "自動重連",
|
||||
"autoReconnectDesc": "意外斷線後自動嘗試重連",
|
||||
"timeout": "連線逾時",
|
||||
"timeoutDesc": "建立 SSH 連線的最長等待時間(秒)",
|
||||
"maxReconnect": "自動重連次數",
|
||||
"maxReconnectDesc": "意外斷線後的最大嘗試次數",
|
||||
"pool": "連線池",
|
||||
"maxConnections": "最大連線數",
|
||||
"maxConnectionsDesc": "SSH、SFTP 與批次連線共享此上限",
|
||||
"maxBackground": "背景連線上限",
|
||||
"maxBackgroundDesc": "超過上限時優先回收最久未使用的連線",
|
||||
"suspend": "背景暫停",
|
||||
"suspendDesc": "分頁進入背景後多少分鐘釋放活躍通道"
|
||||
},
|
||||
"security": {
|
||||
"credentials": "憑證保護",
|
||||
"sessionPassword": "連線密碼與金鑰口令",
|
||||
"sessionPasswordDesc": "儲存前由 Rust 使用 AES-256-GCM 加密,無法關閉",
|
||||
"enabled": "已啟用",
|
||||
"masterKey": "本機主金鑰",
|
||||
"masterKeyDesc": "僅目前系統使用者可讀取;路徑 ~/.opsxshell/master.key(舊版 ~/.opsxshsell 會自動遷移)",
|
||||
"knownHosts": "已知主機",
|
||||
"knownHostsHint": "首次連線會確認主機指紋。重灌/克隆導致金鑰變更時,連線彈窗可選「仍要信任並更新」覆蓋舊記錄。此處可刪除單筆或清空全部。",
|
||||
"clearAll": "清空",
|
||||
"removeHost": "刪除此主機記錄",
|
||||
"empty": "暫無記錄",
|
||||
"clearConfirm": "確定清空全部已知主機金鑰?下次連線將重新確認。"
|
||||
},
|
||||
"about": {
|
||||
"tagline": "輕量原生的 SSH / SFTP 維運終端機",
|
||||
"appVersion": "應用 v{{version}}",
|
||||
"copyVersion": "複製版本資訊",
|
||||
"runtime": "執行環境",
|
||||
"system": "系統",
|
||||
"localData": "本機資料",
|
||||
"sessionsSettings": "連線與設定",
|
||||
"masterKeyPath": "加密主金鑰",
|
||||
"privacyNote": "密碼與金鑰口令由 Rust 使用 AES-256-GCM 加密。OpsXShell 不儲存終端機命令歷史。",
|
||||
"license": "MIT License · Rust · XTerm.js"
|
||||
},
|
||||
"ai": {
|
||||
"presets": "供應商預設",
|
||||
"add": "新增",
|
||||
"configured": "已設定",
|
||||
"configuredHint": "選擇供應商後點新增",
|
||||
"emptyHint": "新增一個 Provider 開始",
|
||||
"noModel": "未選模型",
|
||||
"name": "名稱",
|
||||
"model": "模型",
|
||||
"protocol": "通訊協定",
|
||||
"auth": "認證",
|
||||
"authNone": "無",
|
||||
"test": "測試",
|
||||
"testing": "測試中",
|
||||
"testingMessage": "測試中...",
|
||||
"saved": "已儲存",
|
||||
"retest": "請重新測試",
|
||||
"testFailed": "連線測試失敗",
|
||||
"available": "可用 · {{latency}} ms",
|
||||
"savedKeepBlank": "已儲存,留空沿用",
|
||||
"notRequired": "無需填寫",
|
||||
"otherModels": "其他模型…",
|
||||
"customModel": "自訂模型",
|
||||
"backToList": "返回列表",
|
||||
"apiKeyOptional": "API Key(無需)",
|
||||
"advanced": "進階",
|
||||
"allowHttp": "允許 HTTP(本機/內網)",
|
||||
"setActive": "設為目前",
|
||||
"deleteTitle": "刪除",
|
||||
"apiKeySaveFailed": "API Key 儲存失敗",
|
||||
"providerNotFound": "Provider 不存在",
|
||||
"modelCatalogReadFailed": "模型目錄讀取失敗",
|
||||
"catalogUnavailable": "models.dev 暫不可用"
|
||||
},
|
||||
"family": {
|
||||
"openai_compatible": "OpenAI 相容",
|
||||
"standalone": "────────",
|
||||
"plan": "Plan 計劃",
|
||||
"local": "私有化本機",
|
||||
"custom": "Custom 自訂"
|
||||
}
|
||||
}
|
||||
Reference in new issue
Block a user