[Update] Config Window: 各項目のエラーメッセージを追加(仮置きじゃなくなりました。)

This commit is contained in:
Sakamoto Shiina
2023-10-19 08:53:44 +09:00
parent 62652dccd4
commit 8e55a5426c
4 changed files with 124 additions and 10 deletions

View File

@@ -66,6 +66,9 @@ config_window:
compact_mode: Compact Mode compact_mode: Compact Mode
version: version %{version} version: version %{version}
restart_message: Apply changes with a restart. restart_message: Apply changes with a restart.
common_error_message:
invalid_value: Invalid value.
side_menu_labels: side_menu_labels:
appearance: Appearance appearance: Appearance
# translation: Translation # translation: Translation
@@ -75,16 +78,21 @@ config_window:
others: Others others: Others
advanced_settings: Advanced Settings advanced_settings: Advanced Settings
transparency: transparency:
label: Transparency label: Transparency
desc: Change the main window's transparency. desc: Change the main window's transparency.
appearance_theme: appearance_theme:
label: Theme [Under development] label: Theme [Under development]
desc: Change the color theme. Currently, only the Dark theme is supported. The Light theme is under development. desc: Change the color theme. Currently, only the Dark theme is supported. The Light theme is under development.
ui_size: ui_size:
label: UI Size label: UI Size
font_family: font_family:
label: Font Family label: Font Family
ui_language: ui_language:
label: UI Language label: UI Language
@@ -93,22 +101,32 @@ config_window:
mic_host: mic_host:
label: Mic Host/Driver label: Mic Host/Driver
mic_device: mic_device:
label: Mic Device label: Mic Device
mic_dynamic_energy_threshold: mic_dynamic_energy_threshold:
label_for_automatic: "Mic Energy Threshold (Current Setting: Automatic)" label_for_automatic: "Mic Energy Threshold (Current Setting: Automatic)"
desc_for_automatic: "Automatically determine microphone input sensitivity." desc_for_automatic: "Automatically determine microphone input sensitivity."
label_for_manual: "Mic Energy Threshold (Current Setting: Manual)" label_for_manual: "Mic Energy Threshold (Current Setting: Manual)"
desc_for_manual: "Manually determine the microphone input sensitivity using the slider. Press the microphone icon to input your voice and adjust the sensitivity while monitoring the volume." desc_for_manual: "Manually determine the microphone input sensitivity using the slider. Press the microphone icon to input your voice and adjust the sensitivity while monitoring the volume."
error_message: You can set it with a value between 0 to %{max}.
mic_record_timeout: mic_record_timeout:
label: Mic Record Timeout label: Mic Record Timeout
desc: Detects silence and, when the specified number of seconds has passed, considers the mic input to have ended. (Second(s)) desc: Detects silence and, when the specified number of seconds has passed, considers the mic input to have ended. (Second(s))
error_message: It cannot be greater than '%{mic_phrase_timeout_label}' with a value of 0 or more.
mic_phrase_timeout: mic_phrase_timeout:
label: Mic Phrase Timeout label: Mic Phrase Timeout
desc: Transcription processing is performed at intervals of the specified number of seconds. desc: Transcription processing is performed at intervals of the specified number of seconds.
error_message: It cannot be set lower than '%{mic_record_timeout_label}' with a value of 0 or more.
mic_max_phrase: mic_max_phrase:
label: Mic Max Phrases label: Mic Max Phrases
desc: It is the lower limit for the number of transcribed words, and only when this number is exceeded will the transcription results be displayed logs and send to VRChat. desc: It is the lower limit for the number of transcribed words, and only when this number is exceeded will the transcription results be displayed logs and send to VRChat.
error_message: You can set a number equal to or greater than 0.
mic_word_filter: mic_word_filter:
label: Mic Word Filter label: Mic Word Filter
desc: "It will not send the sentence if the word(s) included in the set list of words.\nHow to set: e.g. AAA,BBB,CCC" desc: "It will not send the sentence if the word(s) included in the set list of words.\nHow to set: e.g. AAA,BBB,CCC"
@@ -119,32 +137,46 @@ config_window:
desc_for_automatic: "Automatically determine speaker input sensitivity." desc_for_automatic: "Automatically determine speaker input sensitivity."
label_for_manual: "Speaker Energy Threshold (Current Setting: Manual)" label_for_manual: "Speaker Energy Threshold (Current Setting: Manual)"
desc_for_manual: "Manually determine the speaker input sensitivity using the slider. Press the headphones icon to listen to the audio and adjust the sensitivity while monitoring the volume." desc_for_manual: "Manually determine the speaker input sensitivity using the slider. Press the headphones icon to listen to the audio and adjust the sensitivity while monitoring the volume."
error_message: You can set it with a value between 0 to %{max}.
no_device_error_message: No speaker device detected.
speaker_record_timeout: speaker_record_timeout:
label: Speaker Record Timeout label: Speaker Record Timeout
desc: Detects silence and, when the specified number of seconds has passed, considers the speaker input to have ended. (Second(s)) desc: Detects silence and, when the specified number of seconds has passed, considers the speaker input to have ended. (Second(s))
error_message: It cannot be greater than '%{speaker_phrase_timeout_label}' with a value of 0 or more.
speaker_phrase_timeout: speaker_phrase_timeout:
label: Speaker Phrase Timeout label: Speaker Phrase Timeout
desc: Transcription processing is performed at intervals of the specified number of seconds. desc: Transcription processing is performed at intervals of the specified number of seconds.
error_message: It cannot be set lower than '%{speaker_record_timeout_label}' with a value of 0 or more.
speaker_max_phrase: speaker_max_phrase:
label: Speaker Max Phrases label: Speaker Max Phrases
desc: It is the lower limit for the number of transcribed words, and only when this number is exceeded will the transcription results be displayed logs. desc: It is the lower limit for the number of transcribed words, and only when this number is exceeded will the transcription results be displayed logs.
error_message: You can set a number equal to or greater than 0.
auto_clear_the_message_box: auto_clear_the_message_box:
label: Auto Clear The Message Box label: Auto Clear The Message Box
notice_xsoverlay: notice_xsoverlay:
label: Notification XSOverlay (VR Only) label: Notification XSOverlay (VR Only)
desc: Notify received messages by using XSOverlay's notification feature. desc: Notify received messages by using XSOverlay's notification feature.
auto_export_message_logs: auto_export_message_logs:
label: Auto Export Message Logs label: Auto Export Message Logs
desc: Automatically export the conversation messages as a text file. desc: Automatically export the conversation messages as a text file.
message_format: message_format:
label: Message Format label: Message Format
desc: "You can change the decoration of the message you want to send.\n[message] will be replaced with the message, and [translation] will be replaced with the translated message.\nIt will be used in Notification XSOverlay too." desc: "You can change the decoration of the message you want to send.\n[message] will be replaced with the message, and [translation] will be replaced with the translated message.\nIt will be used in Notification XSOverlay too."
send_message_to_vrc: send_message_to_vrc:
label: Send Message To VRChat label: Send Message To VRChat
desc: There is a way to use it without sending messages to VRChat, but it is not supported. Enable this feature when you intend to send a message to VRChat. desc: There is a way to use it without sending messages to VRChat, but it is not supported. Enable this feature when you intend to send a message to VRChat.
osc_ip_address: osc_ip_address:
label: OSC IP Address label: OSC IP Address
osc_port: osc_port:
label: OSC Port label: OSC Port

