Merge branch 'PR_73_localization' into localization

This commit is contained in:
Sakamoto Shiina
2025-12-31 15:00:39 +09:00
3 changed files with 230 additions and 224 deletions

2
.gitignore vendored
View File

@@ -15,6 +15,8 @@ error.log
VRCT.zip
VRCT_cuda.zip
.qoder/
# Added by WebUI migration
# Logs
logs

View File

@@ -7,14 +7,14 @@ common:
go_back_button_label: "返回"
common_error:
no_device_mic: # 未检测到他人语音 ?
no_device_speaker: # 未检测到他人语音 ?
threshold_invalid_value: # 数值应为 {{min}} 至 {{max}} 之间。 ? 设定的数值从 {{min}} 到 {{max}} ?
failed_download_weight_ctranslate2:
failed_download_weight_whisper:
translation_limit:
deepl_auth_key_invalid_length:
deepl_auth_key_failed_authentication: "授权密错误或已达API使用上限"
no_device_mic: "未检测到麦克风设备。"
no_device_speaker: "未检测到扬声器设备。"
threshold_invalid_value: "可设置的数值范围为 {{min}} 到 {{max}}。"
failed_download_weight_ctranslate2: "CTranslate2 模型下载失败。"
failed_download_weight_whisper: "Whisper 模型下载失败。"
translation_limit: "已达到翻译引擎使用限制或临时受到使用限制。"
deepl_auth_key_invalid_length: "授权密钥字符数错误。"
deepl_auth_key_failed_authentication: "授权密错误或已达API使用上限"
invalid_value_mic_record_timeout: "数值应为 0 至 「{{mic_phrase_timeout_label}}」"
invalid_value_mic_phrase_timeout: "转录间隔时间大于0秒且不能小于「{{mic_record_timeout_label}}」"
@@ -25,7 +25,7 @@ common_error:
invalid_value_speaker_max_phrase: "数值应为 0 以上"
common_warning:
unable_to_use_osc_query:
unable_to_use_osc_query: "由于 OSC IP Address 的设置无法接收 OSC 数据,以下功能已自动禁用。"
main_page:
translation: "翻译"
@@ -42,7 +42,7 @@ main_page:
translator_label_default: "默认"
translator_selector:
is_selected_same_language:
is_selected_same_language: "「{{your_language}}」和「{{target_language}}」选择了相同的语言,因此只能使用「{{ctranslate2}}」。"
message_log:
all: "全部"
@@ -50,7 +50,7 @@ main_page:
received: "接受"
system: "系统"
resend_button_on_hover_desc:
resend_button_on_hover_desc: "长按发送"
state_text_enabled: "启用"
state_text_disabled: "停用"
@@ -63,42 +63,44 @@ main_page:
updating: "更新中..."
update_modal:
cpu_desc:
cuda_desc:
cuda_compare_cpu_desc:
cuda_disk_space_desc:
close_modal:
download_latest_and_restart:
is_latest_version_already:
is_current_compute_device:
cpu_desc: "仅使用 CPU 作为处理设备"
cuda_desc: "可选择 CPU 和 NVIDIA GPU 作为处理设备"
cuda_compare_cpu_desc: "选择 GPU 时,与 CPU 相比处理更快"
cuda_disk_space_desc: "需要约 {{size}} 的磁盘空间"
close_modal: "关闭"
download_latest_and_restart: "将下载最新版本,\n应用程序将自动重启。"
is_latest_version_already: "已在使用最新版本"
is_current_compute_device: "当前使用的版本"
config_page:
common:
version: "版本 {{version}}"
model_download_button_label:
model_download_button_label: "下载"
compute_device:
desc:
label_device:
label_type:
type_template_auto:
type_template_low:
type_template_high:
desc: "各处理类型的精度和速度会因机器规格不同而有所差异,可能与显示顺序不同,请作为大致参考。"
label_device: "处理设备"
label_type: "处理类型"
type_template_auto: "自动"
type_template_low: "{{type_name}} (精度较低,处理较快)"
type_template_high: "{{type_name}} (精度较高,处理较慢)"
warning_labels:
unable_to_use_osc_query: "由于 OSC IP Address 的设置无法接收 OSC 数据,目前无法使用此功能。"
side_menu_labels:
device:
device: "设备"
appearance: "外观"
translation: "翻译"
transcription: "转录"
transcription: "语音识别"
others: "其他"
hotkeys:
plugins:
hotkeys: "快捷键"
plugins: "插件"
advanced_settings: "高级设置"
device:
check_volume: "Check Volume"
label_auto_select: "Auto Select"
label_host: "Host/Driver"
label_device: "Device"
check_volume: "音量检查"
label_auto_select: "自动选择"
label_host: "主机/驱动程序"
label_device: "设备"
mic_host_device:
label: "麦克风 (设备)"
mic_dynamic_energy_threshold:
@@ -129,8 +131,8 @@ config_page:
show: "显示"
show_and_disable_enter_key: "显示,并且停用‘回车发送信息’"
show_resend_button:
label:
desc:
label: "显示重新发送按钮"
desc: "鼠标悬停在已发送消息日志上时,会显示重新发送按钮。点击进入编辑模式,长按重新发送。"
font_family:
label: "字体"
ui_language:
@@ -143,19 +145,19 @@ config_page:
small: "普通模型 ({{capacity}})"
large: "高精度模型 ({{capacity}})"
translation_compute_device:
label:
label: "AI 翻译的处理设备"
deepl_auth_key:
label: "DeepL 授权密匙"
desc: "在使用的时候,使用时请在主屏幕上通过 DeepL_API 选择 {{translator}}\n※某些语言可能不支持"
open_auth_key_webpage: "打开DeepL账号页面"
save:
edit:
save: "保存"
edit: "编辑"
auth_key_success: "授权密匙认证完成。"
transcription:
section_label_mic: "你的麦克风"
section_label_speaker: "他人声音"
section_label_transcription_engines:
section_label_mic: "麦克风"
section_label_speaker: "扬声器"
section_label_transcription_engines: "语音识别引擎"
mic_record_timeout:
label: "语音输入结束后的静音时间"
desc: "当检测到静音并经过设定的秒数后,语音输入即被视为完成。"
@@ -180,22 +182,22 @@ config_page:
label: "语音接收时的最小单词数"
desc: "转录字数的下限,只有超过这个数字,才会记录转录结果"
select_transcription_engine:
label:
label: "语音识别使用的引擎"
whisper_weight_type:
label: "选择某个Whisper型"
desc:
label: "Whisper 模型类型"
desc: "容量越大的模型精度越高,但会占用更多 CPU/GPU 资源。\n※特别是比 medium 更大的模型,根据 CPU/GPU 性能可能难以使用。"
model_template: "{{model_name}} 模型 ({{capacity}})"
recommended_model_template: "{{model_name}} 模型 ({{capacity}}) (推荐)"
transcription_compute_device:
label:
label: "AI 语音识别使用的处理设备"
vr:
single_line:
multi_lines:
overlay_enable:
single_line: "单行"
multi_lines: "多行"
overlay_enable: "启用"
restore_default_settings: "恢复默认设置"
position:
rotation:
position: "位置"
rotation: "旋转"
x_position: "X轴(左右)"
y_position: "Y轴(上下)"
z_position: "Z轴(前后)"
@@ -203,24 +205,24 @@ config_page:
y_rotation: "Y轴旋转"
z_rotation: "Z轴旋转"
sample_text_button:
start:
stop:
sample_text:
start: "向 Overlay\n发送示例文本"
stop: "停止发送"
sample_text: "示例文本"
opacity: "透明度"
ui_scaling: "大小"
display_duration: "显示持续时间"
fadeout_duration: "渐隐持续时间"
common_settings:
tracker:
hmd:
left_hand:
right_hand:
common_settings: "通用设置"
tracker: "显示追踪器的位置"
hmd: "HMD"
left_hand: "左手"
right_hand: "右手"
overlay_show_only_translated_messages:
label:
label: "仅显示翻译后的消息"
others:
section_label_sounds:
section_label_message_formats:
section_label_sounds: "声音"
section_label_message_formats: "消息格式"
auto_clear_the_message_box:
label: "发言后自动清空chatbox"
send_only_translated_messages:
@@ -235,60 +237,60 @@ config_page:
label: "发送信息至VRChat"
desc: "不发送信息至VRChat的情况下也能使用它,但该功能现在并未完成.在想要发送信息时,请不要忘记打开这个功能."
notification_vrc_sfx:
label:
desc:
label: "发送聊天时播放聊天框的通知音"
desc: "禁用此功能后,将不会播放其他人能听到的聊天框通知音,静默发送。"
send_received_message_to_vrc:
label:
desc:
label: "将接收到的消息发送到 VRChat"
desc: "将从扬声器听到并转录的消息发送到 VRChat。"
message_format_common:
example_view:
title:
original_translated:
original_translated_multi:
translated_only_multi:
translated_only:
original_only:
title: "预览"
original_translated: "原文 + 翻译"
original_translated_multi: "原文 + 翻译(多语言)"
translated_only_multi: "仅翻译(多语言)"
translated_only: "仅翻译"
original_only: "仅原文"
settings:
title:
original:
translated:
for_multi_translation:
title: "设置"
original: "原文"
translated: "翻译"
for_multi_translation: "多语言翻译用"
send_message_format:
label:
desc:
label: "消息格式(发送)"
desc: "可以更改在 VRChat 中对方实际看到的格式。"
received_message_format:
label:
desc:
label: "消息格式Speaker2Chatbox"
desc: "目前用于通过 Speaker2Chatbox 发送时的显示。"
common_convert_message_hiragana_romaji:
desc_1:
desc_2:
desc_1: "仅在选择日语作为翻译语言时支持。"
desc_2: "由于日语的特殊性,精度有限。"
convert_message_to_romaji:
label:
desc:
label: "显示罗马音"
desc: "与「{{convert_message_to_hiragana}}」同时启用时,将通过鼠标悬停显示。"
convert_message_to_hiragana:
label:
label: "显示平假名"
hotkeys:
toggle_vrct_visibility:
label:
label: "切换 VRCT 最小化/激活"
toggle_translation:
label:
label: "切换「{{translation}}」开/关"
toggle_transcription_send:
label:
label: "切换「{{transcription_send}}」开/关"
toggle_transcription_receive:
label:
label: "切换「{{transcription_receive}}」开/关"
plugins:
downloaded_version:
latest_version:
available_after_updating:
unavailable_downloaded:
no_latest_info:
using_latest_version:
available_latest_version:
unavailable_latest_version:
available_in_latest_vrct_version:
unavailable_not_downloaded:
downloaded_version: "已下载版本:{{downloaded_version}}"
latest_version: "最新版本:{{latest_version}}"
available_after_updating: "更新到最新版后可用"
unavailable_downloaded: "当前不可用 与使用中的 VRCT 版本不兼容"
no_latest_info: "无法获取最新信息"
using_latest_version: "正在使用最新版本"
available_latest_version: "最新版本可用"
unavailable_latest_version: "最新版本当前不可用"
available_in_latest_vrct_version: "可在 VRCT 最新版中使用"
unavailable_not_downloaded: "当前不可用"
advanced_settings:
osc_ip_address:
@@ -298,28 +300,28 @@ config_page:
open_config_filepath:
label: "打开设置文件"
switch_compute_device:
label:
label: "切换 VRCT CPU/GPU 版本"
enable_websocket:
label:
label: "启用 WebSocket 服务器"
websocket_host:
label:
label: "WebSocket 主机"
websocket_port:
label:
label: "WebSocket 端口"
notifications:
save_success:
save_success: "设置已保存。"
plugin_notifications:
downloading:
downloaded_success:
downloaded_error:
downloading: "正在下载插件。"
downloaded_success: "插件下载完成。"
downloaded_error: "插件下载失败。"
updating:
updated_success:
updated_error:
updating: "正在更新插件。"
updated_success: "插件更新完成。"
updated_error: "插件更新失败。"
disabled_out_of_support:
disabled_due_to_an_error:
disabled_out_of_support: "与当前版本不兼容。已禁用插件。"
disabled_due_to_an_error: "插件运行时检测到错误。请向插件开发者报告。"
is_enabled:
is_disabled:
is_enabled: "插件已启用。"
is_disabled: "插件已禁用。"

