@@ -0,0 +1,698 @@
import type { TranslationMessages } from '../types' ;
export const zhHkMessages : TranslationMessages = {
'app.loading' : '加載中...' ,
'assistant.displayName' : 'K.G.Studio 音樂創作助手' ,
'assistant.welcomeFallback' : '歡迎使用 K.G.Studio 音樂創作助手。' ,
'status.chordGuideCandidate' : '和弦指導候選: {name} - {notes} - {note}' ,
'settings.sidebar.title' : '設置' ,
'settings.sidebar.close' : '關閉設置' ,
'settings.sidebar.general' : '通用' ,
'settings.sidebar.audioIo' : '音頻 I/O' ,
'settings.sidebar.behavior' : '行為' ,
'settings.sidebar.templates' : '模板' ,
'settings.sidebar.chordGuide' : '和弦指導' ,
'settings.general.title' : '通用' ,
'settings.general.language.label' : '語言' ,
'settings.general.language.help' : '自動會使用你的系統語言。' ,
'settings.general.language.auto' : '自動' ,
'settings.general.language.en_us' : 'English' ,
'settings.general.language.zh_cn' : '簡體中文' ,
'settings.general.language.zh_hk' : '繁體中文' ,
'settings.yes' : '是' ,
'settings.no' : '否' ,
'settings.restoreDefault' : '恢復默認' ,
'settings.deleteCachedModel' : '刪除已緩存模型' ,
'settings.deleting' : '刪除中...' ,
'settings.general.llmProvider.section' : 'LLM 提供方' ,
'settings.general.llmProvider.label' : 'LLM 提供方' ,
'settings.general.llmProvider.local' : '本地 LLM(瀏覽器)' ,
'settings.general.llmProvider.openai' : 'OpenAI' ,
'settings.general.llmProvider.claudeOpenRouter' : 'Claude(通過 OpenRouter) ' ,
'settings.general.llmProvider.openaiCompatible' : 'OpenAI 兼容服務(例如 OpenRouter、Ollama) ' ,
'settings.general.persistKeys.label' : '在非 localhost 環境持久化 API Key' ,
'settings.general.persistKeys.help' : '啟用後,即使在非 localhost 環境下,API Key 也會保存到瀏覽器存儲中。警告:這可能增加 XSS 攻擊帶來的安全風險。' ,
'settings.general.localRuntime.cachedStatus' : '緩存模型狀態' ,
'settings.general.localRuntime.cacheChecking' : '正在檢查本地模型緩存...' ,
'settings.general.localRuntime.cacheDownloaded' : '已下載到瀏覽器緩存。' ,
'settings.general.localRuntime.cacheMissing' : '尚未下載。' ,
'settings.general.localRuntime.contextLength' : '上下文長度' ,
'settings.general.localRuntime.contextHelp' : '更大的上下文長度需要更多顯存,並且在對話變長後也可能降低性能。' ,
'settings.general.localRuntime.downloadUrl' : '下載地址' ,
'settings.general.localRuntime.downloadHelp' : '修改這個地址可能導致下載失敗,或指向不兼容的模型文件。' ,
'settings.general.localRuntime.autoDownload' : '下次你使用 `Local LLM (Browser)` 聊天時,本地模型會自動下載。' ,
'settings.general.uvr5.section' : 'UVR5 Web 運行時' ,
'settings.general.uvr5.downloadUrl' : 'UVR-MDX-NET-Inst_HQ_3 下載地址' ,
'settings.general.htdemucs.downloadUrl' : 'htdemucs_4s 下載地址' ,
'settings.general.modelUrl.help' : '修改這個地址可能導致下載失敗,或指向不兼容的模型文件。' ,
'settings.general.openai.section' : 'OpenAI' ,
'settings.general.openai.key' : '密鑰' ,
'settings.general.openai.keyPlaceholder' : '輸入你的 OpenAI API Key' ,
'settings.general.openai.model' : '模型' ,
'settings.general.openai.flexMode' : 'Flex 模式' ,
'settings.general.openai.flexHelp' : 'Flex 模式使用 OpenAI 的彈性服務層。優點:繁忙時段可能節省成本並提高吞吐。缺點:延遲可能波動,也可能排隊或被降優先級。僅對 OpenAI 提供方生效,對 OpenAI 兼容服務無影響。' ,
'settings.general.keys.persisted' : '密鑰會保存在本地(瀏覽器中的 IndexedDB)。' ,
'settings.general.keys.sessionOnly' : '出於安全考慮,在非本地主機環境下密鑰不會持久化,只保留在當前會話內存中。' ,
'settings.general.claudeOpenRouter.section' : 'Anthropic Claude(通過 OpenRouter) ' ,
'settings.general.claudeOpenRouter.keyPlaceholder' : '輸入你的 Claude API Key' ,
'settings.general.baseUrl' : '基礎 URL' ,
'settings.general.claudeOpenRouter.baseUrlHelp' : '這是 OpenRouter API 的基礎 URL。除非你明確知道自己在做什麼,否則不要修改。' ,
'settings.general.openaiCompatible.section' : 'OpenAI 兼容服務' ,
'settings.general.openaiCompatible.keyPlaceholder' : '輸入你的 API Key' ,
'settings.general.openaiCompatible.baseUrlPlaceholder' : '例如 https://openrouter.ai/api/v1' ,
'settings.general.openaiCompatible.baseUrlHelp' : '快捷預設:' ,
'settings.general.openaiCompatible.modelPlaceholder' : '例如 qwen3:30b' ,
'settings.general.soundfont.section' : 'Soundfont 設置' ,
'settings.general.soundfont.managed' : 'Soundfont 配置由服務器(kgone-server.json)管理,當前設置為只讀。' ,
'settings.general.soundfont.baseUrl' : '基礎 URL' ,
'settings.general.soundfont.baseUrlHelp' : '如果改成不兼容的 soundfont 源,某些樂器可能發聲錯誤或無法播放。' ,
'settings.general.kgone.section' : 'K.G.One 設置' ,
'settings.general.kgone.managed' : 'K.G.One 配置由服務器(kgone-server.json)管理,當前設置為只讀。' ,
'settings.general.kgone.enabled' : '啟用 K.G.One 集成' ,
'settings.general.kgone.disabled' : '禁用' ,
'settings.general.kgone.enabledOption' : '啟用' ,
'settings.general.kgone.serverBaseUrl' : '服務器基礎 URL' ,
'settings.general.kgone.serverBaseUrlHelp' : '正在運行的 K.G.One Music Studio 服務器基礎 URL。用於整曲生成、片段生成和分軌。' ,
'dialog.title.notice' : '提示' ,
'dialog.title.timeSignature' : '拍號' ,
'dialog.title.tempoDetection' : '速度檢測' ,
'dialog.title.applyTempo' : '應用速度' ,
'dialog.title.chordDetection' : '和弦檢測' ,
'dialog.title.input' : '輸入' ,
'dialog.title.confirm' : '確認' ,
'dialog.close' : '關閉對話框' ,
'dialog.cancel' : '取消' ,
'dialog.ok' : '確定' ,
'dialog.experimentalFeature' : '實驗性功能' ,
'dialog.recommendedSource' : '推薦源素材' ,
'dialog.chordHint.audio' : '和弦分析仍屬實驗性功能。和聲內容、編配密度以及瞬態較強的素材都可能影響準確率。建議先使用默認設置,再逐步微調靈敏度和穩定性,讓檢測結果更貼近實際樂句。' ,
'dialog.chordHint.midi' : '和弦分析仍屬實驗性功能。和弦堆疊密度、重疊以及裝飾音都會影響結果。建議先使用默認設置,再調整短音抑制和和聲關注方式,以匹配該段音樂的和聲作用。' ,
'dialog.chordHint.tempo' : '速度分析仍屬實驗性功能。自由速度、瞬態稀疏以及多層打擊樂都可能降低準確率。建議先使用默認 BPM 範圍,如果第一次結果不理想,再把分析範圍收窄到更可能的速度區間。' ,
'dialog.sourceHint.kgone' : '為了獲得更可靠的和弦標籤,建議分析已經削弱或移除了人聲和打擊樂的 stem。如果已啟用 K.G.One Music Studio 服務器集成,請使用帶有 "Vocal, Drums, Bass, Guitar, Piano, and Others" 的 Separator 模型,並優先分析 Piano 或 Others stem。' ,
'dialog.sourceHint.local' : '為了獲得更可靠的和弦標籤,建議分析已經削弱或移除了人聲和打擊樂的 stem。如果你使用本地分軌器,請選擇 "Vocal, Drums, Bass, and Others" 模型,並使用 Others stem 進行分析。' ,
'dialog.label.sensitivity' : '靈敏度' ,
'dialog.label.stability' : '穩定性' ,
'dialog.label.noChordThreshold' : '無和弦閾值' ,
'dialog.label.enableSevenths' : '和弦細節:啟用七和弦' ,
'dialog.label.shortNotes' : '短音' ,
'dialog.option.suppressionLow' : '低抑制' ,
'dialog.option.suppressionMedium' : '中抑制' ,
'dialog.option.suppressionHigh' : '高抑制' ,
'dialog.label.harmonicFocus' : '和聲關注' ,
'dialog.option.harmonicBalanced' : '均衡' ,
'dialog.option.harmonicSustained' : '偏向持續音' ,
'dialog.label.minimumBpm' : '最小 BPM' ,
'dialog.label.maximumBpm' : '最大 BPM' ,
'dialog.label.autoAlignRegionToBeat' : '自動將片段對齊到拍點' ,
'dialog.message.chordDetection' : '在處理前調整音頻和弦檢測設置。' ,
'dialog.message.tempoDetection' : '在處理前調整音頻速度檢測設置。' ,
'dialog.message.tempoApply' : '檢測到速度:{bpm} BPM。請選擇應用方式。\n\n"更新當前速度"將修改此片段位置的有效速度。"插入速度變更"將在片段起始點前最近的小節處添加新的速度區域。' ,
'dialog.action.updateCurrentTempo' : '更新當前速度' ,
'dialog.action.insertTempoChange' : '插入速度變更' ,
'eventList.title' : '事件列表' ,
'eventList.scopeTabs' : '事件列表範圍' ,
'eventList.scope.region' : '區域' ,
'eventList.scope.track' : '音軌' ,
'eventList.scope.global' : '全局' ,
'eventList.deleteVisibleSelectedRows' : '刪除當前可見的已選行' ,
'eventList.table.position' : '位置' ,
'eventList.table.status' : '狀態' ,
'eventList.table.num' : '編號' ,
'eventList.table.val' : '數值' ,
'eventList.table.lengthInfo' : '長度/信息' ,
'eventList.region.filters' : '區域事件篩選' ,
'eventList.region.filter.notes' : '音符' ,
'eventList.region.filter.pitchBends' : '彎音' ,
'eventList.region.filter.controller' : '控制器' ,
'eventList.region.empty' : '請選擇一個 MIDI 區域,或先在鋼琴卷簾中打開一個區域,再查看事件列表。' ,
'eventList.region.add.label' : '添加' ,
'eventList.region.add.noteTitle' : '在播放頭位置添加音符' ,
'eventList.region.add.pitchBendTitle' : '在播放頭位置添加彎音' ,
'eventList.region.add.controllerTitle' : '在播放頭位置添加控制器事件' ,
'eventList.region.addType.note' : '音符' ,
'eventList.region.addType.pitchBend' : '彎音' ,
'eventList.region.addType.controller' : '控制器' ,
'eventList.region.status.note' : '音符' ,
'eventList.region.status.pitchBend' : '彎音' ,
'eventList.region.status.controller' : '控制器' ,
'eventList.track.filters' : '音軌列表模式' ,
'eventList.track.filter.regions' : '區域' ,
'eventList.track.filter.volume' : '音量' ,
'eventList.track.filter.pan' : '聲像' ,
'eventList.track.empty' : '請選擇一條音軌以查看區域和音軌自動化。' ,
'eventList.track.add.label' : '添加' ,
'eventList.track.add.midiRegionTitle' : '在播放頭位置添加 MIDI 區域' ,
'eventList.track.add.volumeTitle' : '在播放頭位置添加音量自動化點' ,
'eventList.track.add.panTitle' : '在播放頭位置添加聲像自動化點' ,
'eventList.track.addType.midiRegion' : 'MIDI 區域' ,
'eventList.track.status.audio' : '音頻' ,
'eventList.track.status.midi' : 'MIDI' ,
'eventList.track.status.volume' : '音量' ,
'eventList.track.status.pan' : '聲像' ,
'eventList.global.filters' : '全局事件篩選' ,
'eventList.global.filter.marker' : '標記' ,
'eventList.global.filter.tempo' : '速度' ,
'eventList.global.filter.keySignature' : '調號' ,
'eventList.global.filter.chord' : '和弦' ,
'eventList.global.add.label' : '添加' ,
'eventList.global.add.markerTitle' : '在播放頭位置添加標記區段' ,
'eventList.global.add.tempoTitle' : '在播放頭位置添加速度區段' ,
'eventList.global.add.keySignatureTitle' : '在播放頭位置添加調號區段' ,
'eventList.global.add.chordTitle' : '在播放頭位置添加和弦區段' ,
'eventList.global.addType.marker' : '標記' ,
'eventList.global.addType.tempo' : '速度' ,
'eventList.global.addType.keySignature' : '調號' ,
'eventList.global.addType.chord' : '和弦' ,
'eventList.global.status.marker' : '標記' ,
'eventList.global.status.tempo' : '速度' ,
'eventList.global.status.keySignature' : '調號' ,
'eventList.global.status.chord' : '和弦' ,
'eventList.global.validation.marker' : '請輸入標記標籤。需要非空文本標籤。示例:前奏' ,
'eventList.global.validation.tempo' : '請輸入僅包含數字的 BPM 值。需要介於 {min} 和 {max} 之間的整數。示例:128' ,
'eventList.global.validation.keySignature' : '請輸入一個精確的調號名稱。需要規範值,例如 "C major" 或 "F# minor"。示例:F# minor' ,
'eventList.global.validation.chord' : '請輸入有效的和弦符號。需要應用可解析的和弦表示。示例:Bm7b5' ,
'eventList.global.validation.position' : '請輸入項目起點或之後的位置。需要非負位置。示例:1 1 0' ,
'eventList.global.validation.length' : '請輸入正長度。需要大於零的時值。示例:4 0' ,
'globalTracks.label' : '全局軌道' ,
'globalTracks.marker' : '標記' ,
'globalTracks.tempo' : '速度' ,
'globalTracks.signature' : '調號' ,
'globalTracks.chord' : '和弦' ,
'globalTracks.addItem' : '添加 {label} 全局軌道項目' ,
'pianoRoll.power.linear' : '線性' ,
'pianoRoll.power.sqrtDefault' : '√(默認)' ,
'pianoRoll.power.mild' : '輕度' ,
'pianoRoll.power.strong' : '強烈' ,
'pianoRoll.chordGuide.off' : '關閉和弦指導' ,
'pianoRoll.chordGuide.tonic' : '主功能和弦指導' ,
'pianoRoll.chordGuide.subdominant' : '下屬功能和弦指導' ,
'pianoRoll.chordGuide.dominant' : '屬功能和弦指導' ,
'pianoRoll.spectrogramView' : '頻譜視圖' ,
'pianoRoll.sheetMusicView' : '五線譜視圖' ,
'pianoRoll.pointerTool' : '指針工具' ,
'pianoRoll.pencilTool' : '鉛筆工具' ,
'pianoRoll.toggleAutomationLane' : '切換自動化軌' ,
'pianoRoll.automation' : '自動化' ,
'pianoRoll.automationLane' : '{label} 自動化軌' ,
'pianoRoll.automationType.pitchBend' : '彎音' ,
'pianoRoll.automationType.cc1' : 'CC1' ,
'pianoRoll.automationType.cc2' : 'CC2' ,
'pianoRoll.automationType.cc7' : 'CC7' ,
'pianoRoll.automationType.cc11' : 'CC11' ,
'pianoRoll.automationType.cc64' : 'CC64' ,
'pianoRoll.mode' : '調式' ,
'pianoRoll.modeOption.ionian' : '伊奧尼亞' ,
'pianoRoll.modeOption.dorian' : '多利亞' ,
'pianoRoll.modeOption.phrygian' : '弗里吉亞' ,
'pianoRoll.modeOption.lydian' : '利底亞' ,
'pianoRoll.modeOption.mixolydian' : '混合利底亞' ,
'pianoRoll.modeOption.aeolian' : '愛奧利亞' ,
'pianoRoll.modeOption.locrian' : '洛克里亞' ,
'pianoRoll.modeOption.harmonic_minor' : '和聲小調' ,
'pianoRoll.modeOption.melodic_minor' : '旋律小調' ,
'pianoRoll.modeOption.phrygian_dominant' : '弗里吉亞屬調式' ,
'pianoRoll.modeOption.harmonic_major' : '和聲大調' ,
'pianoRoll.chordGuide' : '和弦指導' ,
'pianoRoll.sheetQuantization' : '譜面量化' ,
'pianoRoll.snap' : '吸附' ,
'pianoRoll.snap.none' : '無吸附' ,
'pianoRoll.quantizePositionCompact' : '位置量化' ,
'pianoRoll.quantizeLengthCompact' : '長度量化' ,
'pianoRoll.floor' : '底噪' ,
'pianoRoll.curve' : '曲線' ,
'pianoRoll.zoom' : '縮放' ,
'pianoRoll.moreOptions' : '更多選項' ,
'pianoRoll.quantize.1/1' : '1/1' ,
'pianoRoll.quantize.1/2' : '1/2' ,
'pianoRoll.quantize.1/3' : '1/3' ,
'pianoRoll.quantize.1/4' : '1/4' ,
'pianoRoll.quantize.1/6' : '1/6' ,
'pianoRoll.quantize.1/8' : '1/8' ,
'pianoRoll.quantize.1/12' : '1/12' ,
'pianoRoll.quantize.1/16' : '1/16' ,
'pianoRoll.quantize.1/24' : '1/24' ,
'pianoRoll.quantize.1/32' : '1/32' ,
'pianoRoll.showActiveRegionOnly' : '僅顯示當前區域' ,
'pianoRoll.showEntireTrack' : '顯示整條音軌' ,
'pianoRoll.detectChords' : '檢測和弦...' ,
'pianoRoll.detectingChords' : '正在檢測和弦...' ,
'pianoRoll.detectTempo' : '檢測速度...' ,
'pianoRoll.detectingTempo' : '正在檢測速度...' ,
'percussion.short.35' : '原底鼓' ,
'percussion.short.36' : '底鼓' ,
'percussion.short.37' : '邊擊' ,
'percussion.short.38' : '原軍鼓' ,
'percussion.short.39' : '拍手' ,
'percussion.short.40' : '電軍鼓' ,
'percussion.short.41' : '低落地鼓' ,
'percussion.short.42' : '閉鑔' ,
'percussion.short.43' : '高落地鼓' ,
'percussion.short.44' : '踏鑔' ,
'percussion.short.45' : '低嗵鼓' ,
'percussion.short.46' : '開鑔' ,
'percussion.short.47' : '中低嗵鼓' ,
'percussion.short.48' : '中高嗵鼓' ,
'percussion.short.49' : '碎音鑔1' ,
'percussion.short.50' : '高嗵鼓' ,
'percussion.short.51' : '叮叮鑔1' ,
'percussion.short.52' : '中國鑔' ,
'percussion.short.53' : '叮叮鑔鈴' ,
'percussion.short.54' : '鈴鼓' ,
'percussion.short.55' : '飛濺鑔' ,
'percussion.short.56' : '牛鈴' ,
'percussion.short.57' : '碎音鑔2' ,
'percussion.short.58' : '振響器' ,
'percussion.short.59' : '叮叮鑔2' ,
'percussion.short.60' : '高邦戈' ,
'percussion.short.61' : '低邦戈' ,
'percussion.short.62' : '悶高康加' ,
'percussion.short.63' : '開高康加' ,
'percussion.short.64' : '低康加' ,
'percussion.short.65' : '高廷巴勒' ,
'percussion.short.66' : '低廷巴勒' ,
'percussion.short.67' : '高阿哥哥' ,
'percussion.short.68' : '低阿哥哥' ,
'percussion.short.69' : '卡巴薩' ,
'percussion.short.70' : '沙鎚' ,
'percussion.short.71' : '短哨' ,
'percussion.short.72' : '長哨' ,
'percussion.short.73' : '短刮瓜' ,
'percussion.short.74' : '長刮瓜' ,
'percussion.short.75' : '響棒' ,
'percussion.short.76' : '高木塊' ,
'percussion.short.77' : '低木塊' ,
'percussion.short.78' : '悶庫卡' ,
'percussion.short.79' : '開庫卡' ,
'percussion.short.80' : '悶三角鐵' ,
'percussion.short.81' : '開三角鐵' ,
'percussion.full.35' : '原聲底鼓' ,
'percussion.full.36' : '底鼓 1' ,
'percussion.full.37' : '邊擊' ,
'percussion.full.38' : '原聲軍鼓' ,
'percussion.full.39' : '拍手' ,
'percussion.full.40' : '電軍鼓' ,
'percussion.full.41' : '低落地嗵鼓' ,
'percussion.full.42' : '閉合踩鑔' ,
'percussion.full.43' : '高落地嗵鼓' ,
'percussion.full.44' : '踏踩鑔' ,
'percussion.full.45' : '低嗵鼓' ,
'percussion.full.46' : '開放踩鑔' ,
'percussion.full.47' : '中低嗵鼓' ,
'percussion.full.48' : '中高嗵鼓' ,
'percussion.full.49' : '碎音鑔 1' ,
'percussion.full.50' : '高嗵鼓' ,
'percussion.full.51' : '叮叮鑔 1' ,
'percussion.full.52' : '中國鑔' ,
'percussion.full.53' : '叮叮鑔鈴' ,
'percussion.full.54' : '鈴鼓' ,
'percussion.full.55' : '飛濺鑔' ,
'percussion.full.56' : '牛鈴' ,
'percussion.full.57' : '碎音鑔 2' ,
'percussion.full.58' : '振響器' ,
'percussion.full.59' : '叮叮鑔 2' ,
'percussion.full.60' : '高邦戈' ,
'percussion.full.61' : '低邦戈' ,
'percussion.full.62' : '悶高康加' ,
'percussion.full.63' : '開高康加' ,
'percussion.full.64' : '低康加' ,
'percussion.full.65' : '高廷巴勒' ,
'percussion.full.66' : '低廷巴勒' ,
'percussion.full.67' : '高阿哥哥' ,
'percussion.full.68' : '低阿哥哥' ,
'percussion.full.69' : '卡巴薩' ,
'percussion.full.70' : '沙鎚' ,
'percussion.full.71' : '短哨' ,
'percussion.full.72' : '長哨' ,
'percussion.full.73' : '短刮瓜' ,
'percussion.full.74' : '長刮瓜' ,
'percussion.full.75' : '響棒' ,
'percussion.full.76' : '高木塊' ,
'percussion.full.77' : '低木塊' ,
'percussion.full.78' : '悶庫卡' ,
'percussion.full.79' : '開庫卡' ,
'percussion.full.80' : '悶三角鐵' ,
'percussion.full.81' : '開三角鐵' ,
'toolbar.export.kgstudio' : '導出為 KGStudio 文件' ,
'toolbar.export.midi' : '導出為 MIDI 文件' ,
'toolbar.export.wav' : '導出為 WAV' ,
'toolbar.export.mp3' : '導出為 MP3' ,
'toolbar.projectName.prompt' : '輸入項目名稱:' ,
'toolbar.projectName.invalid' : '無效的項目名稱。只允許字母、數字、空格、連字符、下劃線、句點和括號。' ,
'toolbar.projectName.reserved' : '"{name}" 是保留項目名稱。請選擇其他名稱。' ,
'toolbar.projectName.overwrite' : '項目 "{name}" 已存在。要覆蓋它嗎?' ,
'toolbar.projectName.renameOrCopy' : '你想重命名這個項目,還是另存為一個副本?' ,
'toolbar.projectName.saveAsCopy' : '另存為副本' ,
'toolbar.projectName.rename' : '重命名' ,
'toolbar.save.error' : '保存時發生錯誤:{error}' ,
'toolbar.load.error' : '加載項目時發生錯誤:{error}' ,
'toolbar.newProject.confirm' : '確定要創建新項目嗎?當前未保存的更改將會丟失。' ,
'toolbar.project.notFound' : '未找到項目 "{name}"。' ,
'toolbar.openProject.confirm' : '要打開這個項目嗎?當前項目中未保存的更改將會丟失。' ,
'toolbar.status.loadFailed' : '加載項目失敗:{error}' ,
'toolbar.status.newProjectCreated' : '已創建新項目 "{name}"' ,
'toolbar.status.projectLoaded' : '{description} 加載成功' ,
'toolbar.status.projectExportedKgstudio' : '項目 "{name}" 已導出為 KGStudio 文件' ,
'toolbar.status.exportProjectError' : '導出項目出錯:{error}' ,
'toolbar.export.failedProject' : '導出項目失敗:{error}' ,
'toolbar.status.projectExportedMidi' : '項目 "{name}" 已導出為 MIDI 文件' ,
'toolbar.status.exportMidiError' : '導出 MIDI 出錯:{error}' ,
'toolbar.export.failedMidi' : '導出項目為 MIDI 失敗:{error}' ,
'toolbar.status.projectExportedWav' : '項目 "{name}" 已導出為 WAV 文件' ,
'toolbar.status.exportWavError' : '導出 WAV 出錯:{error}' ,
'toolbar.export.failedWav' : '導出項目為 WAV 失敗:{error}' ,
'toolbar.status.projectExportedMp3' : '項目 "{name}" 已導出為 MP3 文件' ,
'toolbar.status.exportMp3Error' : '導出 MP3 出錯:{error}' ,
'toolbar.export.failedMp3' : '導出項目為 MP3 失敗:{error}' ,
'toolbar.status.importFailed' : '導入文件失敗:{error}' ,
'toolbar.import.failedProjectFile' : '導入項目文件失敗:{error}' ,
'toolbar.import.corruptedKgstudio' : '.kgstudio 文件已損壞或無效:{error}' ,
'toolbar.status.importingMidi' : '正在導入 MIDI 文件 "{name}"...' ,
'toolbar.status.failedImportMidi' : '導入 MIDI 文件失敗:{error}' ,
'toolbar.status.playbackFailedStart' : '播放啟動失敗' ,
'toolbar.status.recordingStoppedCommitted' : '錄音已停止 - 音符已提交' ,
'toolbar.status.failedStopPlayback' : '停止播放失敗' ,
'toolbar.maxBars.prompt' : '輸入新的最大小節數(>= {min}):' ,
'toolbar.input.invalidNumber' : '輸入無效。請輸入有效數字。' ,
'toolbar.maxBars.invalid' : '數值無效。請輸入一個 >= {min} 的數字。' ,
'toolbar.status.maxBarsChanged' : '最大小節數已改為 {value}' ,
'toolbar.bpm.prompt' : '輸入新的 BPM( {min}-{max}):' ,
'toolbar.bpm.invalid' : 'BPM 無效。請輸入 {min} 到 {max} 之間的值。' ,
'toolbar.status.bpmChanged' : 'BPM 已改為 {value}' ,
'toolbar.timeSignature.prompt' : '設置拍號:' ,
'toolbar.status.timeSignatureChanged' : '拍號已改為 {value}' ,
'toolbar.status.keySignatureChanged' : '調號已改為 {value}' ,
'toolbar.status.copied' : '項目已複製到剪貼板' ,
'toolbar.status.copyNone' : '沒有可複製的已選項目' ,
'toolbar.status.pasted' : '已從剪貼板粘貼項目' ,
'toolbar.status.pasteFailed' : '無法粘貼 - 沒有有效的剪貼板內容或上下文' ,
'toolbar.status.deleted' : '已刪除所選區域' ,
'toolbar.status.deleteNone' : '沒有選中可刪除的區域' ,
'toolbar.undo.none' : '沒有可撤銷的操作' ,
'toolbar.redo.none' : '沒有可重做的操作' ,
'toolbar.status.undid' : '已撤銷:{description}' ,
'toolbar.status.redid' : '已重做:{description}' ,
'toolbar.action' : '操作' ,
'toolbar.status.chatToggled' : '聊天窗口已切換' ,
'toolbar.status.settingsToggled' : '設置面板已切換' ,
'toolbar.pianoRoll.selectMidiRegion' : '請先選擇一個 MIDI 區域再打開鋼琴卷簾。' ,
'toolbar.status.recordingStopped' : '錄音已停止' ,
'toolbar.status.audioRecordingStarted' : '音頻錄音已開始...' ,
'toolbar.recording.openMidiRegion' : '開始錄音前,請先在鋼琴卷簾中打開一個 MIDI 區域。' ,
'toolbar.recording.selectMidiRegion' : '開始錄音前,請先選擇一個 MIDI 區域。' ,
'toolbar.recording.noMidiDevice' : '未檢測到 MIDI 設備。請連接 MIDI 鍵盤後重試。' ,
'toolbar.status.recordingStarted' : '錄音已開始...' ,
'toolbar.button.new' : '新建' ,
'toolbar.button.load' : '打開' ,
'toolbar.button.save' : '保存' ,
'toolbar.button.export' : '導出' ,
'toolbar.button.import' : '導入' ,
'toolbar.button.settings' : '設置' ,
'toolbar.button.undo' : '撤銷' ,
'toolbar.button.redo' : '重做' ,
'toolbar.button.select' : '選擇' ,
'toolbar.button.pencil' : '鉛筆' ,
'toolbar.button.splitRegion' : '在播放頭處分割區域' ,
'toolbar.button.mergeRegions' : '合併選中的 MIDI 區域' ,
'toolbar.button.snapToGrid' : '吸附到網格' ,
'toolbar.button.copy' : '複製' ,
'toolbar.button.paste' : '粘貼' ,
'toolbar.button.delete' : '刪除' ,
'toolbar.button.backToBeginning' : '回到開頭' ,
'toolbar.button.play' : '播放' ,
'toolbar.button.pause' : '暫停' ,
'toolbar.button.stopRecording' : '停止錄音' ,
'toolbar.button.record' : '錄音' ,
'toolbar.button.loop' : '循環' ,
'toolbar.button.metronome' : '節拍器' ,
'toolbar.button.piano' : '鋼琴' ,
'toolbar.button.kgone' : 'K.G.One 音樂生成器' ,
'toolbar.button.chat' : '聊天' ,
'toolbar.button.eventList' : '事件列表編輯器' ,
'toolbar.keySignatureChooser' : '選擇調號,當前為 {value}' ,
'toolbar.export.label' : '導出' ,
'toolbar.importProject.title' : '導入項目' ,
'toolbar.importProject.description' : '將項目文件拖放到這裡' ,
'toolbar.openingProject' : '正在打開項目...' ,
'fileImport.invalidType' : '文件類型無效。請選擇以下擴展名之一的文件:{extensions}' ,
'fileImport.close' : '關閉導入彈窗' ,
'fileImport.supportedFormats' : '支持的格式:{formats}' ,
'fileImport.or' : '或' ,
'fileImport.browse' : '瀏覽文件' ,
'instrument.group.PIANO_AND_KEYBOARDS' : '鋼琴與鍵盤' ,
'instrument.group.GUITAR' : '吉他' ,
'instrument.group.BASS' : '貝斯' ,
'instrument.group.STRINGS' : '弦樂' ,
'instrument.group.BRASS' : '銅管' ,
'instrument.group.WOODWIND' : '木管' ,
'instrument.group.PERCUSSION_KIT' : '打擊樂套件' ,
'instrument.group.SYNTH' : '合成器' ,
'instrument.name.acoustic_grand_piano' : '原聲大鋼琴' ,
'instrument.name.bright_acoustic_piano' : '明亮原聲鋼琴' ,
'instrument.name.electric_grand_piano' : '電大鋼琴' ,
'instrument.name.electric_piano_1' : '電鋼琴 1' ,
'instrument.name.electric_piano_2' : '電鋼琴 2' ,
'instrument.name.drawbar_organ' : '擊桿風琴' ,
'instrument.name.clavinet' : '擊弦電鋼琴' ,
'instrument.name.harpsichord' : '羽管鍵琴' ,
'instrument.name.accordion' : '手風琴' ,
'instrument.name.acoustic_guitar_nylon' : '原聲吉他(尼龍弦)' ,
'instrument.name.acoustic_guitar_steel' : '原聲吉他(鋼弦)' ,
'instrument.name.electric_guitar_clean' : '電吉他(清音)' ,
'instrument.name.overdriven_guitar' : '電吉他(過載)' ,
'instrument.name.distortion_guitar' : '電吉他(失真)' ,
'instrument.name.acoustic_bass' : '原聲貝斯' ,
'instrument.name.electric_bass_finger' : '電貝斯(指彈)' ,
'instrument.name.electric_bass_pick' : '電貝斯(撥片)' ,
'instrument.name.slap_bass_1' : '擊勾貝斯' ,
'instrument.name.synth_bass_1' : '合成貝斯 1' ,
'instrument.name.violin' : '小提琴' ,
'instrument.name.viola' : '中提琴' ,
'instrument.name.cello' : '大提琴' ,
'instrument.name.contrabass' : '低音提琴' ,
'instrument.name.string_ensemble_1' : '弦樂合奏' ,
'instrument.name.string_ensemble_2' : '弦樂合奏 2' ,
'instrument.name.pizzicato_strings' : '撥奏弦樂' ,
'instrument.name.tremolo_strings' : '震音弦樂' ,
'instrument.name.orchestral_harp' : '管弦豎琴' ,
'instrument.name.trumpet' : '小號' ,
'instrument.name.trombone' : '長號' ,
'instrument.name.tuba' : '大號' ,
'instrument.name.french_horn' : '圓號' ,
'instrument.name.brass_section' : '銅管組' ,
'instrument.name.soprano_sax' : '高音薩克斯' ,
'instrument.name.alto_sax' : '中音薩克斯' ,
'instrument.name.tenor_sax' : '次中音薩克斯' ,
'instrument.name.baritone_sax' : '上低音薩克斯' ,
'instrument.name.oboe' : '雙簧管' ,
'instrument.name.english_horn' : '英國管' ,
'instrument.name.bassoon' : '巴松' ,
'instrument.name.clarinet' : '單簧管' ,
'instrument.name.piccolo' : '短笛' ,
'instrument.name.flute' : '長笛' ,
'instrument.name.shakuhachi' : '尺八' ,
'instrument.name.harmonica' : '口琴' ,
'instrument.name.standard' : '標準鼓組' ,
'instrument.name.orchestra_kit' : '管弦打擊樂組' ,
'instrument.name.marimba' : '馬林巴' ,
'instrument.name.timpani' : '定音鼓' ,
'instrument.name.taiko_drum' : '太鼓' ,
'instrument.name.woodblock' : '木魚' ,
'instrument.name.lead_1_square' : '主音 1(方波)' ,
'instrument.name.lead_2_sawtooth' : '主音 2(鋸齒波)' ,
'instrument.name.pad_1_new_age' : '鋪底 1(新世紀)' ,
'instrument.name.pad_2_warm' : '鋪底 2(溫暖)' ,
'instrument.name.pad_3_polysynth' : '鋪底 3(複音合成)' ,
'instrument.name.pad_4_choir' : '鋪底 4(合唱)' ,
'instrument.name.pad_5_bowed' : '鋪底 5(弓弦玻璃)' ,
'instrument.name.pad_6_metallic' : '鋪底 6(金屬)' ,
'instrument.name.pad_7_halo' : '鋪底 7(光暈)' ,
'instrument.name.pad_8_sweep' : '鋪底 8(掃頻)' ,
'instrument.name.fx_1_rain' : '特效 1(雨)' ,
'instrument.name.fx_2_soundtrack' : '特效 2(配樂)' ,
'instrument.name.fx_3_crystal' : '特效 3(水晶)' ,
'instrument.name.fx_4_atmosphere' : '特效 4(氛圍)' ,
'instrument.name.fx_5_brightness' : '特效 5(明亮)' ,
'instrument.name.fx_6_goblins' : '特效 6(妖精)' ,
'instrument.name.fx_7_echoes' : '特效 7(回聲)' ,
'instrument.name.fx_8_scifi' : '特效 8(科幻)' ,
// ─── K.G.One / Music Generator Panel ─────────────────────────────────────────
'kgone.panel.title.server' : 'K.G.One 音樂生成器' ,
'kgone.panel.title.local' : '音樂生成器' ,
'kgone.tab.fullSong' : '完整歌曲' ,
'kgone.tab.remix' : '混音' ,
'kgone.tab.repaint' : '重繪' ,
'kgone.tab.separator' : '分離' ,
'kgone.tab.requiresServer' : '需要 K.G.One Music Studio 服務器集成' ,
// Shared across tabs
'kgone.shared.advancedSettings' : '高級設置' ,
'kgone.shared.caption' : '描述' ,
'kgone.shared.lyrics' : '歌詞' ,
'kgone.shared.lyricsPlaceholder' : '[Verse 1]\n在這裡輸入歌詞...\n\n[Chorus]\n...' ,
'kgone.shared.instrumental' : '純音樂(無人聲)' ,
'kgone.shared.inferenceSteps' : '推理步數' ,
'kgone.shared.guidanceScale' : '引導強度' ,
'kgone.shared.useRandomSeed' : '使用隨機種子' ,
'kgone.shared.seed' : '種子' ,
'kgone.shared.thinking' : '思考模式(CoT 元數據生成)' ,
'kgone.shared.selectedRegion' : '已選區域' ,
'kgone.shared.track' : '音軌' ,
'kgone.shared.poweredBy' : '技術支持:' ,
'kgone.shared.btn.loadingModel' : '加載模型中...' ,
'kgone.shared.btn.generating' : '生成中...' ,
'kgone.shared.btn.processing' : '處理中...' ,
'kgone.shared.btn.downloading' : '下載中...' ,
'kgone.shared.btn.preparingUpload' : '準備上傳...' ,
'kgone.shared.btn.importing' : '導入中...' ,
'kgone.shared.hint.loadingModel' : '正在加載模型——此過程可能需要 60 秒以上,請耐心等待...' ,
'kgone.shared.hint.submitting' : '正在提交生成請求...' ,
'kgone.shared.hint.downloadingAudio' : '正在下載音頻...' ,
// Clip tab
'kgone.clip.field.prompt' : '提示詞' ,
'kgone.clip.field.promptPlaceholder' : '例:粗糙, 酸性, 貝斯線, 303, 合成主音, FM, 次低音, 中高頻, 高頻相位, 高頻混響, 彎音, 8小節, 140 BPM, E 小調' ,
'kgone.clip.field.promptHint' : '用逗號分隔的標籤描述片段:樂器類別、子類型、音色、效果、小節數、BPM、調性。' ,
'kgone.clip.field.negativePrompt' : '負向提示詞' ,
'kgone.clip.field.negativePromptPlaceholder' : '例:失真, 噪音' ,
'kgone.clip.field.bars' : '小節數' ,
'kgone.clip.field.bars4' : '4 小節' ,
'kgone.clip.field.bars8' : '8 小節' ,
'kgone.clip.field.note' : '音符' ,
'kgone.clip.field.scale' : '音階' ,
'kgone.clip.field.scaleMajor' : '大調' ,
'kgone.clip.field.scaleMinor' : '小調' ,
'kgone.clip.field.bpm' : 'BPM' ,
'kgone.clip.field.steps' : '步數' ,
'kgone.clip.field.cfgScale' : 'CFG 強度' ,
'kgone.clip.field.seedLabel' : '種子(-1 = 隨機)' ,
'kgone.clip.field.samplerType' : '採樣器類型' ,
'kgone.clip.field.sigmaMin' : 'Sigma 最小值' ,
'kgone.clip.field.sigmaMax' : 'Sigma 最大值' ,
'kgone.clip.field.cfgRescale' : 'CFG 重縮放' ,
'kgone.clip.hint.generating' : '正在生成片段...' ,
'kgone.clip.hint.drag' : '將上方播放器拖至音軌以導入片段。拖到<strong>音頻音軌</strong>可作為 WAV 區域導入(推薦),拖到<strong>MIDI 音軌</strong>可作為 MIDI 區域導入。注意:MIDI 是從音頻轉錄的,可能不完全準確。' ,
'kgone.clip.btn.generate' : '生成片段' ,
'kgone.clip.poweredBy' : 'Foundation-1' ,
// Full Song tab
'kgone.fullSong.field.captionPlaceholder' : '例:風格:歐洲舞曲,90年代流行電子。感覺:朗朗上口、充滿活力... 速度:約 130 BPM。編排:強勁底鼓、歐洲舞曲貝斯線...' ,
'kgone.fullSong.field.captionHint' : '用自然語言描述歌曲風格、情緒、速度、編排和結構。' ,
'kgone.fullSong.field.lyricsHint' : '使用 [Intro]、[Verse]、[Chorus]、[Bridge] 標籤標注段落。' ,
'kgone.fullSong.hint.generating' : '生成中...' ,
'kgone.fullSong.hint.generatingProgress' : '生成中... {pct}% — {stage}' ,
'kgone.fullSong.hint.generatingProgressNoStage' : '生成中... {pct}%' ,
'kgone.fullSong.hint.drag' : '將上方播放器拖至<strong>音頻音軌</strong>以導入歌曲。完整歌曲生成不支持拖至 MIDI 音軌。' ,
'kgone.fullSong.btn.generate' : '生成歌曲' ,
'kgone.fullSong.poweredBy' : 'ACE-Step 1.5' ,
// Remix tab
'kgone.remix.field.captionPlaceholder' : '例:風格:爵士,感覺:流暢悠揚,編排:鋼琴、立式貝斯、刷式鼓...' ,
'kgone.remix.field.captionHint' : '描述混音的目標風格、情緒和編排。' ,
'kgone.remix.field.lyricsHint' : '留空則保留原歌詞,或提供新歌詞。使用 [Verse]、[Chorus]、[Bridge] 標籤。' ,
'kgone.remix.field.coverStrength' : '翻唱強度' ,
'kgone.remix.field.coverStrengthHint' : '0 = 創意改編,1 = 忠實於原曲結構' ,
'kgone.remix.field.noiseStrength' : '噪聲強度' ,
'kgone.remix.field.noiseStrengthHint' : '0 = 純風格遷移,推薦 0.1– 0.25' ,
'kgone.remix.hint.submitting' : '正在提交混音請求...' ,
'kgone.remix.hint.generating' : '正在生成混音...' ,
'kgone.remix.hint.generatingProgress' : '正在生成混音... {pct}% — {stage}' ,
'kgone.remix.hint.generatingProgressNoStage' : '正在生成混音... {pct}%' ,
'kgone.remix.hint.drag' : '將上方播放器拖至<strong>音頻音軌</strong>以導入混音。' ,
'kgone.remix.hint.noRegion' : '請在時間軸上選擇一個音頻區域以進行混音。僅支持音頻區域——MIDI 區域不可混音。' ,
'kgone.remix.btn.generate' : '生成混音' ,
'kgone.remix.btn.processingRemix' : '處理混音中...' ,
'kgone.remix.btn.importAligned' : '對齊源區域並導入' ,
'kgone.remix.poweredBy' : 'ACE-Step 1.5' ,
// Repaint tab
'kgone.repaint.field.repaintRange' : '重繪範圍' ,
'kgone.repaint.field.loopModeOff' : '循環模式已關閉。請啟用工具欄上的循環按鈕並設置循環範圍以定義重繪窗口。' ,
'kgone.repaint.field.start' : '開始' ,
'kgone.repaint.field.end' : '結束' ,
'kgone.repaint.field.untilEnd' : '直至音頻末尾' ,
'kgone.repaint.field.captionPlaceholder' : '例:風格:爵士,感覺:流暢悠揚,編排:鋼琴、立式貝斯、刷式鼓...' ,
'kgone.repaint.field.captionHint' : '描述重繪段落的目標風格和編排。' ,
'kgone.repaint.field.lyricsHint' : '留空則保留原歌詞,或為重繪段落提供新歌詞。' ,
'kgone.repaint.field.repaintStrength' : '重繪強度' ,
'kgone.repaint.field.repaintStrengthHint' : '0 = 保留原音,1 = 完全重新生成' ,
'kgone.repaint.hint.submitting' : '正在提交重繪請求...' ,
'kgone.repaint.hint.generating' : '正在生成重繪...' ,
'kgone.repaint.hint.generatingProgress' : '正在生成重繪... {pct}% — {stage}' ,
'kgone.repaint.hint.generatingProgressNoStage' : '正在生成重繪... {pct}%' ,
'kgone.repaint.hint.drag' : '將上方播放器拖至<strong>音頻音軌</strong>以導入重繪結果。' ,
'kgone.repaint.hint.noRegion' : '請在時間軸上選擇一個音頻區域以進行重繪。僅支持音頻區域——MIDI 區域不可重繪。' ,
'kgone.repaint.btn.generate' : '生成重繪' ,
'kgone.repaint.btn.processingRepaint' : '處理重繪中...' ,
'kgone.repaint.btn.importAligned' : '對齊源區域並導入' ,
'kgone.repaint.poweredBy' : 'ACE-Step 1.5' ,
// Separator tab
'kgone.separator.field.separationModel' : '分離模型' ,
'kgone.separator.field.chunkDuration' : '可選音頻分塊時長(秒)' ,
'kgone.separator.field.chunkDurationPlaceholder' : '留空則處理整個區域' ,
'kgone.separator.field.modelOverlap' : '模型重疊' ,
'kgone.separator.hint.drag' : '將上方各音軌播放器拖至<strong>音頻音軌</strong>以導入。不支持拖至 MIDI 音軌進行音軌分離。' ,
'kgone.separator.hint.noRegion.download' : '請下載 {model},然後在時間軸上選擇一個音頻區域以提取音軌。' ,
'kgone.separator.hint.noRegion.select' : '請在時間軸上選擇一個音頻區域以提取音軌。僅支持音頻區域——MIDI 區域不可分離。' ,
'kgone.separator.btn.separateStems' : '分離音軌' ,
'kgone.separator.btn.importAllStems' : '將所有音軌導入時間軸' ,
'kgone.separator.poweredBy' : 'UVR5 CLI' ,
'kgone.separator.model.vocalInstMedium' : '人聲與樂器(中等精度)' ,
'kgone.separator.model.vocalInstHigh' : '人聲與樂器(高精度)' ,
'kgone.separator.model.6stem' : '人聲、鼓、貝斯、吉他、鋼琴及其他' ,
'kgone.separator.model.htdemucs4s' : '人聲、鼓、貝斯及其他' ,
'kgone.separator.btn.server.loadingModel' : '加載模型中...' ,
'kgone.separator.btn.server.generating' : '準備上傳...' ,
'kgone.separator.btn.server.polling' : '正在分離音軌...' ,
'kgone.separator.btn.server.downloading' : '下載中...' ,
'kgone.separator.btn.local.loadingModel' : '準備本地模型...' ,
'kgone.separator.btn.local.generating' : '準備音頻...' ,
'kgone.separator.btn.local.polling' : '本地分離中...' ,
'kgone.separator.btn.local.downloading' : '收尾處理...' ,
'kgone.separator.local.title' : '本地分離模式' ,
'kgone.separator.local.description' : '如果 K.G.One Music Studio 不可用,本地分離模式提供了一種直接在瀏覽器中提取音軌的內置替代方案。提供兩種本地模型:人聲與樂器(中等精度),以及人聲、鼓、貝斯及其他。下方的下載狀態反映當前選定的模型。人聲與樂器(中等精度)的處理時間通常比人聲、鼓、貝斯及其他更長,總處理時間仍取決於您的硬件配置。如果處理回退至 CPU,分離運行期間頁面響應可能暫時變慢。' ,
'kgone.separator.local.learnMore' : '了解更多關於 K.G.One Music Studio 服務器集成的信息。' ,
'kgone.separator.local.provider' : '當前設備:' ,
'kgone.separator.local.model' : '模型:' ,
'kgone.separator.local.downloaded' : '已下載' ,
'kgone.separator.local.notDownloaded' : '未下載' ,
'kgone.separator.local.checkingCache' : '正在檢查本地模型緩存...' ,
'kgone.separator.local.btn.download' : '下載所選模型' ,
'kgone.separator.local.btn.downloading' : '模型下載中...' ,
'kgone.separator.local.btn.redownload' : '重新下載模型' ,
'kgone.separator.local.btn.redownloading' : '重新下載中...' ,
'kgone.separator.local.btn.deleteCache' : '刪除已緩存模型' ,
'kgone.separator.local.btn.deleting' : '刪除中...' ,
'kgone.separator.local.progress.downloading' : '正在下載 {name}...' ,
'kgone.separator.local.progress.downloadingWithSize' : '正在下載 {name}... {received} / {total} MB' ,
'kgone.separator.local.progress.downloadingMbOnly' : '正在下載 {name}... {received} MB' ,
'kgone.separator.local.progress.ready' : '{name} 已就緒。' ,
'kgone.separator.local.progress.preparingRuntime' : '正在準備 ONNX 運行時環境...' ,
'kgone.separator.local.progress.readingAudio' : '正在讀取音頻文件...' ,
'kgone.separator.local.progress.running' : '正在瀏覽器中執行分離...' ,
'kgone.separator.local.progress.complete' : '分離完成。' ,
'openProjectModal.title' : '打開項目' ,
'openProjectModal.close' : '關閉' ,
'openProjectModal.loading' : '正在加載項目...' ,
'openProjectModal.date.unknown' : '未知' ,
'openProjectModal.filter.placeholder' : '篩選項目...' ,
'openProjectModal.viewToggle.projects' : '項目' ,
'openProjectModal.viewToggle.trash' : '回收站' ,
'openProjectModal.trash.hint' : '已刪除的項目將在 30 天後自動移除。' ,
'openProjectModal.sort.name' : '名稱' ,
'openProjectModal.sort.created' : '創建時間' ,
'openProjectModal.sort.updated' : '更新時間' ,
'openProjectModal.empty.trash' : '回收站為空' ,
'openProjectModal.empty.noProjects' : '暫無已保存的項目' ,
'openProjectModal.empty.noMatch' : '沒有符合篩選條件的項目' ,
'openProjectModal.meta.created' : '創建於 {date}' ,
'openProjectModal.meta.updated' : '更新於 {date}' ,
'openProjectModal.meta.deleted' : '刪除於 {date}' ,
'openProjectModal.action.open' : '打開' ,
'openProjectModal.action.duplicate' : '複製' ,
'openProjectModal.action.delete' : '刪除' ,
'openProjectModal.action.restore' : '恢復' ,
'openProjectModal.action.deletePermanently' : '永久刪除' ,
'openProjectModal.dialog.duplicateName' : '請輸入複製項目的名稱:' ,
'openProjectModal.dialog.invalidName' : '項目名稱無效。只允許使用字母、數字、空格、連字符、下劃線、句號和括號。' ,
'openProjectModal.dialog.duplicateError' : '複製項目失敗:{error}' ,
'openProjectModal.dialog.deleteError' : '刪除項目失敗:{error}' ,
'openProjectModal.dialog.restoreError' : '恢復項目失敗:{error}' ,
'openProjectModal.dialog.confirmPermanentDelete' : '確定要永久刪除"{name}"嗎?\n\n此操作無法撤銷。' ,
'openProjectModal.dialog.permanentDeleteError' : '永久刪除項目失敗:{error}' ,
} ;