chore(i18n): unify Traditional Chinese wording across UI and docs

This commit is contained in:
Xiaohan-Tian
2026-05-31 12:29:10 -07:00
parent e1f8e69ce3
commit f58d9a85b0
10 changed files with 261 additions and 261 deletions
+165 -165
View File
@@ -3,16 +3,16 @@ import { enUsMessages } from './en_us';
export const zhHkMessages: TranslationMessages = {
...enUsMessages,
'app.loading': '載中...',
'app.loading': '載中...',
'assistant.displayName': 'K.G.Studio 音樂創作助手',
'assistant.welcomeFallback': '歡迎使用 K.G.Studio 音樂創作助手。',
'mainContent.createTrack': '建立音軌',
'mainContent.showGlobalTracks': '顯示全域音軌',
'status.chordGuideCandidate': '和弦指導候選: {name} - {notes} - {note}',
'settings.sidebar.title': '設',
'settings.sidebar.close': '關閉設',
'settings.sidebar.title': '設',
'settings.sidebar.close': '關閉設',
'settings.sidebar.general': '通用',
'settings.sidebar.audioIo': '音 I/O',
'settings.sidebar.audioIo': '音 I/O',
'settings.sidebar.behavior': '行為',
'settings.sidebar.templates': '模板',
'settings.sidebar.chordGuide': '和弦指導',
@@ -22,7 +22,7 @@ export const zhHkMessages: TranslationMessages = {
'settings.general.language.auto': '自動',
'settings.yes': '是',
'settings.no': '否',
'settings.restoreDefault': '恢復默認',
'settings.restoreDefault': '恢復預設',
'settings.deleteCachedModel': '刪除已緩存模型',
'settings.deleting': '刪除中...',
'settings.general.llmProvider.section': 'LLM 提供方',
@@ -32,7 +32,7 @@ export const zhHkMessages: TranslationMessages = {
'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.persistKeys.help': '啟用後,即使在非 localhost 環境下,API Key 也會存到瀏覽器儲存空間中。警告:這可能增加 XSS 攻擊帶來的安全風險。',
'settings.general.localRuntime.cachedStatus': '緩存模型狀態',
'settings.general.localRuntime.cacheChecking': '正在檢查本地模型緩存...',
'settings.general.localRuntime.cacheDownloaded': '已下載到瀏覽器緩存。',
@@ -52,7 +52,7 @@ export const zhHkMessages: TranslationMessages = {
'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.persisted': '密鑰會存在本地(瀏覽器中的 IndexedDB)。',
'settings.general.keys.sessionOnly': '出於安全考慮,在非本地主機環境下密鑰不會持久化,只保留在當前會話內存中。',
'settings.general.claudeOpenRouter.section': 'Anthropic Claude(通過 OpenRouter',
'settings.general.claudeOpenRouter.keyPlaceholder': '輸入您的 Claude API Key',
@@ -63,39 +63,39 @@ export const zhHkMessages: TranslationMessages = {
'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.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.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用於整曲生成、片段生成和分軌。',
'settings.audioIo.title': '音 I/O',
'settings.general.kgone.serverBaseUrl': '服器基礎 URL',
'settings.general.kgone.serverBaseUrlHelp': '正在運行的 K.G.One Music Studio 服器基礎 URL用於整曲生成、片段生成和分軌。',
'settings.audioIo.title': '音 I/O',
'settings.audioIo.deviceRouting': '裝置路由',
'settings.audioIo.refresh': '重新整理裝置清單',
'settings.audioIo.refreshing': '重新整理中…',
'settings.audioIo.description': '選擇 KGStudio 用於錄音與播放的裝置。輸入裝置的變更會在下一次錄音時生效。輸出裝置的變更在 v1 中需要重新整理頁面後生效。',
'settings.audioIo.inputDevice': '音輸入裝置',
'settings.audioIo.outputDevice': '音輸出裝置',
'settings.audioIo.inputDevice': '音輸入裝置',
'settings.audioIo.outputDevice': '音輸出裝置',
'settings.audioIo.inputHelp': '變更會在下一次錄音時生效。如果所選裝置被移除,KGStudio 會回退到系統預設裝置。',
'settings.audioIo.outputHelp': '在 v1 中,輸出裝置變更需要重新整理頁面。瀏覽器對非預設輸出路由的支援有限,因此在不支援時 KGStudio 會繼續使用系統預設裝置。',
'settings.audioIo.outputSinkUnsupported': '此瀏覽器未提供可靠的即時 Web Audio 輸出切換能力。非預設輸出裝置選擇僅屬盡力而為,最終可能仍會使用系統預設裝置。',
'settings.audioIo.chooseOutputDevice': '選擇輸出裝置…',
'settings.audioIo.previousSelectedInput': '先前選擇的輸入裝置(需要權限才能驗證)',
'settings.audioIo.previousSelectedOutput': '先前選擇的輸出裝置(需要權限才能驗證)',
'settings.audioIo.status.inputUnavailable': '先前選擇的音輸入裝置不可用;將使用系統預設裝置。',
'settings.audioIo.status.outputUnavailable': '先前選擇的音輸出裝置不可用;將使用系統預設裝置。',
'settings.audioIo.status.refreshed': '音裝置清單已重新整理。',
'settings.audioIo.status.readFailed': '無法從瀏覽器讀取音裝置。',
'settings.audioIo.status.inputDefaultNextSession': '音輸入將在下一次錄音時使用系統預設裝置。',
'settings.audioIo.status.inputChangedNextSession': '音輸入將在下一次錄音時切換。',
'settings.audioIo.status.outputDefaultAfterRefresh': '重新整理後音輸出將使用系統預設裝置。',
'settings.audioIo.status.outputSavedRefreshRequired': '音輸出裝置已儲存。在 v1 中請重新整理頁面以套用。',
'settings.audioIo.status.outputPromptUnsupported': '此瀏覽器不支援彈出音輸出裝置選擇。',
'settings.audioIo.status.inputUnavailable': '先前選擇的音輸入裝置不可用;將使用系統預設裝置。',
'settings.audioIo.status.outputUnavailable': '先前選擇的音輸出裝置不可用;將使用系統預設裝置。',
'settings.audioIo.status.refreshed': '音裝置清單已重新整理。',
'settings.audioIo.status.readFailed': '無法從瀏覽器讀取音裝置。',
'settings.audioIo.status.inputDefaultNextSession': '音輸入將在下一次錄音時使用系統預設裝置。',
'settings.audioIo.status.inputChangedNextSession': '音輸入將在下一次錄音時切換。',
'settings.audioIo.status.outputDefaultAfterRefresh': '重新整理後音輸出將使用系統預設裝置。',
'settings.audioIo.status.outputSavedRefreshRequired': '音輸出裝置已儲存。在 v1 中請重新整理頁面以套用。',
'settings.audioIo.status.outputPromptUnsupported': '此瀏覽器不支援彈出音輸出裝置選擇。',
'settings.audioIo.status.outputSelectedRefreshRequired': '已選擇輸出裝置。請重新整理頁面以在 v1 中套用。',
'settings.audioIo.status.outputSelectionDenied': '瀏覽器不允許選擇非預設輸出裝置。',
'settings.behavior.title': '行為',
@@ -106,9 +106,9 @@ export const zhHkMessages: TranslationMessages = {
'settings.behavior.spectrogramHeightResolutionHelp': '控制可見音高範圍內的頻譜圖垂直細節。較高的值會讓音高輪廓更清晰,但在計算頻譜圖時會消耗更多 CPU 與記憶體。',
'settings.behavior.chatBox': '聊天框',
'settings.behavior.openAtStartup': '啟動時開啟',
'settings.behavior.audio': '音',
'settings.behavior.audio': '音',
'settings.behavior.lookaheadTime': '前瞻時間(ms',
'settings.behavior.lookaheadTimeHelp': '音排程前瞻時間(0-500ms)。較低的值(10-20ms)可降低 MIDI 輸入延遲,但在較慢的系統上可能造成音卡頓。較高的值(100ms 以上)更有利於播放穩定性。變更會立即生效,無需重新啟動。',
'settings.behavior.lookaheadTimeHelp': '音排程前瞻時間(0-500ms)。較低的值(10-20ms)可降低 MIDI 輸入延遲,但在較慢的系統上可能造成音卡頓。較高的值(100ms 以上)更有利於播放穩定性。變更會立即生效,無需重新啟動。',
'settings.behavior.playbackDelay': '播放延遲(ms',
'settings.behavior.playbackDelayHelp': '按下開始按鈕後,播放會有一個很短的延遲(0-500ms)。增加此值可能有助於穩定播放,特別是在前瞻值較低時的前幾個節拍。變更會立即生效,無需重新啟動。',
'settings.behavior.midiAutomationInterpolation': 'MIDI 自動化插值',
@@ -119,9 +119,9 @@ export const zhHkMessages: TranslationMessages = {
'settings.behavior.midiInputLatency': 'MIDI 輸入延遲(ms',
'settings.behavior.midiInputLatencyHelp': '用於 MIDI 錄音的時間校正(0-500ms)。如果錄下來的音符比您實際想演奏的位置略晚,可以增加此值以匹配您的 MIDI 裝置輸入延遲。每個音符在提交時都會向前回移這段時間。',
'settings.behavior.bounceStartsFromBeat1': '匯出從第 1 拍開始',
'settings.behavior.bounceStartsFromBeat1Help': '選擇「是」時,匯出 WAV/MP3 會包含從歌曲開頭到第一個被渲染區域之前的前導靜音。選擇「否」時,會裁掉這段前導靜音,並從第一個被渲染的音符或音區域開始匯出。',
'settings.behavior.captureAudioForScreenSharing': '為螢幕分享擷取音',
'settings.behavior.captureAudioForScreenSharingHelp': '需要重新啟動 KGStudio(重新整理頁面)後生效。當在視會議中分享螢幕時,如果 KGStudio 的音無法被擷取,請啟用此選項(例如 Zoom、Teams)。這會建立一個額外的音串流,供螢幕擷取應用程式偵測。',
'settings.behavior.bounceStartsFromBeat1Help': '選擇「是」時,匯出 WAV/MP3 會包含從歌曲開頭到第一個被渲染區域之前的前導靜音。選擇「否」時,會裁掉這段前導靜音,並從第一個被渲染的音符或音區域開始匯出。',
'settings.behavior.captureAudioForScreenSharing': '為螢幕分享擷取音',
'settings.behavior.captureAudioForScreenSharingHelp': '需要重新啟動 KGStudio(重新整理頁面)後生效。當在視會議中分享螢幕時,如果 KGStudio 的音無法被擷取,請啟用此選項(例如 Zoom、Teams)。這會建立一個額外的音串流,供螢幕擷取應用程式偵測。',
'settings.behavior.captureAudioForScreenSharingWarning': '在 Zoom 中分享螢幕時,請務必確認已啟用「Share Sound」選項。',
'settings.behavior.validation.lookahead.invalidNumber': '前瞻時間必須是有效數字',
'settings.behavior.validation.lookahead.range': '前瞻時間必須在 0 到 0.5 秒之間(0-500ms',
@@ -160,10 +160,10 @@ export const zhHkMessages: TranslationMessages = {
'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.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': '穩定性',
@@ -179,16 +179,16 @@ export const zhHkMessages: TranslationMessages = {
'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.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.scope.global': '全',
'eventList.deleteVisibleSelectedRows': '刪除當前可見的已選行',
'eventList.table.position': '位置',
'eventList.table.status': '狀態',
@@ -199,11 +199,11 @@ export const zhHkMessages: TranslationMessages = {
'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.empty': '請選擇一個 MIDI 區域,或先在 Piano Roll 中開啟一個區域,再查看事件列表。',
'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': '控制器',
@@ -215,25 +215,25 @@ export const zhHkMessages: TranslationMessages = {
'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.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.audio': '音',
'eventList.track.status.midi': 'MIDI',
'eventList.track.status.volume': '音量',
'eventList.track.status.pan': '聲像',
'eventList.global.filters': '全事件篩選',
'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.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': '調號',
@@ -246,16 +246,16 @@ export const zhHkMessages: TranslationMessages = {
'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.position': '請輸入專案起點或之後的位置。需要非負位置。示例:1 1 0',
'eventList.global.validation.length': '請輸入正長度。需要大於零的時值。示例:4 0',
'globalTracks.label': '全軌道',
'globalTracks.label': '全軌道',
'globalTracks.marker': '標記',
'globalTracks.tempo': '速度',
'globalTracks.signature': '調號',
'globalTracks.chord': '和弦',
'globalTracks.addItem': '添加 {label} 全軌道項目',
'globalTracks.addItem': '新增 {label} 全軌道項目',
'pianoRoll.power.linear': '線性',
'pianoRoll.power.sqrtDefault': '√(默認',
'pianoRoll.power.sqrtDefault': '√(預設',
'pianoRoll.power.mild': '輕度',
'pianoRoll.power.strong': '強烈',
'pianoRoll.chordGuide.off': '關閉和弦指導',
@@ -407,42 +407,42 @@ export const zhHkMessages: TranslationMessages = {
'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.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.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': '停止播放失敗',
@@ -453,44 +453,44 @@ export const zhHkMessages: TranslationMessages = {
'toolbar.bpm.prompt': '輸入新的 BPM{min}-{max}):',
'toolbar.bpm.invalid': 'BPM 無效。請輸入 {min} 到 {max} 之間的值。',
'toolbar.status.bpmChanged': 'BPM 已改為 {value}',
'toolbar.timeSignature.prompt': '設拍號:',
'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.copied': '專案已複製到剪貼簿',
'toolbar.status.copyNone': '沒有可複製的已選專案',
'toolbar.status.pasted': '已從剪貼簿貼上專案',
'toolbar.status.pasteFailed': '無法貼上,沒有有效的剪貼簿內容或上下文',
'toolbar.status.deleted': '已刪除所選區域',
'toolbar.status.deleteNone': '沒有選中可刪除的區域',
'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.chatToggled': '聊天窗已切換',
'toolbar.status.settingsToggled': '設面板已切換',
'toolbar.pianoRoll.selectMidiRegion': '請先選擇一個 MIDI 區域,再開啟 Piano Roll。',
'toolbar.status.recordingStopped': '錄音已停止',
'toolbar.status.audioRecordingStarted': '音錄音已開始...',
'toolbar.recording.openMidiRegion': '開始錄音前,請先在鋼琴卷簾中打開一個 MIDI 區域。',
'toolbar.status.audioRecordingStarted': '音錄音已開始...',
'toolbar.recording.openMidiRegion': '開始錄音前,請先在 Piano Roll 中開啟一個 MIDI 區域。',
'toolbar.recording.selectMidiRegion': '開始錄音前,請先選擇一個 MIDI 區域。',
'toolbar.recording.noMidiDevice': '未檢測到 MIDI 設備。請連接 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.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.mergeRegions': '合併已選取的 MIDI 區域',
'toolbar.button.snapToGrid': '吸附到網格',
'toolbar.button.copy': '複製',
'toolbar.button.paste': '貼',
'toolbar.button.paste': '貼',
'toolbar.button.delete': '刪除',
'toolbar.button.backToBeginning': '回到開頭',
'toolbar.button.play': '播放',
@@ -507,18 +507,18 @@ export const zhHkMessages: TranslationMessages = {
'track.controls.automationDropdown': '自動化',
'track.controls.automation.volume': '音量',
'track.controls.automation.pan': '聲像',
'track.controls.settingsDropdown': '設',
'track.controls.settingsDropdown': '設',
'track.controls.settings.deleteTrack': '刪除音軌',
'toolbar.keySignatureChooser': '選擇調號,當前為 {value}',
'toolbar.export.label': '出',
'toolbar.importProject.title': '導入項目',
'toolbar.importProject.description': '將項目文件拖放到這裡',
'toolbar.openingProject': '正在打開項目...',
'fileImport.invalidType': '文件類型無效。請選擇以下擴展名之一的文件{extensions}',
'fileImport.close': '關閉入彈窗',
'fileImport.supportedFormats': '支的格式:{formats}',
'toolbar.export.label': '出',
'toolbar.importProject.title': '匯入專案',
'toolbar.importProject.description': '將專案檔案拖放到這裡',
'toolbar.openingProject': '正在開啟專案...',
'fileImport.invalidType': '檔案類型無效。請選擇以下副檔名之一的檔案{extensions}',
'fileImport.close': '關閉入彈窗',
'fileImport.supportedFormats': '支的格式:{formats}',
'fileImport.or': '或',
'fileImport.browse': '瀏覽文件',
'fileImport.browse': '瀏覽檔案',
'instrument.group.PIANO_AND_KEYBOARDS': '鋼琴與鍵盤',
'instrument.group.GUITAR': '吉他',
'instrument.group.BASS': '貝斯',
@@ -603,9 +603,9 @@ export const zhHkMessages: TranslationMessages = {
'kgone.tab.remix': '混音',
'kgone.tab.repaint': '重繪',
'kgone.tab.separator': '分離',
'kgone.tab.requiresServer': '需要 K.G.One Music Studio 服務器集成',
'kgone.tab.requiresServer': '需要 K.G.One Music Studio 伺服器整合',
// Shared across tabs
'kgone.shared.advancedSettings': '高級設置',
'kgone.shared.advancedSettings': '進階設定',
'kgone.shared.caption': '描述',
'kgone.shared.lyrics': '歌詞',
'kgone.shared.lyricsPlaceholder': '[Verse 1]\n在這裡輸入歌詞...\n\n[Chorus]\n...',
@@ -617,16 +617,16 @@ export const zhHkMessages: TranslationMessages = {
'kgone.shared.thinking': '思考模式(CoT 元數據生成)',
'kgone.shared.selectedRegion': '已選區域',
'kgone.shared.track': '音軌',
'kgone.shared.poweredBy': '技術支',
'kgone.shared.btn.loadingModel': '載模型中...',
'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.btn.importing': '入中...',
'kgone.shared.hint.loadingModel': '正在載入模型,此過程可能需要 60 秒以上,請耐心等...',
'kgone.shared.hint.submitting': '正在提交生成請求...',
'kgone.shared.hint.downloadingAudio': '正在下載音...',
'kgone.shared.hint.downloadingAudio': '正在下載音...',
// Clip tab
'kgone.clip.field.prompt': '提示詞',
'kgone.clip.field.promptPlaceholder': '例:粗糙, 酸性, 貝斯線, 303, 合成主音, FM, 次低音, 中高頻, 高頻相位, 高頻混響, 彎音, 8小節, 140 BPM, E 小調',
@@ -649,7 +649,7 @@ export const zhHkMessages: TranslationMessages = {
'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.hint.drag': '將上方播放器拖至音軌以入片段。拖到<strong>音音軌</strong>可作為 WAV 區域入(推薦),拖到<strong>MIDI 音軌</strong>可作為 MIDI 區域入。注意:MIDI 是從音轉錄而來,未必完全準確。',
'kgone.clip.btn.generate': '生成片段',
'kgone.clip.poweredBy': 'Foundation-1',
// Full Song tab
@@ -659,7 +659,7 @@ export const zhHkMessages: TranslationMessages = {
'kgone.fullSong.hint.generating': '生成中...',
'kgone.fullSong.hint.generatingProgress': '生成中... {pct}% — {stage}',
'kgone.fullSong.hint.generatingProgressNoStage': '生成中... {pct}%',
'kgone.fullSong.hint.drag': '將上方播放器拖至<strong>音音軌</strong>以入歌曲。完整歌曲生成不支拖至 MIDI 音軌。',
'kgone.fullSong.hint.drag': '將上方播放器拖至<strong>音音軌</strong>以入歌曲。完整歌曲生成不支拖至 MIDI 音軌。',
'kgone.fullSong.btn.generate': '生成歌曲',
'kgone.fullSong.poweredBy': 'ACE-Step 1.5',
// Remix tab
@@ -674,18 +674,18 @@ export const zhHkMessages: TranslationMessages = {
'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.hint.drag': '將上方播放器拖至<strong>音音軌</strong>以入混音。',
'kgone.remix.hint.noRegion': '請在時間軸上選擇一個音區域以進行混音。僅支援音訊區域,MIDI 區域不可混音。',
'kgone.remix.btn.generate': '生成混音',
'kgone.remix.btn.processingRemix': '處理混音中...',
'kgone.remix.btn.importAligned': '對齊源區域並入',
'kgone.remix.btn.importAligned': '對齊源區域並入',
'kgone.remix.poweredBy': 'ACE-Step 1.5',
// Repaint tab
'kgone.repaint.field.repaintRange': '重繪範圍',
'kgone.repaint.field.loopModeOff': '循環模式已關閉。請啟用工具上的循環按鈕並設循環範圍以定義重繪窗。',
'kgone.repaint.field.loopModeOff': '循環模式已關閉。請啟用工具上的循環按鈕並設循環範圍以定義重繪窗。',
'kgone.repaint.field.start': '開始',
'kgone.repaint.field.end': '結束',
'kgone.repaint.field.untilEnd': '直至音頻末尾',
'kgone.repaint.field.untilEnd': '直到音訊結尾',
'kgone.repaint.field.captionPlaceholder': '例:風格:爵士,感覺:流暢悠揚,編排:鋼琴、立式貝斯、刷式鼓...',
'kgone.repaint.field.captionHint': '描述重繪段落的目標風格和編排。',
'kgone.repaint.field.lyricsHint': '留空則保留原歌詞,或為重繪段落提供新歌詞。',
@@ -695,39 +695,39 @@ export const zhHkMessages: TranslationMessages = {
'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.hint.drag': '將上方播放器拖至<strong>音音軌</strong>以入重繪結果。',
'kgone.repaint.hint.noRegion': '請在時間軸上選擇一個音區域以進行重繪。僅支援音訊區域,MIDI 區域不可重繪。',
'kgone.repaint.btn.generate': '生成重繪',
'kgone.repaint.btn.processingRepaint': '處理重繪中...',
'kgone.repaint.btn.importAligned': '對齊源區域並入',
'kgone.repaint.btn.importAligned': '對齊源區域並入',
'kgone.repaint.poweredBy': 'ACE-Step 1.5',
// Separator tab
'kgone.separator.field.separationModel': '分離模型',
'kgone.separator.field.chunkDuration': '可選音分塊時長(秒)',
'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.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.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.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.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.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': '未下載',
@@ -743,37 +743,37 @@ export const zhHkMessages: TranslationMessages = {
'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.readingAudio': '正在讀取音訊檔案...',
'kgone.separator.local.progress.running': '正在瀏覽器中執行分離...',
'kgone.separator.local.progress.complete': '分離完成。',
'openProjectModal.title': '打開項目',
'openProjectModal.title': '開啟專案',
'openProjectModal.close': '關閉',
'openProjectModal.loading': '正在加載項目...',
'openProjectModal.loading': '正在載入專案...',
'openProjectModal.date.unknown': '未知',
'openProjectModal.filter.placeholder': '篩選項目...',
'openProjectModal.viewToggle.projects': '項目',
'openProjectModal.filter.placeholder': '篩選專案...',
'openProjectModal.viewToggle.projects': '專案',
'openProjectModal.viewToggle.trash': '回收站',
'openProjectModal.trash.hint': '已刪除的項目將在 30 天後自動移除。',
'openProjectModal.trash.hint': '已刪除的專案將在 30 天後自動移除。',
'openProjectModal.sort.name': '名稱',
'openProjectModal.sort.created': '建時間',
'openProjectModal.sort.created': '建時間',
'openProjectModal.sort.updated': '更新時間',
'openProjectModal.empty.trash': '回收站為空',
'openProjectModal.empty.noProjects': '暫無已存的項目',
'openProjectModal.empty.noMatch': '沒有符合篩選條件的項目',
'openProjectModal.meta.created': '建於 {date}',
'openProjectModal.empty.noProjects': '暫無已存的專案',
'openProjectModal.empty.noMatch': '沒有符合篩選條件的專案',
'openProjectModal.meta.created': '建於 {date}',
'openProjectModal.meta.updated': '更新於 {date}',
'openProjectModal.meta.deleted': '刪除於 {date}',
'openProjectModal.action.open': '開',
'openProjectModal.action.open': '開',
'openProjectModal.action.duplicate': '複製',
'openProjectModal.action.delete': '刪除',
'openProjectModal.action.restore': '恢復',
'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.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}',
'openProjectModal.dialog.permanentDeleteError': '永久刪除專案失敗:{error}',
};