From da249eaa317baabb07b4f944e3d3c68b0b8f2a96 Mon Sep 17 00:00:00 2001 From: cogwheel0 <172976095+cogwheel0@users.noreply.github.com> Date: Sun, 2 Nov 2025 19:03:58 +0530 Subject: [PATCH] feat(l10n): Add speech-to-text localization strings for settings --- lib/l10n/app_en.arb | 40 ++++++++++++++++++++ lib/l10n/app_localizations.dart | 60 ++++++++++++++++++++++++++++++ lib/l10n/app_localizations_de.dart | 35 +++++++++++++++++ lib/l10n/app_localizations_en.dart | 35 +++++++++++++++++ lib/l10n/app_localizations_fr.dart | 35 +++++++++++++++++ lib/l10n/app_localizations_it.dart | 35 +++++++++++++++++ 6 files changed, 240 insertions(+) diff --git a/lib/l10n/app_en.arb b/lib/l10n/app_en.arb index d45abb4..686bf81 100644 --- a/lib/l10n/app_en.arb +++ b/lib/l10n/app_en.arb @@ -1219,6 +1219,46 @@ "@sendOnEnterDescription": { "description": "Explanation of how the Send on Enter toggle behaves." }, + "sttSettings": "Speech to Text", + "@sttSettings": { + "description": "Section header for speech-to-text settings." + }, + "sttEngineLabel": "Recognition engine", + "@sttEngineLabel": { + "description": "Label shown above the speech-to-text engine chips." + }, + "sttEngineAuto": "Auto", + "@sttEngineAuto": { + "description": "Chip label for automatic speech-to-text selection." + }, + "sttEngineDevice": "On device", + "@sttEngineDevice": { + "description": "Chip label for on-device speech recognition." + }, + "sttEngineServer": "Server", + "@sttEngineServer": { + "description": "Chip label for server speech recognition." + }, + "sttEngineAutoDescription": "Use on-device recognition when available and fall back to your server.", + "@sttEngineAutoDescription": { + "description": "Description shown when automatic speech-to-text preference is active." + }, + "sttEngineDeviceDescription": "Keep audio on this device. Voice input stops working if on-device speech recognition isn’t supported.", + "@sttEngineDeviceDescription": { + "description": "Description shown when on-device speech-to-text preference is active." + }, + "sttEngineServerDescription": "Always send recordings to your Conduit server for transcription.", + "@sttEngineServerDescription": { + "description": "Description shown when server speech-to-text preference is active." + }, + "sttDeviceUnavailableWarning": "On-device speech recognition isn’t available on this device.", + "@sttDeviceUnavailableWarning": { + "description": "Warning shown when the user selects on-device speech recognition but it is unavailable." + }, + "sttServerUnavailableWarning": "Connect to a server with transcription enabled to use this option.", + "@sttServerUnavailableWarning": { + "description": "Warning shown when the user selects server speech recognition but no server is available." + }, "ttsEngineLabel": "Engine", "@ttsEngineLabel": { "description": "Label for selecting the text-to-speech engine." diff --git a/lib/l10n/app_localizations.dart b/lib/l10n/app_localizations.dart index 91f7949..7c46858 100644 --- a/lib/l10n/app_localizations.dart +++ b/lib/l10n/app_localizations.dart @@ -1784,6 +1784,66 @@ abstract class AppLocalizations { /// **'Enter sends (soft keyboard). Cmd/Ctrl+Enter also available'** String get sendOnEnterDescription; + /// Section header for speech-to-text settings. + /// + /// In en, this message translates to: + /// **'Speech to Text'** + String get sttSettings; + + /// Label shown above the speech-to-text engine chips. + /// + /// In en, this message translates to: + /// **'Recognition engine'** + String get sttEngineLabel; + + /// Chip label for automatic speech-to-text selection. + /// + /// In en, this message translates to: + /// **'Auto'** + String get sttEngineAuto; + + /// Chip label for on-device speech recognition. + /// + /// In en, this message translates to: + /// **'On device'** + String get sttEngineDevice; + + /// Chip label for server speech recognition. + /// + /// In en, this message translates to: + /// **'Server'** + String get sttEngineServer; + + /// Description shown when automatic speech-to-text preference is active. + /// + /// In en, this message translates to: + /// **'Use on-device recognition when available and fall back to your server.'** + String get sttEngineAutoDescription; + + /// Description shown when on-device speech-to-text preference is active. + /// + /// In en, this message translates to: + /// **'Keep audio on this device. Voice input stops working if on-device speech recognition isn’t supported.'** + String get sttEngineDeviceDescription; + + /// Description shown when server speech-to-text preference is active. + /// + /// In en, this message translates to: + /// **'Always send recordings to your Conduit server for transcription.'** + String get sttEngineServerDescription; + + /// Warning shown when the user selects on-device speech recognition but it is unavailable. + /// + /// In en, this message translates to: + /// **'On-device speech recognition isn’t available on this device.'** + String get sttDeviceUnavailableWarning; + + /// Warning shown when the user selects server speech recognition but no server is available. + /// + /// In en, this message translates to: + /// **'Connect to a server with transcription enabled to use this option.'** + String get sttServerUnavailableWarning; + /// Label for selecting the text-to-speech engine. /// /// In en, this message translates to: diff --git a/lib/l10n/app_localizations_de.dart b/lib/l10n/app_localizations_de.dart index cbb3f39..617bb11 100644 --- a/lib/l10n/app_localizations_de.dart +++ b/lib/l10n/app_localizations_de.dart @@ -931,6 +931,41 @@ class AppLocalizationsDe extends AppLocalizations { String get sendOnEnterDescription => 'Enter sendet (Soft-Tastatur). Cmd/Ctrl+Enter ebenfalls verfügbar'; + @override + String get sttSettings => 'Sprache zu Text'; + + @override + String get sttEngineLabel => 'Erkennungs-Engine'; + + @override + String get sttEngineAuto => 'Automatisch'; + + @override + String get sttEngineDevice => 'Auf dem Gerät'; + + @override + String get sttEngineServer => 'Server'; + + @override + String get sttEngineAutoDescription => + 'Verwendet die Erkennung auf dem Gerät, wenn verfügbar, und greift sonst auf deinen Server zurück.'; + + @override + String get sttEngineDeviceDescription => + 'Behält Audio auf diesem Gerät. Spracheingabe funktioniert nicht, wenn das Gerät keine Spracherkennung unterstützt.'; + + @override + String get sttEngineServerDescription => + 'Sendet Aufnahmen immer an deinen Conduit-Server zur Transkription.'; + + @override + String get sttDeviceUnavailableWarning => + 'Auf diesem Gerät steht keine Spracherkennung zur Verfügung.'; + + @override + String get sttServerUnavailableWarning => + 'Verbinde dich mit einem Server mit aktivierter Transkription, um diese Option zu nutzen.'; + @override String get ttsEngineLabel => 'Engine'; diff --git a/lib/l10n/app_localizations_en.dart b/lib/l10n/app_localizations_en.dart index 72eb92f..0ab2e16 100644 --- a/lib/l10n/app_localizations_en.dart +++ b/lib/l10n/app_localizations_en.dart @@ -925,6 +925,41 @@ class AppLocalizationsEn extends AppLocalizations { String get sendOnEnterDescription => 'Enter sends (soft keyboard). Cmd/Ctrl+Enter also available'; + @override + String get sttSettings => 'Speech to Text'; + + @override + String get sttEngineLabel => 'Recognition engine'; + + @override + String get sttEngineAuto => 'Auto'; + + @override + String get sttEngineDevice => 'On device'; + + @override + String get sttEngineServer => 'Server'; + + @override + String get sttEngineAutoDescription => + 'Use on-device recognition when available and fall back to your server.'; + + @override + String get sttEngineDeviceDescription => + 'Keep audio on this device. Voice input stops working if on-device speech recognition isn’t supported.'; + + @override + String get sttEngineServerDescription => + 'Always send recordings to your Conduit server for transcription.'; + + @override + String get sttDeviceUnavailableWarning => + 'On-device speech recognition isn’t available on this device.'; + + @override + String get sttServerUnavailableWarning => + 'Connect to a server with transcription enabled to use this option.'; + @override String get ttsEngineLabel => 'Engine'; diff --git a/lib/l10n/app_localizations_fr.dart b/lib/l10n/app_localizations_fr.dart index e312b8e..c9d0079 100644 --- a/lib/l10n/app_localizations_fr.dart +++ b/lib/l10n/app_localizations_fr.dart @@ -940,6 +940,41 @@ class AppLocalizationsFr extends AppLocalizations { String get sendOnEnterDescription => 'Entrée envoie (clavier logiciel). Cmd/Ctrl+Entrée aussi disponible'; + @override + String get sttSettings => 'Voix vers texte'; + + @override + String get sttEngineLabel => 'Moteur de reconnaissance'; + + @override + String get sttEngineAuto => 'Auto'; + + @override + String get sttEngineDevice => 'Sur l’appareil'; + + @override + String get sttEngineServer => 'Serveur'; + + @override + String get sttEngineAutoDescription => + 'Utilise la reconnaissance sur l’appareil quand c’est possible, sinon bascule vers votre serveur.'; + + @override + String get sttEngineDeviceDescription => + 'Conserve l’audio sur cet appareil. L’entrée vocale cesse de fonctionner si la reconnaissance vocale n’est pas prise en charge.'; + + @override + String get sttEngineServerDescription => + 'Envoie toujours les enregistrements à votre serveur Conduit pour transcription.'; + + @override + String get sttDeviceUnavailableWarning => + 'La reconnaissance vocale sur l’appareil n’est pas disponible sur cet appareil.'; + + @override + String get sttServerUnavailableWarning => + 'Connectez-vous à un serveur avec la transcription activée pour utiliser cette option.'; + @override String get ttsEngineLabel => 'Moteur'; diff --git a/lib/l10n/app_localizations_it.dart b/lib/l10n/app_localizations_it.dart index 0af2b1b..6147e1b 100644 --- a/lib/l10n/app_localizations_it.dart +++ b/lib/l10n/app_localizations_it.dart @@ -929,6 +929,41 @@ class AppLocalizationsIt extends AppLocalizations { String get sendOnEnterDescription => 'Invio invia (tastiera software). Cmd/Ctrl+Invio disponibile'; + @override + String get sttSettings => 'Voce in testo'; + + @override + String get sttEngineLabel => 'Motore di riconoscimento'; + + @override + String get sttEngineAuto => 'Automatico'; + + @override + String get sttEngineDevice => 'Sul dispositivo'; + + @override + String get sttEngineServer => 'Server'; + + @override + String get sttEngineAutoDescription => + 'Usa il riconoscimento sul dispositivo quando disponibile e altrimenti passa al tuo server.'; + + @override + String get sttEngineDeviceDescription => + 'Mantiene l’audio su questo dispositivo. L’input vocale non funziona se il dispositivo non supporta il riconoscimento vocale.'; + + @override + String get sttEngineServerDescription => + 'Invia sempre le registrazioni al tuo server Conduit per la trascrizione.'; + + @override + String get sttDeviceUnavailableWarning => + 'Il riconoscimento vocale sul dispositivo non è disponibile su questo dispositivo.'; + + @override + String get sttServerUnavailableWarning => + 'Collegati a un server con la trascrizione abilitata per usare questa opzione.'; + @override String get ttsEngineLabel => 'Motore';