View File

@@ -7,14 +7,14 @@ common:
go_back_button_label: "返回"
common_error:
no_device_mic:
no_device_mic: "未偵測到麥克風裝置。"
no_device_speaker: "未偵測到喇叭裝置。"
threshold_invalid_value: "可以設置 {{min}} 到 {{max}} 之間的值。"
failed_download_weight_ctranslate2:
failed_download_weight_whisper:
translation_limit:
deepl_auth_key_invalid_length:
deepl_auth_key_failed_authentication: "授權金鑰錯誤或已達使用上限。"
failed_download_weight_ctranslate2: "CTranslate2 模型下載失敗。"
failed_download_weight_whisper: "Whisper 模型下載失敗。"
translation_limit: "已達到翻譯引擎使用限制或臨時受到使用限制。"
deepl_auth_key_invalid_length: "授權金鑰字元數錯誤。"
deepl_auth_key_failed_authentication: "授權金鑰錯誤或已達 API 使用上限。"
invalid_value_mic_record_timeout: "不能大於「{{mic_phrase_timeout_label}}」,應為 0 或更高。"
invalid_value_mic_phrase_timeout: "不能小於「{{mic_record_timeout_label}}」,應為 0 或更高。"
@@ -25,7 +25,7 @@ common_error:
invalid_value_speaker_max_phrase: "可以設置 0 或更高的數值。"
common_warning:
unable_to_use_osc_query:
unable_to_use_osc_query: "由於 OSC IP Address 的設定無法接收 OSC 資料,以下功能已自動停用。"
main_page:
translation: "翻譯"
@@ -42,7 +42,7 @@ main_page:
translator_label_default: "預設"
translator_selector:
is_selected_same_language:
is_selected_same_language: "「{{your_language}}」和「{{target_language}}」選擇了相同的語言,因此只能使用「{{ctranslate2}}」。"
message_log:
all: "全部"
@@ -50,7 +50,7 @@ main_page:
received: "已接收"
system: "系統"
resend_button_on_hover_desc:
resend_button_on_hover_desc: "長按發送"
state_text_enabled: "啟用"
state_text_disabled: "停用"
@@ -63,42 +63,44 @@ main_page:
updating: "正在更新..."
update_modal:
cpu_desc:
cuda_desc:
cuda_compare_cpu_desc:
cuda_disk_space_desc:
close_modal:
download_latest_and_restart:
is_latest_version_already:
is_current_compute_device:
cpu_desc: "僅使用 CPU 作為處理裝置"
cuda_desc: "可選擇 CPU 和 NVIDIA GPU 作為處理裝置"
cuda_compare_cpu_desc: "選擇 GPU 時,與 CPU 相比處理更快"
cuda_disk_space_desc: "需要約 {{size}} 的磁碟空間"
close_modal: "關閉"
download_latest_and_restart: "將下載最新版本,\n應用程式將自動重新啟動。"
is_latest_version_already: "已在使用最新版本"
is_current_compute_device: "目前使用的版本"
config_page:
common:
version: "版本 {{version}}"
model_download_button_label:
model_download_button_label: "下載"
compute_device:
desc:
label_device:
label_type:
type_template_auto:
type_template_low:
type_template_high:
desc: "各處理類型的精度和速度會因機器規格不同而有所差異,可能與顯示順序不同,請作為大致參考。"
label_device: "處理裝置"
label_type: "處理類型"
type_template_auto: "自動"
type_template_low: "{{type_name}}(精度較低,處理較快)"
type_template_high: "{{type_name}}(精度較高,處理較慢)"
warning_labels:
unable_to_use_osc_query: "由於 OSC IP Address 的設定無法接收 OSC 資料,目前無法使用此功能。"
side_menu_labels:
device:
device: "裝置"
appearance: "外觀"
translation: "翻譯"
transcription: "轉錄"
transcription: "語音辨識"
others: "其他"
hotkeys:
plugins:
hotkeys: "快捷鍵"
plugins: "外掛程式"
advanced_settings: "進階設定"
device:
check_volume: "Check Volume"
label_auto_select: "Auto Select"
label_host: "Host/Driver"
label_device: "Device"
check_volume: "音量檢查"
label_auto_select: "自動選擇"
label_host: "主機/驅動程式"
label_device: "裝置"
mic_host_device:
label: "麥克風裝置"
mic_dynamic_energy_threshold:
@@ -129,8 +131,8 @@ config_page:
show: "顯示"
show_and_disable_enter_key: "顯示並停用 Enter 鍵發送"
show_resend_button:
label:
desc:
label: "顯示重新發送按鈕"
desc: "滑鼠懸停在已發送訊息記錄上時,會顯示重新發送按鈕。點擊進入編輯模式,長按重新發送。"
font_family:
label: "字型"
ui_language:
@@ -143,19 +145,19 @@ config_page:
small: "基本模型({{capacity}}"
large: "高準確率模型({{capacity}}"
translation_compute_device:
label:
label: "AI 翻譯的處理裝置"
deepl_auth_key:
label: "DeepL 授權金鑰"
desc: "使用 DeepL API 時請在主螢幕選擇 {{translator}}。※可能不支援某些語言。"
open_auth_key_webpage: "打開 DeepL 帳號頁面"
save:
edit:
save: "儲存"
edit: "編輯"
auth_key_success: "授權金鑰更新完成。"
transcription:
section_label_mic: "麥克風"
section_label_speaker: "喇叭"
section_label_transcription_engines:
section_label_transcription_engines: "語音辨識引擎"
mic_record_timeout:
label: "麥克風音訊 - 判定結束時間"
desc: "麥克風未收到音訊後,結束一段話的判定時間(秒)。"
@@ -180,22 +182,22 @@ config_page:
label: "喇叭音訊 - 最大單詞數量"
desc: "只有在單詞超過此數量時,才會記錄結果並發送到 VRChat。"
select_transcription_engine:
label:
label: "語音辨識使用的引擎"
whisper_weight_type:
label: "選擇 Whisper 模型"
desc:
label: "Whisper 模型類型"
desc: "容量越大的模型精度越高,但會占用更多 CPU/GPU 資源。\n※特別是比 medium 更大的模型,根據 CPU/GPU 效能可能難以使用。"
model_template: "{{model_name}}模型({{capacity}}"
recommended_model_template: "{{model_name}}模型({{capacity}})(推薦)"
transcription_compute_device:
label:
label: "AI 語音辨識使用的處理裝置"
vr:
single_line:
multi_lines:
overlay_enable:
single_line: "單行"
multi_lines: "多行"
overlay_enable: "啟用"
restore_default_settings: "恢復預設設定"
position:
rotation:
position: "位置"
rotation: "旋轉"
x_position: "X軸左右"
y_position: "Y軸上下"
z_position: "Z軸前後"
@@ -203,24 +205,24 @@ config_page:
y_rotation: "Y軸旋轉"
z_rotation: "Z軸旋轉"
sample_text_button:
start:
stop:
sample_text:
start: "向 Overlay\n發送範例文字"
stop: "停止發送"
sample_text: "範例文字"
opacity: "透明度"
ui_scaling: "介面縮放"
display_duration: "顯示持續時間"
fadeout_duration: "淡出持續時間"
common_settings:
tracker:
hmd:
left_hand:
right_hand:
common_settings: "通用設定"
tracker: "顯示追蹤器的位置"
hmd: "HMD"
left_hand: "左手"
right_hand: "右手"
overlay_show_only_translated_messages:
label:
label: "僅顯示翻譯後的訊息"
others:
section_label_sounds:
section_label_message_formats:
section_label_sounds: "音效"
section_label_message_formats: "訊息格式"
auto_clear_the_message_box:
label: "自動清除 Chatbox"
send_only_translated_messages:
@@ -235,60 +237,60 @@ config_page:
label: "發送訊息到 VRChat"
desc: "當你打算向 VRChat 發送訊息時啟用此功能。"
notification_vrc_sfx:
label:
desc:
label: "發送聊天時播放聊天框的通知音"
desc: "停用此功能後,將不會播放其他人能聽到的聊天框通知音,靜默發送。"
send_received_message_to_vrc:
label:
desc:
label: "將接收到的訊息發送到 VRChat"
desc: "將從喇叭聽到並轉錄的訊息發送到 VRChat。"
message_format_common:
example_view:
title:
original_translated:
original_translated_multi:
translated_only_multi:
translated_only:
original_only:
title: "預覽"
original_translated: "原文 + 翻譯"
original_translated_multi: "原文 + 翻譯(多語言)"
translated_only_multi: "僅翻譯(多語言)"
translated_only: "僅翻譯"
original_only: "僅原文"
settings:
title:
original:
translated:
for_multi_translation:
title: "設定"
original: "原文"
translated: "翻譯"
for_multi_translation: "多語言翻譯用"
send_message_format:
label:
desc:
label: "訊息格式(發送)"
desc: "可以變更在 VRChat 中對方實際看到的格式。"
received_message_format:
label:
desc:
label: "訊息格式Speaker2Chatbox"
desc: "目前用於透過 Speaker2Chatbox 發送時的顯示。"
common_convert_message_hiragana_romaji:
desc_1:
desc_2:
desc_1: "僅在選擇日語作為翻譯語言時支援。"
desc_2: "由於日語的特殊性,精度有限。"
convert_message_to_romaji:
label:
desc:
label: "顯示羅馬字"
desc: "與「{{convert_message_to_hiragana}}」同時啟用時,將透過滑鼠懸停顯示。"
convert_message_to_hiragana:
label:
label: "顯示平假名"
hotkeys:
toggle_vrct_visibility:
label:
label: "切換 VRCT 最小化/啟動"
toggle_translation:
label:
label: "切換「{{translation}}」開/關"
toggle_transcription_send:
label:
label: "切換「{{transcription_send}}」開/關"
toggle_transcription_receive:
label:
label: "切換「{{transcription_receive}}」開/關"
plugins:
downloaded_version:
latest_version:
available_after_updating:
unavailable_downloaded:
no_latest_info:
using_latest_version:
available_latest_version:
unavailable_latest_version:
available_in_latest_vrct_version:
unavailable_not_downloaded:
downloaded_version: "已下載版本:{{downloaded_version}}"
latest_version: "最新版本:{{latest_version}}"
available_after_updating: "更新到最新版後可用"
unavailable_downloaded: "目前不可用 與使用中的 VRCT 版本不相容"
no_latest_info: "無法取得最新資訊"
using_latest_version: "正在使用最新版本"
available_latest_version: "最新版本可用"
unavailable_latest_version: "最新版本目前不可用"
available_in_latest_vrct_version: "可在 VRCT 最新版中使用"
unavailable_not_downloaded: "目前不可用"
advanced_settings:
osc_ip_address:
@@ -298,28 +300,28 @@ config_page:
open_config_filepath:
label: "打開設定文件"
switch_compute_device:
label:
label: "切換 VRCT CPU/GPU 版本"
enable_websocket:
label:
label: "啟用 WebSocket 伺服器"
websocket_host:
label:
label: "WebSocket 主機"
websocket_port:
label:
label: "WebSocket 連接埠"
notifications:
save_success:
save_success: "設定已儲存。"
plugin_notifications:
downloading:
downloaded_success:
downloaded_error:
downloading: "正在下載外掛程式。"
downloaded_success: "外掛程式下載完成。"
downloaded_error: "外掛程式下載失敗。"
updating:
updated_success:
updated_error:
updating: "正在更新外掛程式。"
updated_success: "外掛程式更新完成。"
updated_error: "外掛程式更新失敗。"
disabled_out_of_support:
disabled_due_to_an_error:
disabled_out_of_support: "與目前版本不相容。已停用外掛程式。"
disabled_due_to_an_error: "外掛程式執行時偵測到錯誤。請向外掛程式開發者回報。"
is_enabled:
is_disabled:
is_enabled: "外掛程式已啟用。"
is_disabled: "外掛程式已停用。"