View File

@@ -67,6 +67,9 @@ config_window:
compact_mode: コンパクトモード compact_mode: コンパクトモード
version: バージョン %{version} version: バージョン %{version}
restart_message: 再起動して変更を適用する。 restart_message: 再起動して変更を適用する。
common_error_message:
invalid_value: 無効な値です。
side_menu_labels: side_menu_labels:
appearance: デザイン appearance: デザイン
# translation: 翻訳 # translation: 翻訳
@@ -76,16 +79,21 @@ config_window:
others: その他 others: その他
advanced_settings: 高度な設定 advanced_settings: 高度な設定
transparency: transparency:
label: 透明度 label: 透明度
desc: メイン画面の透明度を変更できます。 desc: メイン画面の透明度を変更できます。
appearance_theme: appearance_theme:
label: 外観テーマ [開発中] label: 外観テーマ [開発中]
desc: カラーテーマを変更できます。現在はDarkテーマのみ対応。Lightテーマは制作中です。 desc: カラーテーマを変更できます。現在はDarkテーマのみ対応。Lightテーマは制作中です。
ui_size: ui_size:
label: UIサイズ label: UIサイズ
font_family: font_family:
label: 使用フォント label: 使用フォント
ui_language: ui_language:
label: UIの言語 / UI Language label: UIの言語 / UI Language
@@ -94,22 +102,32 @@ config_window:
mic_host: mic_host:
label: マイク(ホスト/ドライバー) label: マイク(ホスト/ドライバー)
mic_device: mic_device:
label: マイク (デバイス) label: マイク (デバイス)
mic_dynamic_energy_threshold: mic_dynamic_energy_threshold:
label_for_automatic: "マイク入力感度の調整 (現在の設定: 自動)" label_for_automatic: "マイク入力感度の調整 (現在の設定: 自動)"
desc_for_automatic: マイクの入力感度を自動的に調節する。 desc_for_automatic: マイクの入力感度を自動的に調節する。
label_for_manual: "マイク入力感度の調整 (現在の設定: 手動)" label_for_manual: "マイク入力感度の調整 (現在の設定: 手動)"
desc_for_manual: スライダーを調整して入力感度を手動で決められます。マイクのアイコンを押すと、実際に声を入力し、音量を確認しながら調節できます。 desc_for_manual: スライダーを調整して入力感度を手動で決められます。マイクのアイコンを押すと、実際に声を入力し、音量を確認しながら調節できます。
error_message: 0 から %{max} までの数値で設定できます。
mic_record_timeout: mic_record_timeout:
label: 入力が終了したとみなす無音時間 label: 入力が終了したとみなす無音時間
desc: 無音を検出し、設定された秒数経過すると、音声入力が終了したとみなします。 desc: 無音を検出し、設定された秒数経過すると、音声入力が終了したとみなします。
error_message: 0 以上で 「%{mic_phrase_timeout_label}」より大きくすることはできません。
mic_phrase_timeout: mic_phrase_timeout:
label: 一度に文字起こしする時間の長さ label: 一度に文字起こしする時間の長さ
desc: 設定された秒数ごとに文字起こし処理が行われます。 desc: 設定された秒数ごとに文字起こし処理が行われます。
error_message: 0 以上で 「%{mic_record_timeout_label}」より小さくすることはできません。
mic_max_phrase: mic_max_phrase:
label: 送信するまでに保持する単語数 label: 送信するまでに保持する単語数
desc: 文字起こしされた単語数の下限値で、この数値を超えた場合のみ結果をVRChatへ送信し、ログに表示します。 desc: 文字起こしされた単語数の下限値で、この数値を超えた場合のみ結果をVRChatへ送信し、ログに表示します。
error_message: 0以上の数値を設定できます。
mic_word_filter: mic_word_filter:
label: ワードフィルター label: ワードフィルター
desc: "設定された単語を検出すると、その文章は送信されません。\n設定の例: AAA,BBB,CCC" desc: "設定された単語を検出すると、その文章は送信されません。\n設定の例: AAA,BBB,CCC"
@@ -120,32 +138,45 @@ config_window:
desc_for_automatic: スピーカーの入力感度を自動的に調節する。 desc_for_automatic: スピーカーの入力感度を自動的に調節する。
label_for_manual: "スピーカー入力感度の調整 (現在の設定: 手動)" label_for_manual: "スピーカー入力感度の調整 (現在の設定: 手動)"
desc_for_manual: スライダーを調整して入力感度を手動で決められます。ヘッドフォンのアイコンを押すと、実際に音声を聞き取り、音量を確認しながら調節できます。 desc_for_manual: スライダーを調整して入力感度を手動で決められます。ヘッドフォンのアイコンを押すと、実際に音声を聞き取り、音量を確認しながら調節できます。
error_message: 0 から %{max} までの数値で設定できます。
no_device_error_message: スピーカーデバイスが検出されませんでした。
speaker_record_timeout: speaker_record_timeout:
label: 入力が終了したとみなす無音時間 label: 入力が終了したとみなす無音時間
desc: 無音を検出し、設定された秒数経過すると、音声入力が終了したとみなします。 desc: 無音を検出し、設定された秒数経過すると、音声入力が終了したとみなします。
error_message: 0 以上で 「%{speaker_phrase_timeout_label}」より大きくすることはできません。
speaker_phrase_timeout: speaker_phrase_timeout:
label: 一度に文字起こしする時間の長さ label: 一度に文字起こしする時間の長さ
desc: 設定された秒数ごとに文字起こし処理が行われます。 desc: 設定された秒数ごとに文字起こし処理が行われます。
error_message: 0 以上で 「%{speaker_record_timeout_label}」より小さくすることはできません。
speaker_max_phrase: speaker_max_phrase:
label: ログとして表示するまでに保持する単語数 label: ログとして表示するまでに保持する単語数
desc: 文字起こしされた単語数の下限値で、この数値を超えた場合のみ結果をログに表示します。 desc: 文字起こしされた単語数の下限値で、この数値を超えた場合のみ結果をログに表示します。
error_message: 0以上の数値を設定できます。
auto_clear_the_message_box: auto_clear_the_message_box:
label: 送信後はチャットボックスを空にする label: 送信後はチャットボックスを空にする
notice_xsoverlay: notice_xsoverlay:
label: XSOverlayでの通知受け取り機能を有効 (VR限定) label: XSOverlayでの通知受け取り機能を有効 (VR限定)
desc: 文字起こし受信されたメッセージをXSOverlayの機能を使って通知として受け取れます。 desc: 文字起こし受信されたメッセージをXSOverlayの機能を使って通知として受け取れます。
auto_export_message_logs: auto_export_message_logs:
label: 会話ログを自動的に保存する label: 会話ログを自動的に保存する
desc: テキストファイルとしてログがlogsフォルダ内に保存されます。 desc: テキストファイルとしてログがlogsフォルダ内に保存されます。
message_format: message_format:
label: 送信するメッセージのフォーマット label: 送信するメッセージのフォーマット
desc: "VRChatで相手に実際に見えるフォーマットを変更できます。\n[message]がメッセージに置換され、\n[translation]が翻訳されたメッセージに置換されます。\n※XSOverlayでの通知受け取り機能でも使われます。" desc: "VRChatで相手に実際に見えるフォーマットを変更できます。\n[message]がメッセージに置換され、\n[translation]が翻訳されたメッセージに置換されます。\n※XSOverlayでの通知受け取り機能でも使われます。"
send_message_to_vrc: send_message_to_vrc:
label: VRChatにメッセージを送信する label: VRChatにメッセージを送信する
desc: "サポート対象外ですが、VRChatにメッセージを送信せずに使う方法があります。送信したい場合、この機能を有効にする事を忘れないでください。" desc: "サポート対象外ですが、VRChatにメッセージを送信せずに使う方法があります。送信したい場合、この機能を有効にする事を忘れないでください。"
osc_ip_address: osc_ip_address:
label: OSC IP Address label: OSC IP Address
osc_port: osc_port:
label: OSC Port label: OSC Port

69
view.py
View File

@@ -1040,38 +1040,89 @@ class View():
def showErrorMessage_MicEnergyThreshold(self): def showErrorMessage_MicEnergyThreshold(self):
self._showErrorMessage(vrct_gui.config_window.sb__progressbar_x_slider__entry_mic_energy_threshold, "Mic Energy Threshold Error Message") self._showErrorMessage(
vrct_gui.config_window.sb__progressbar_x_slider__entry_mic_energy_threshold,
self._makeInvalidValueErrorMessage(i18n.t("config_window.mic_dynamic_energy_threshold.error_message", max=config.MAX_MIC_ENERGY_THRESHOLD))
)
def showErrorMessage_MicRecordTimeout(self): def showErrorMessage_MicRecordTimeout(self):
self._showErrorMessage(vrct_gui.config_window.sb__entry_mic_record_timeout, "Mic Record Timeout Error Message") self._showErrorMessage(
vrct_gui.config_window.sb__entry_mic_record_timeout,
self._makeInvalidValueErrorMessage(
i18n.t(
"config_window.mic_record_timeout.error_message",
mic_phrase_timeout_label=i18n.t("config_window.mic_phrase_timeout.label")
)
)
)
def showErrorMessage_MicPhraseTimeout(self): def showErrorMessage_MicPhraseTimeout(self):
self._showErrorMessage(vrct_gui.config_window.sb__entry_mic_phrase_timeout, "Mic Phrase Timeout Error Message") self._showErrorMessage(
vrct_gui.config_window.sb__entry_mic_phrase_timeout,
self._makeInvalidValueErrorMessage(
i18n.t(
"config_window.mic_phrase_timeout.error_message",
mic_record_timeout_label=i18n.t("config_window.mic_record_timeout.label")
)
)
)
def showErrorMessage_MicMaxPhrases(self): def showErrorMessage_MicMaxPhrases(self):
self._showErrorMessage(vrct_gui.config_window.sb__entry_mic_max_phrases, "Mic Max Phrases Error Message") self._showErrorMessage(
vrct_gui.config_window.sb__entry_mic_max_phrases,
self._makeInvalidValueErrorMessage(i18n.t("config_window.mic_max_phrase.error_message"))
)
def showErrorMessage_SpeakerEnergyThreshold(self): def showErrorMessage_SpeakerEnergyThreshold(self):
self._showErrorMessage(vrct_gui.config_window.sb__progressbar_x_slider__entry_speaker_energy_threshold, "Speaker Energy Threshold Error Message") self._showErrorMessage(
vrct_gui.config_window.sb__progressbar_x_slider__entry_speaker_energy_threshold,
self._makeInvalidValueErrorMessage(i18n.t("config_window.speaker_dynamic_energy_threshold.error_message", max=config.MAX_SPEAKER_ENERGY_THRESHOLD))
)
def showErrorMessage_SpeakerRecordTimeout(self): def showErrorMessage_SpeakerRecordTimeout(self):
self._showErrorMessage(vrct_gui.config_window.sb__entry_speaker_record_timeout, "Speaker Record Timeout Error Message") self._showErrorMessage(
vrct_gui.config_window.sb__entry_speaker_record_timeout,
self._makeInvalidValueErrorMessage(
i18n.t(
"config_window.speaker_record_timeout.error_message",
speaker_phrase_timeout_label=i18n.t("config_window.speaker_phrase_timeout.label")
)
)
)
def showErrorMessage_SpeakerPhraseTimeout(self): def showErrorMessage_SpeakerPhraseTimeout(self):
self._showErrorMessage(vrct_gui.config_window.sb__entry_speaker_phrase_timeout, "Speaker Phrase Timeout Error Message") self._showErrorMessage(
vrct_gui.config_window.sb__entry_speaker_phrase_timeout,
self._makeInvalidValueErrorMessage(
i18n.t(
"config_window.speaker_phrase_timeout.error_message",
speaker_record_timeout_label=i18n.t("config_window.speaker_record_timeout.label")
)
)
)
def showErrorMessage_SpeakerMaxPhrases(self): def showErrorMessage_SpeakerMaxPhrases(self):
self._showErrorMessage(vrct_gui.config_window.sb__entry_speaker_max_phrases, "Speaker Max Phrases Error Message") self._showErrorMessage(
vrct_gui.config_window.sb__entry_speaker_max_phrases,
self._makeInvalidValueErrorMessage(i18n.t("config_window.speaker_max_phrase.error_message"))
)
def showErrorMessage_CheckSpeakerThreshold_NoDevice(self): def showErrorMessage_CheckSpeakerThreshold_NoDevice(self):
self._showErrorMessage(vrct_gui.config_window.sb__progressbar_x_slider__active_button_speaker_energy_threshold, "No speaker device detected") self._showErrorMessage(
vrct_gui.config_window.sb__progressbar_x_slider__active_button_speaker_energy_threshold,
self._makeInvalidValueErrorMessage(i18n.t("config_window.speaker_dynamic_energy_threshold.no_device_error_message"))
)
def _showErrorMessage(self, target_widget, message): def _showErrorMessage(self, target_widget, message):
self.view_variable.VAR_ERROR_MESSAGE.set(message) self.view_variable.VAR_ERROR_MESSAGE.set(message)
vrct_gui._showErrorMessage(target_widget=target_widget) vrct_gui._showErrorMessage(target_widget=target_widget)
@staticmethod
def _makeInvalidValueErrorMessage(error_message):
return i18n.t("config_window.common_error_message.invalid_value") + "\n" + error_message
def clearErrorMessage(self): def clearErrorMessage(self):
vrct_gui._clearErrorMessage() vrct_gui._clearErrorMessage()

View File

@@ -217,7 +217,7 @@ class UiScalingManager():
self.config_window.SB__ERROR_MESSAGE_IPADX = (self._calculateUiSize(10), self._calculateUiSize(10)) self.config_window.SB__ERROR_MESSAGE_IPADX = (self._calculateUiSize(10), self._calculateUiSize(10))
self.config_window.SB__ERROR_MESSAGE_IPADY = (self._calculateUiSize(6), self._calculateUiSize(6)) self.config_window.SB__ERROR_MESSAGE_IPADY = (self._calculateUiSize(6), self._calculateUiSize(6))
self.config_window.SB__ERROR_MESSAGE_FONT_SIZE = self._calculateUiSize(12) self.config_window.SB__ERROR_MESSAGE_FONT_SIZE = self._calculateUiSize(14)
self.config_window.SB__SELECTOR_FONT_SIZE = self._calculateUiSize(14) self.config_window.SB__SELECTOR_FONT_SIZE = self._calculateUiSize(14)