From 6ff7066897f581fd0df180364f9f0f6b9bca0087 Mon Sep 17 00:00:00 2001 From: Benoit Marty Date: Wed, 5 Apr 2023 10:58:18 +0200 Subject: [PATCH 1/6] Add ability to download only English string (for developer). This is default behavior. --- tools/localazy/README.md | 8 +++- tools/localazy/downloadStrings.sh | 20 ++++++++-- tools/localazy/generateLocalazyConfig.py | 48 +++++++++++++----------- 3 files changed, 49 insertions(+), 27 deletions(-) diff --git a/tools/localazy/README.md b/tools/localazy/README.md index dcb45c5be7..968d92047d 100644 --- a/tools/localazy/README.md +++ b/tools/localazy/README.md @@ -20,7 +20,13 @@ In the root folder of the project, run: ./tools/localazy/downloadStrings.sh ``` -It will update all the `localazy.xml` and `translations.xml` resource files. In case of merge conflicts, just erase the files and download again using the script. +It will update all the `localazy.xml` resource files. In case of merge conflicts, just erase the files and download again using the script. + +To also include the translations, i.e. the `translations.xml` files, add `--all` argument: + +```shell +./tools/localazy/downloadStrings.sh --all +``` ## Add translations to a specific module diff --git a/tools/localazy/downloadStrings.sh b/tools/localazy/downloadStrings.sh index 163aab8e31..5892a87c38 100755 --- a/tools/localazy/downloadStrings.sh +++ b/tools/localazy/downloadStrings.sh @@ -18,12 +18,24 @@ set -e -echo "Generating the configuration file for localazy..." -./tools/localazy/generateLocalazyConfig.py +if [[ $1 == "--all" ]]; then + echo "Note: I will update all the files." + allFiles=1 +else + echo "Note: I will update only the English files." + allFiles=0 +fi -echo "Deleting all existing localazy.xml and translations.xml files..." +echo "Generating the configuration file for localazy..." +./tools/localazy/generateLocalazyConfig.py $allFiles + +echo "Deleting all existing localazy.xml files..." find . -name 'localazy.xml' -delete -find . -name 'translations.xml' -delete + +if [[ $allFiles == 1 ]]; then + echo "Deleting all existing translations.xml files..." + find . -name 'translations.xml' -delete +fi echo "Importing the strings..." localazy download --config ./tools/localazy/localazy.json diff --git a/tools/localazy/generateLocalazyConfig.py b/tools/localazy/generateLocalazyConfig.py index 829541462e..13b76e7d57 100755 --- a/tools/localazy/generateLocalazyConfig.py +++ b/tools/localazy/generateLocalazyConfig.py @@ -1,11 +1,13 @@ #!/usr/bin/env python3 import json +import sys # Read the config.json file with open('./tools/localazy/config.json', 'r') as f: config = json.load(f) +allFiles = sys.argv[1] == "1" # Convert a module name to a path # Ex: ":features:verifysession:impl" => "features/verifysession/impl" @@ -35,20 +37,21 @@ for entry in config["modules"]: "equals: ${languageCode}, en" ] } - # Create action for the translations - actionTranslation = { - "type": "android", - "output": convertModuleToPath(entry["name"]) + "/src/main/res/values-${langAndroidResNoScript}/translations.xml", - "includeKeys": list(map(lambda i: "REGEX:" + i, entry["includeRegex"])), - "excludeKeys": list(map(lambda i: "REGEX:" + i, regexToAlwaysExclude)), - "conditions": [ - "!equals: ${languageCode}, en" - ] - } # print(action) - allRegexToExcludeFromMainModule.extend(entry["includeRegex"]) allActions.append(action) - allActions.append(actionTranslation) + # Create action for the translations + if allFiles: + actionTranslation = { + "type": "android", + "output": convertModuleToPath(entry["name"]) + "/src/main/res/values-${langAndroidResNoScript}/translations.xml", + "includeKeys": list(map(lambda i: "REGEX:" + i, entry["includeRegex"])), + "excludeKeys": list(map(lambda i: "REGEX:" + i, regexToAlwaysExclude)), + "conditions": [ + "!equals: ${languageCode}, en" + ] + } + allActions.append(actionTranslation) + allRegexToExcludeFromMainModule.extend(entry["includeRegex"]) # Append configuration for the main string module: default language mainAction = { @@ -62,16 +65,17 @@ mainAction = { # print(mainAction) allActions.append(mainAction) -# Append configuration for the main string module: translations -mainActionTranslation = { - "type": "android", - "output": "libraries/ui-strings/src/main/res/values-${langAndroidResNoScript}/translations.xml", - "excludeKeys": list(map(lambda i: "REGEX:" + i, allRegexToExcludeFromMainModule + regexToAlwaysExclude)), - "conditions": [ - "!equals: ${languageCode}, en" - ] -} -allActions.append(mainActionTranslation) +if allFiles: + # Append configuration for the main string module: translations + mainActionTranslation = { + "type": "android", + "output": "libraries/ui-strings/src/main/res/values-${langAndroidResNoScript}/translations.xml", + "excludeKeys": list(map(lambda i: "REGEX:" + i, allRegexToExcludeFromMainModule + regexToAlwaysExclude)), + "conditions": [ + "!equals: ${languageCode}, en" + ] + } + allActions.append(mainActionTranslation) # Generate the configuration for localazy result = { From e211d034762e515753a1cb50576c24569b553631 Mon Sep 17 00:00:00 2001 From: Benoit Marty Date: Wed, 5 Apr 2023 11:04:18 +0200 Subject: [PATCH 2/6] Add GitHub action to sync Localazy strings. --- .github/workflows/sync-localazy.yml | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) create mode 100644 .github/workflows/sync-localazy.yml diff --git a/.github/workflows/sync-localazy.yml b/.github/workflows/sync-localazy.yml new file mode 100644 index 0000000000..3efbb41f27 --- /dev/null +++ b/.github/workflows/sync-localazy.yml @@ -0,0 +1,28 @@ +name: Sync Localazy +on: + schedule: + # At 00:00 on every Monday UTC + - cron: '0 0 * * 1' + +jobs: + sync-localazy: + runs-on: ubuntu-latest + # Skip in forks + if: github.repository == 'vector-im/element-x-android' + steps: + - uses: actions/checkout@v3 + - name: Set up Python 3.8 + uses: actions/setup-python@v4 + with: + python-version: 3.8 + - name: Run Localazy script + run: ./tools/localazy/downloadStrings.sh --all + - name: Create Pull Request for Strings + uses: peter-evans/create-pull-request@v4 + with: + commit-message: Sync Strings from Localazy + title: Sync Strings + body: | + - Update Strings from Localazy + branch: sync-localazy + base: develop From cca31af3f45cb9774c8237ebe9747b0b073d2444 Mon Sep 17 00:00:00 2001 From: Benoit Marty Date: Wed, 5 Apr 2023 11:11:47 +0200 Subject: [PATCH 3/6] Invoke `./tools/localazy/downloadStrings.sh --all` --- .../src/main/res/values-es/translations.xml | 6 + .../src/main/res/values-it/translations.xml | 6 + .../src/main/res/values-ro/translations.xml | 6 + .../src/main/res/values-es/translations.xml | 20 +++ .../src/main/res/values-it/translations.xml | 20 +++ .../src/main/res/values-ro/translations.xml | 20 +++ .../src/main/res/values-es/translations.xml | 8 + .../src/main/res/values-it/translations.xml | 8 + .../src/main/res/values-ro/translations.xml | 8 + .../src/main/res/values-es/translations.xml | 5 + .../src/main/res/values-it/translations.xml | 5 + .../src/main/res/values-ro/translations.xml | 5 + .../src/main/res/values-es/translations.xml | 5 + .../src/main/res/values-it/translations.xml | 5 + .../src/main/res/values-ro/translations.xml | 5 + .../src/main/res/values-es/translations.xml | 14 ++ .../src/main/res/values-it/translations.xml | 14 ++ .../src/main/res/values-ro/translations.xml | 14 ++ .../src/main/res/values-es/translations.xml | 25 +++ .../src/main/res/values-it/translations.xml | 21 +++ .../src/main/res/values-ro/translations.xml | 22 +++ .../impl/src/main/res/values/localazy.xml | 6 + .../src/main/res/values-es/translations.xml | 61 +++++++ .../src/main/res/values-it/translations.xml | 61 +++++++ .../src/main/res/values-ro/translations.xml | 61 +++++++ .../src/main/res/values-es/translations.xml | 19 +++ .../src/main/res/values-it/translations.xml | 19 +++ .../src/main/res/values-ro/translations.xml | 19 +++ .../src/main/res/values-es/translations.xml | 17 ++ .../src/main/res/values-it/translations.xml | 17 ++ .../src/main/res/values-ro/translations.xml | 17 ++ .../src/main/res/values-de/translations.xml | 1 + .../src/main/res/values-es/translations.xml | 156 ++++++++++++++++++ .../src/main/res/values-fr/translations.xml | 1 + .../src/main/res/values-it/translations.xml | 148 +++++++++++++++++ .../src/main/res/values-ro/translations.xml | 150 ++++++++++++++++- .../src/main/res/values/localazy.xml | 11 +- 37 files changed, 995 insertions(+), 11 deletions(-) create mode 100644 features/createroom/impl/src/main/res/values-es/translations.xml create mode 100644 features/createroom/impl/src/main/res/values-it/translations.xml create mode 100644 features/createroom/impl/src/main/res/values-ro/translations.xml create mode 100644 features/login/impl/src/main/res/values-es/translations.xml create mode 100644 features/login/impl/src/main/res/values-it/translations.xml create mode 100644 features/login/impl/src/main/res/values-ro/translations.xml create mode 100644 features/logout/api/src/main/res/values-es/translations.xml create mode 100644 features/logout/api/src/main/res/values-it/translations.xml create mode 100644 features/logout/api/src/main/res/values-ro/translations.xml create mode 100644 features/onboarding/impl/src/main/res/values-es/translations.xml create mode 100644 features/onboarding/impl/src/main/res/values-it/translations.xml create mode 100644 features/onboarding/impl/src/main/res/values-ro/translations.xml create mode 100644 features/rageshake/api/src/main/res/values-es/translations.xml create mode 100644 features/rageshake/api/src/main/res/values-it/translations.xml create mode 100644 features/rageshake/api/src/main/res/values-ro/translations.xml create mode 100644 features/rageshake/impl/src/main/res/values-es/translations.xml create mode 100644 features/rageshake/impl/src/main/res/values-it/translations.xml create mode 100644 features/rageshake/impl/src/main/res/values-ro/translations.xml create mode 100644 features/roomdetails/impl/src/main/res/values-es/translations.xml create mode 100644 features/roomdetails/impl/src/main/res/values-it/translations.xml create mode 100644 features/roomdetails/impl/src/main/res/values-ro/translations.xml create mode 100644 features/roomlist/impl/src/main/res/values-es/translations.xml create mode 100644 features/roomlist/impl/src/main/res/values-it/translations.xml create mode 100644 features/roomlist/impl/src/main/res/values-ro/translations.xml create mode 100644 features/verifysession/impl/src/main/res/values-es/translations.xml create mode 100644 features/verifysession/impl/src/main/res/values-it/translations.xml create mode 100644 features/verifysession/impl/src/main/res/values-ro/translations.xml create mode 100644 libraries/textcomposer/src/main/res/values-es/translations.xml create mode 100644 libraries/textcomposer/src/main/res/values-it/translations.xml create mode 100644 libraries/textcomposer/src/main/res/values-ro/translations.xml create mode 100644 libraries/ui-strings/src/main/res/values-es/translations.xml create mode 100644 libraries/ui-strings/src/main/res/values-it/translations.xml diff --git a/features/createroom/impl/src/main/res/values-es/translations.xml b/features/createroom/impl/src/main/res/values-es/translations.xml new file mode 100644 index 0000000000..f6248df74e --- /dev/null +++ b/features/createroom/impl/src/main/res/values-es/translations.xml @@ -0,0 +1,6 @@ + + + "Nueva sala" + "Invitar gente" + "Añadir personas" + \ No newline at end of file diff --git a/features/createroom/impl/src/main/res/values-it/translations.xml b/features/createroom/impl/src/main/res/values-it/translations.xml new file mode 100644 index 0000000000..ea0c0b10e1 --- /dev/null +++ b/features/createroom/impl/src/main/res/values-it/translations.xml @@ -0,0 +1,6 @@ + + + "Nuova stanza" + "Invita persone" + "Aggiungi persone" + \ No newline at end of file diff --git a/features/createroom/impl/src/main/res/values-ro/translations.xml b/features/createroom/impl/src/main/res/values-ro/translations.xml new file mode 100644 index 0000000000..98839a883e --- /dev/null +++ b/features/createroom/impl/src/main/res/values-ro/translations.xml @@ -0,0 +1,6 @@ + + + "Cameră nouă" + "Invitați persoane" + "Adaugați persoane" + \ No newline at end of file diff --git a/features/login/impl/src/main/res/values-es/translations.xml b/features/login/impl/src/main/res/values-es/translations.xml new file mode 100644 index 0000000000..a299083994 --- /dev/null +++ b/features/login/impl/src/main/res/values-es/translations.xml @@ -0,0 +1,20 @@ + + + "No hemos podido acceder a este servidor. Comprueba que has introducido correctamente la dirección del servidor. Si la dirección es correcta, ponte en contacto con el administrador del servidor para obtener más ayuda." + "Este servidor no soporta sliding sync." + "Dirección del homeserver" + "Solo puedes conectarte a un servidor que soporte sliding sync. El administrador de tu servidor tendrá que configurarlo. %1$s" + "Continuar" + "¿Cuál es la dirección de tu servidor?" + "Selecciona tu servidor" + "Esta cuenta ha sido desactivada." + "Usuario y/o contraseña incorrectos" + "Este no es un id de usuario válido. Formato esperado: \'@user:homeserver.org\'" + "El servidor seleccionado no admite contraseñas ni inicio de sesión OIDC. Póngase en contacto con su administrador o elija otro homeserver." + "Introduce tus datos" + "Contraseña" + "Donde viven tus conversaciones" + "Continuar" + "¡Hola de nuevo!" + "Usuario" + \ No newline at end of file diff --git a/features/login/impl/src/main/res/values-it/translations.xml b/features/login/impl/src/main/res/values-it/translations.xml new file mode 100644 index 0000000000..429f156883 --- /dev/null +++ b/features/login/impl/src/main/res/values-it/translations.xml @@ -0,0 +1,20 @@ + + + "Non siamo riusciti a raggiungere questo homserver. Verifica di aver inserito correttamente l\'URL del server domestico. Se l\'URL è corretto, contatta l\'amministratore del tuo server domestico per ulteriore assistenza." + "Questo server attualmente non supporta la sincronizzazione scorrevole." + "URL dell\'homeserver" + "Puoi connetterti solo a un server esistente che supporta la sincronizzazione scorrevole. L\'amministratore del tuo server domestico dovrà configurarlo. %1$s" + "Continua" + "Qual è l\'indirizzo del tuo server?" + "Seleziona il tuo server" + "Questo profilo è stato disattivato." + "Nome utente e/o password errati" + "Questo non è un identificatore utente valido. Formato previsto: \'@user:homeserver.org\'" + "L\'homeserver selezionato non supporta la password o l\'accesso OIDC. Contatta il tuo amministratore o scegli un altro homeserver." + "Inserisci i tuoi dati" + "Password" + "Dove vivono le tue conversazioni" + "Continua" + "Bentornato!" + "Nome utente" + \ No newline at end of file diff --git a/features/login/impl/src/main/res/values-ro/translations.xml b/features/login/impl/src/main/res/values-ro/translations.xml new file mode 100644 index 0000000000..2b5cce6829 --- /dev/null +++ b/features/login/impl/src/main/res/values-ro/translations.xml @@ -0,0 +1,20 @@ + + + "Nu am putut accesa acest homeserver. Te rugăm să verifici că ai introdus corect adresa URL a homeserver-ului. Dacă adresa URL este corectă, contactează administratorul homeserver-ului pentru ajutor suplimentar." + "Momentan acest server nu oferă suport pentru sliding sync." + "Adresa URL a homeserver-ului" + "Vă putețo conecta numai la un server existent care oferă suport pentru sliding sync. Administratorul homeserver-ului dumneavoastră va trebui să îl configureze. %1$s" + "Continuați" + "Care este adresa serverului dumneavoastră?" + "Selectați serverul" + "Acest cont a fost dezactivat." + "Utilizator și/sau parolă incorecte" + "Acesta nu este un identificator de utilizator valid. Format așteptat: „@user:homeserver.org”" + "Homeserver-ul selectat nu acceptă autentificarea prin parola sau OIDC. Te rugăm să contactezi administratorul sau să alegi un alt homeserver." + "Introduceți detaliile" + "Parolă" + "Locul unde trăiesc conversațiile tale" + "Continuați" + "Bine ați revenit!" + "Utilizator" + \ No newline at end of file diff --git a/features/logout/api/src/main/res/values-es/translations.xml b/features/logout/api/src/main/res/values-es/translations.xml new file mode 100644 index 0000000000..9072ab88a2 --- /dev/null +++ b/features/logout/api/src/main/res/values-es/translations.xml @@ -0,0 +1,8 @@ + + + "¿Estás seguro de que quieres cerrar sesión?" + "Cerrar sesión" + "Cerrar sesión" + "Cerrando sesión…" + "Cerrar sesión" + \ No newline at end of file diff --git a/features/logout/api/src/main/res/values-it/translations.xml b/features/logout/api/src/main/res/values-it/translations.xml new file mode 100644 index 0000000000..8b01a02780 --- /dev/null +++ b/features/logout/api/src/main/res/values-it/translations.xml @@ -0,0 +1,8 @@ + + + "Sei sicuro di voler uscire?" + "Esci" + "Esci" + "Uscita in corso..." + "Esci" + \ No newline at end of file diff --git a/features/logout/api/src/main/res/values-ro/translations.xml b/features/logout/api/src/main/res/values-ro/translations.xml new file mode 100644 index 0000000000..8befb1b1dd --- /dev/null +++ b/features/logout/api/src/main/res/values-ro/translations.xml @@ -0,0 +1,8 @@ + + + "Sunteți sigur că vreți să vă deconectați?" + "Deconectați-vă" + "Deconectați-vă" + "Deconectare în curs…" + "Deconectați-vă" + \ No newline at end of file diff --git a/features/onboarding/impl/src/main/res/values-es/translations.xml b/features/onboarding/impl/src/main/res/values-es/translations.xml new file mode 100644 index 0000000000..235fb4558a --- /dev/null +++ b/features/onboarding/impl/src/main/res/values-es/translations.xml @@ -0,0 +1,5 @@ + + + "Bienvenido a la beta de %1$s. Vitaminado, para mayor rapidez y sencillez." + "Siéntente en tu Elemento" + \ No newline at end of file diff --git a/features/onboarding/impl/src/main/res/values-it/translations.xml b/features/onboarding/impl/src/main/res/values-it/translations.xml new file mode 100644 index 0000000000..cd3c6a696c --- /dev/null +++ b/features/onboarding/impl/src/main/res/values-it/translations.xml @@ -0,0 +1,5 @@ + + + "Benvenuto nella beta di %1$s. Potenziato in velocità e semplicità." + "Sii nel tuo elemento" + \ No newline at end of file diff --git a/features/onboarding/impl/src/main/res/values-ro/translations.xml b/features/onboarding/impl/src/main/res/values-ro/translations.xml new file mode 100644 index 0000000000..03d967ab75 --- /dev/null +++ b/features/onboarding/impl/src/main/res/values-ro/translations.xml @@ -0,0 +1,5 @@ + + + "Bun venit la versiunea beta a %1$s. Supraalimentat, pentru viteză și simplitate." + "Fii în Elementul tău" + \ No newline at end of file diff --git a/features/rageshake/api/src/main/res/values-es/translations.xml b/features/rageshake/api/src/main/res/values-es/translations.xml new file mode 100644 index 0000000000..26ff483b91 --- /dev/null +++ b/features/rageshake/api/src/main/res/values-es/translations.xml @@ -0,0 +1,5 @@ + + + "%1$s se cerró inesperadamente la última vez que se lo usaste. ¿Quieres compartir un informe de error con nosotros?" + "Parece que sacudes el teléfono con frustración. ¿Quieres abrir la pantalla de informe de errores?" + \ No newline at end of file diff --git a/features/rageshake/api/src/main/res/values-it/translations.xml b/features/rageshake/api/src/main/res/values-it/translations.xml new file mode 100644 index 0000000000..e6ef37d287 --- /dev/null +++ b/features/rageshake/api/src/main/res/values-it/translations.xml @@ -0,0 +1,5 @@ + + + "%1$s si è chiuso inaspettatamente l\'ultima volta che è stato usato. Vuoi condividere con noi un rapporto sull\'arresto anomalo?" + "Sembra che tu stia scuotendo il telefono per la frustrazione. Vuoi aprire la schermata di segnalazione dei problemi?" + \ No newline at end of file diff --git a/features/rageshake/api/src/main/res/values-ro/translations.xml b/features/rageshake/api/src/main/res/values-ro/translations.xml new file mode 100644 index 0000000000..17180d5145 --- /dev/null +++ b/features/rageshake/api/src/main/res/values-ro/translations.xml @@ -0,0 +1,5 @@ + + + "%1$s s-a blocat ultima dată când a fost folosit. Doriți să ne trimiteți un raport?" + "Se pare că scuturați telefonul de frustrare. Doriți să deschdeți ecranul de raportare a unei erori?" + \ No newline at end of file diff --git a/features/rageshake/impl/src/main/res/values-es/translations.xml b/features/rageshake/impl/src/main/res/values-es/translations.xml new file mode 100644 index 0000000000..527376f268 --- /dev/null +++ b/features/rageshake/impl/src/main/res/values-es/translations.xml @@ -0,0 +1,14 @@ + + + "Adjuntar captura de pantalla" + "Podéis poneros en contacto conmigo para resolver dudas relacionadas" + "Editar captura de pantalla" + "Describe el problema. ¿Qué hiciste? ¿Qué esperabas que ocurriera? ¿Qué ocurrió en realidad? Por favor, detállalo todo lo que puedas." + "Describe el error..." + "Si es posible, escriba la descripción en inglés." + "Enviar registros de fallos" + "Enviar registros para ayudar" + "Enviar captura de pantalla" + "Para comprobar que todo funciona correctamente, se enviarán registros de fallos con su mensaje. Serán privados. Para enviar sólo tu mensaje, desactiva esta opción." + "%1$s se cerró inesperadamente la última vez que se lo usaste. ¿Quieres compartir un informe de error con nosotros?" + \ No newline at end of file diff --git a/features/rageshake/impl/src/main/res/values-it/translations.xml b/features/rageshake/impl/src/main/res/values-it/translations.xml new file mode 100644 index 0000000000..60397f8719 --- /dev/null +++ b/features/rageshake/impl/src/main/res/values-it/translations.xml @@ -0,0 +1,14 @@ + + + "Allega istantanea schermo" + "Potete contattarmi per qualsiasi altra domanda" + "Modifica istantanea schermo" + "Descrivi il bug. Che cosa hai fatto? Cosa ti aspettavi che accadesse? Cosa è effettivamente accaduto. Si prega di inserire il maggior numero di dettagli possibile." + "Descrivi il problema..." + "Se possibile, scrivere la descrizione in inglese." + "Invia i log degli arresti anomali" + "Invia i log per aiutarci" + "Invia istantanea schermo" + "Per verificare che le cose funzionino come previsto, i log verranno inviati con il tuo messaggio. Questi saranno privati. Per inviare solo il tuo messaggio, disattiva questa impostazione." + "%1$s si è chiuso inaspettatamente l\'ultima volta che è stato usato. Vuoi condividere con noi un rapporto sull\'arresto anomalo?" + \ No newline at end of file diff --git a/features/rageshake/impl/src/main/res/values-ro/translations.xml b/features/rageshake/impl/src/main/res/values-ro/translations.xml new file mode 100644 index 0000000000..6b66ea417e --- /dev/null +++ b/features/rageshake/impl/src/main/res/values-ro/translations.xml @@ -0,0 +1,14 @@ + + + "Atașați o captură de ecran" + "Puteți să mă contactați dacă aveți întrebări suplimentare" + "Editați captura de ecran" + "Vă rugăm să descrieți eroarea. Ce ați făcut? Ce vă aşteptați să se întâmple? Ce s-a întâmplat de fapt. Vă rugam să intrați în cât mai multe detalii cu putință." + "Descrieți eroarea…" + "Dacă posibil, vă rugăm să scrieți descrierea în engleză." + "Trimiteți log-uri" + "Trimiteți log-uri pentru a ajuta" + "Trimiteți captură de ecran" + "Pentru a verifica că lucrurile funcționează conform așteptărilor, log-uri vor fi trimise împreună cu mesajul. Acestea vor fi private. Pentru a trimite doar mesajul, dezactivați această setare." + "%1$s s-a blocat ultima dată când a fost folosit. Dorești să ne trimiti un raport?" + \ No newline at end of file diff --git a/features/roomdetails/impl/src/main/res/values-es/translations.xml b/features/roomdetails/impl/src/main/res/values-es/translations.xml new file mode 100644 index 0000000000..817d3613ae --- /dev/null +++ b/features/roomdetails/impl/src/main/res/values-es/translations.xml @@ -0,0 +1,25 @@ + + + + "0 personas" + "Una persona" + + + + "%1$d personas" + + "Bloquear" + "Los usuarios bloqueados no podrán enviarte mensajes y se ocultarán todos sus mensajes. Puedes revertir esta acción en cualquier momento." + "Bloquear usuario" + "Desbloquear" + "Al desbloquear al usuario, podrás volver a ver todos sus mensajes." + "Desbloquear usuario" + "Los mensajes están protegidos con \"candados\". Sólo tú y los destinatarios tenéis las llaves únicas para abrirlos." + "Cifrado de mensajes activado" + "Invitar a otras personas" + "Salir de la sala" + "Personas" + "Seguridad" + "Compartir sala" + "Tema" + \ No newline at end of file diff --git a/features/roomdetails/impl/src/main/res/values-it/translations.xml b/features/roomdetails/impl/src/main/res/values-it/translations.xml new file mode 100644 index 0000000000..9a980b79a9 --- /dev/null +++ b/features/roomdetails/impl/src/main/res/values-it/translations.xml @@ -0,0 +1,21 @@ + + + + "1 persona" + "%1$d persone" + + "Blocca" + "Gli utenti bloccati non saranno in grado di inviarti messaggi e tutti i loro messaggi saranno nascosti. Potrai annullare questa azione in qualsiasi momento." + "Blocca utente" + "Sblocca" + "Dopo aver sbloccato l\'utente, potrai vedere nuovamente tutti i suoi messaggi." + "Sblocca utente" + "I messaggi sono protetti da lucchetti. Solo tu e i destinatari avete le chiavi univoche per sbloccarli." + "Crittografia messaggi abilitata" + "Invita persone" + "Esci dalla stanza" + "Persone" + "Sicurezza" + "Condividi stanza" + "Oggetto" + \ No newline at end of file diff --git a/features/roomdetails/impl/src/main/res/values-ro/translations.xml b/features/roomdetails/impl/src/main/res/values-ro/translations.xml new file mode 100644 index 0000000000..db6777fb7f --- /dev/null +++ b/features/roomdetails/impl/src/main/res/values-ro/translations.xml @@ -0,0 +1,22 @@ + + + + "o persoană" + + "%1$d persoane" + + "Blocați" + "Utilizatorii blocați nu vă vor putea trimite mesaje și toate mesajele lor vor fi ascunse. Puteți anula această acțiune oricând." + "Blocați utilizatorul" + "Deblocați" + "La deblocarea utilizatorului, veți putea vedea din nou toate mesajele de la acesta." + "Deblocați utilizatorul" + "Mesajele sunt securizate cu încuietori. Doar dumneavoastră și destinatarii aveți cheile unice pentru a le debloca." + "Criptarea mesajelor este activată" + "Invitați persoane" + "Părăsiți camera" + "Persoane" + "Securitate" + "Partajați camera" + "Subiect" + \ No newline at end of file diff --git a/features/roomdetails/impl/src/main/res/values/localazy.xml b/features/roomdetails/impl/src/main/res/values/localazy.xml index 82c0c1c418..f63757a8e3 100644 --- a/features/roomdetails/impl/src/main/res/values/localazy.xml +++ b/features/roomdetails/impl/src/main/res/values/localazy.xml @@ -4,6 +4,12 @@ "1 person" "%1$d people" + "Block" + "Blocked users will not be able to send you messages and all message by them will be hidden. You can reverse this action anytime." + "Block user" + "Unblock" + "On unblocking the user, you will be able to see all messages by them again." + "Unblock user" "Messages are secured with locks. Only you and the recipients have the unique keys to unlock them." "Message encryption enabled" "Invite people" diff --git a/features/roomlist/impl/src/main/res/values-es/translations.xml b/features/roomlist/impl/src/main/res/values-es/translations.xml new file mode 100644 index 0000000000..079ffb2e72 --- /dev/null +++ b/features/roomlist/impl/src/main/res/values-es/translations.xml @@ -0,0 +1,61 @@ + + + "Crear una nueva conversación o sala" + "Todos los chats" + "Parece que estás usando un nuevo dispositivo. Verifica que eres tú para acceder a tus mensajes cifrados." + "Accede a tu historial de mensajes" + "(el avatar también cambió)" + "%1$s cambió su avatar" + "Cambiaste tu avatar" + "%1$s cambió su nombre de %2$s a %3$s" + "Cambiaste tu nombre de %1$s a %2$s" + "%1$s eliminó su nombre (era %2$s)" + "Eliminaste tu nombre (era %1$s)" + "%1$s cambió su nombre a %2$s" + "Cambiaste tu nombre a %1$s" + "%1$s cambió el avatar de la sala" + "Cambiaste el avatar de la sala" + "%1$s eliminó el avatar de la sala" + "Eliminaste el avatar de la sala" + "%1$s expulsó permanentemente a %2$s" + "Expulsaste permanentemente a %1$s" + "%1$s creó la sala" + "Tú creaste la sala" + "%1$s invitó a %2$s" + "%1$s aceptó la invitación" + "Aceptaste la invitación" + "Invitaste a %1$s" + "%1$s te invitó." + "%1$s se unió a la sala" + "Te uniste a la sala" + "%1$s solicitó unirse" + "%1$s permitió que %2$s se uniera" + "%1$s te permitió unirte" + "Solicitaste unirte" + "%1$s rechazó la solicitud de %2$s para unirse" + "Rechazaste la solicitud de %1$s para unirte" + "%1$s rechazó su solicitud para unirte" + "%1$s ya no está interesado en unirse" + "Cancelaste tu solicitud de unirte" + "%1$s salió de la sala" + "Saliste de la sala" + "%1$s cambió el nombre de la sala a: %2$s" + "Cambiaste el nombre de la sala a: %1$s" + "%1$s eliminó el nombre de la sala" + "Eliminaste el nombre de la sala" + "%1$s rechazó la invitación" + "Rechazaste la invitación" + "%1$s echó a %2$s" + "Echaste a %1$s" + "%1$s envió una invitación a %2$s para unirse a la sala" + "Enviaste una invitación a %1$s para unirse a la sala" + "%1$s revocó la invitación a %2$s para unirse a la sala" + "Revocaste la invitación de %1$s para unirse a la sala" + "%1$s cambió el tema a: %2$s" + "Cambiaste el tema a: %1$s" + "%1$s eliminó el tema de la sala" + "Eliminaste el tema de la sala" + "%1$s readmitió a %2$s" + "Readmitiste a %1$s" + "%1$s realizó un cambio desconocido en su membresía" + \ No newline at end of file diff --git a/features/roomlist/impl/src/main/res/values-it/translations.xml b/features/roomlist/impl/src/main/res/values-it/translations.xml new file mode 100644 index 0000000000..20bf487937 --- /dev/null +++ b/features/roomlist/impl/src/main/res/values-it/translations.xml @@ -0,0 +1,61 @@ + + + "Crea una nuova conversazione o stanza" + "Tutte le conversazioni" + "Sembra che tu stia utilizzando un nuovo dispositivo. Verifica di essere tu per accedere ai tuoi messaggi crittografati." + "Accedi alla cronologia dei messaggi" + "(anche l\'avatar è stato cambiato)" + "%1$s ha cambiato il proprio avatar" + "Hai cambiato il tuo avatar" + "%1$s ha cambiato il proprio nome visualizzato da %2$s a %3$s" + "Hai cambiato il tuo nome visualizzato da %1$s a %2$s" + "%1$s ha rimosso il proprio nome visualizzato (era %2$s)" + "Hai rimosso il tuo nome visualizzato (era %1$s)" + "%1$s ha impostato il proprio nome visualizzato su %2$s" + "Hai impostato il tuo nome visualizzato su %1$s" + "%1$s ha cambiato l\'avatar della stanza" + "Hai cambiato l\'avatar della stanza" + "%1$s ha rimosso l\'avatar della stanza" + "Hai rimosso l\'avatar della stanza" + "%1$s ha rimosso %2$s" + "Hai rimosso %1$s" + "%1$s ha creato la stanza" + "Hai creato la stanza" + "%1$s ha invitato %2$s" + "%1$s ha accettato l\'invito" + "Hai accettato l\'invito" + "Hai invitato %1$s" + "%1$s ti ha invitato" + "%1$s si è unito alla stanza" + "Ti sei unito alla stanza" + "%1$s ha chiesto di unirsi" + "%1$s ha permesso a %2$s di unirsi" + "%1$s ti ha permesso di unirti" + "Hai richiesto di unirti" + "%1$s ha rifiutato la richiesta di unirsi di %2$s" + "Hai rifiutato la richiesta di unirsi di %1$s" + "%1$s ha rifiutato la tua richiesta di unirti" + "%1$s non è più interessato a partecipare" + "Hai annullato la tua richiesta di unirti" + "%1$s ha lasciato la stanza" + "Hai lasciato la stanza" + "%1$s ha cambiato il nome della stanza in: %2$s" + "Hai cambiato il nome della stanza in: %1$s" + "%1$s ha rimosso il nome della stanza" + "Hai rimosso il nome della stanza" + "%1$s ha rifiutato l\'invito" + "Hai rifiutato l\'invito" + "%1$s ha rimosso %2$s" + "Hai rimosso %1$s" + "%1$s ha inviato un invito a %2$s per unirsi alla stanza" + "Hai inviato un invito a %1$s per unirsi alla stanza" + "%1$s ha revocato l\'invito di %2$s ad unirsi alla stanza." + "Hai revocato l\'invito a %1$s a universi alla stanza" + "%1$s ha cambiato l\'oggetto in: %2$s" + "Hai cambiato l\'oggetto in: %1$s" + "%1$s ha rimosso l\'oggetto della stanza" + "Hai rimosso l\'oggetto della stanza" + "%1$s ha sbloccato %2$s" + "Hai sbloccato %1$s" + "%1$s ha apportato una modifica sconosciuta alla propria iscrizione" + \ No newline at end of file diff --git a/features/roomlist/impl/src/main/res/values-ro/translations.xml b/features/roomlist/impl/src/main/res/values-ro/translations.xml new file mode 100644 index 0000000000..89760b3497 --- /dev/null +++ b/features/roomlist/impl/src/main/res/values-ro/translations.xml @@ -0,0 +1,61 @@ + + + "Creați o conversație sau o cameră nouă" + "Toate conversatiile" + "Se pare că folosiți un dispozitiv nou. Verificați-vă identitatea pentru acces la mesajele dumneavoastră criptate." + "Accesați istoricul mesajelor" + "(s-a schimbat si avatarul)" + "%1$s și-a schimbat avatarul" + "V-ați schimbat avatarul" + "%1$s și-a schimbat numele din %2$s în %3$s" + "V-ați schimbat numele din %1$s în %2$s" + "%1$s și-a sters numele (era %2$s)" + "V-ați sters numele (era %1$s)" + "%1$s și-a schimbat numele %2$s" + "V-ați schimbat numele în %1$s" + "%1$s a schimbat avatarul camerei" + "Ați schimbat avatarul camerei" + "%1$s a șters avatarul camerei" + "Ați șters avatarul camerei" + "%1$s a adăugat o interdicție pentru %2$s" + "Ați adăugat o interdicție pentru %1$s" + "%1$s a creat camera" + "Ați creat camera" + "%1$s l-a invitat pe %2$s" + "%1$s a acceptat invitația" + "Ați acceptat invitația" + "L-ați invitat pe %1$s" + "%1$s v-a invitat" + "%1$s a intrat în cameră" + "Ați intrat în cameră" + "%1$s a solicitat să se alăture camerei" + "%1$s i-a permis lui %2$s să se alăture camerei" + "%1$s v-a permis să vă alăturați camerei" + "Ați solicitat să vă alăturați camerei" + "%1$s a respins solicitarea de alăturare a lui %2$s" + "Ați respins solicitarea de alăturare a lui %1$s" + "%1$s a respins cererea dumneavoastră de alăturare" + "%1$s nu mai este interesat să se alăture camerei" + "Ați anulat cererea de alăturare" + "%1$s a părăsit camera" + "Ați părăsit camera" + "%1$s a schimbat numele camerei în: %2$s" + "Ați schimbat numele camerei în: %1$s" + "%1$s a sters numele camerei" + "Ați șters numele camerei" + "%1$s a respins invitația" + "Ați respins invitația" + "%1$s l-a îndepărtat pe %2$s" + "L-ați îndepărtat pe %1$s" + "%1$s a trimis o invitație către %2$s pentru a se alătura camerei" + "Ați trimis o invitație către %1$s pentru a se alătura camerei" + "%1$s a revocat invitația pentru %2$s de a se alătura camerei" + "Ați revocat invitația pentru %1$s de a se alătura camerei" + "%1$s a schimbat subiectul în: %2$s" + "Ați schimbat subiectul în: %1$s" + "%1$s a șters subiectul camerei" + "Ați șters subiectul camerei" + "%1$s a anulat interdicția pentru %2$s" + "Ați anulat interdicția pentru %1$s" + "%1$s a făcut o modificare necunoscută asupra calității sale de membru" + \ No newline at end of file diff --git a/features/verifysession/impl/src/main/res/values-es/translations.xml b/features/verifysession/impl/src/main/res/values-es/translations.xml new file mode 100644 index 0000000000..839c945e24 --- /dev/null +++ b/features/verifysession/impl/src/main/res/values-es/translations.xml @@ -0,0 +1,19 @@ + + + "Algo no fue bien. Se agotó el tiempo de espera de la solicitud o se rechazó." + "Verificación cancelada" + "Confirma que los emojis que aparecen a continuación coinciden con los que aparecen en tu otra sesión." + "Comparar emojis" + "Tu nueva sesión ya está verificada. Tienes acceso a tus mensajes cifrados y otros usuarios lo considerarán de confianza." + "Demuestra que eres tú para acceder a tu historial de mensajes cifrados." + "Abrir una sesión existente" + "Reintentar la verificación" + "Estoy listo" + "Comenzar" + "Esperando a que coincida" + "Compara los emoji, asegurándote de que aparecen en el mismo orden." + "No coinciden" + "Coinciden" + "Acepta la solicitud para iniciar el proceso de verificación en tu otra sesión para continuar." + "A la espera de aceptar la solicitud" + \ No newline at end of file diff --git a/features/verifysession/impl/src/main/res/values-it/translations.xml b/features/verifysession/impl/src/main/res/values-it/translations.xml new file mode 100644 index 0000000000..3d8a46d581 --- /dev/null +++ b/features/verifysession/impl/src/main/res/values-it/translations.xml @@ -0,0 +1,19 @@ + + + "C\'è qualcosa che non va. La richiesta è scaduta o è stata rifiutata." + "Verifica annullata" + "Verifica che gli emoji sottostanti corrispondano a quelli mostrati nell\'altra sessione." + "Confronta le emoji" + "La tua nuova sessione è ora verificata. Ha accesso ai tuoi messaggi crittografati e gli altri utenti la vedranno come attendibile." + "Dimostra la tua identità per accedere alla cronologia dei messaggi crittografati." + "Apri una sessione esistente" + "Riprova la verifica" + "Sono pronto" + "Inizia" + "In attesa di un riscontro" + "Confronta le emoji uniche, assicurandoti che appaiano nello stesso ordine." + "Non corrispondono" + "Corrispondono" + "Accetta la richiesta di avviare il processo di verifica nell\'altra sessione per continuare." + "In attesa di accettare la richiesta" + \ No newline at end of file diff --git a/features/verifysession/impl/src/main/res/values-ro/translations.xml b/features/verifysession/impl/src/main/res/values-ro/translations.xml new file mode 100644 index 0000000000..f2bade56fc --- /dev/null +++ b/features/verifysession/impl/src/main/res/values-ro/translations.xml @@ -0,0 +1,19 @@ + + + "Ceva nu este în regulă. Fie cererea a expirat, fie a fost respinsă." + "Verificare anulată" + "Confirmați că emoticoanele de mai jos se potrivesc cu cele afișate în cealaltă sesiune." + "Comparați emoticoanele" + "Noua dumneavoastră sesiune este acum verificată. Are acces la mesajele dumneavoastră criptate, iar alți utilizatori vă vor vedea ca fiind de încredere." + "Demonstrați-vă identitatea pentru a accesa istoricul mesajelor criptate." + "Deschideți o sesiune existentă" + "Reîncercați verificarea" + "Sunt pregătit" + "Începeți" + "Se așteaptă confirmarea" + "Comparăți emoticoalene asigurându-vă că apar în aceeași ordine." + "Nu se potrivesc" + "Se potrivesc" + "Acceptați solicitarea de a începe procesul de verificare în cealaltă sesiune pentru a continua." + "Se așteptă acceptarea cererii" + \ No newline at end of file diff --git a/libraries/textcomposer/src/main/res/values-es/translations.xml b/libraries/textcomposer/src/main/res/values-es/translations.xml new file mode 100644 index 0000000000..7392bd2b31 --- /dev/null +++ b/libraries/textcomposer/src/main/res/values-es/translations.xml @@ -0,0 +1,17 @@ + + + "Lista de puntos" + "Bloque de código" + "Mensaje..." + "Aplicar formato negrita" + "Aplicar formato cursiva" + "Aplicar formato tachado" + "Aplicar formato de subrayado" + "Pantalla completa" + "Añadir sangría" + "Código" + "Enlazar" + "Lista numérica" + "Cita" + "Quitar sangría" + \ No newline at end of file diff --git a/libraries/textcomposer/src/main/res/values-it/translations.xml b/libraries/textcomposer/src/main/res/values-it/translations.xml new file mode 100644 index 0000000000..54ca270f28 --- /dev/null +++ b/libraries/textcomposer/src/main/res/values-it/translations.xml @@ -0,0 +1,17 @@ + + + "Attiva/disattiva l\'elenco puntato" + "Attiva/disattiva il blocco di codice" + "Messaggio…" + "Applica il formato in grassetto" + "Applicare il formato corsivo" + "Applica il formato barrato" + "Applicare il formato di sottolineatura" + "Attiva/disattiva la modalità a schermo intero" + "Rientro a destra" + "Applicare il formato del codice in linea" + "Imposta collegamento" + "Attiva/disattiva elenco numerato" + "Attiva/disattiva citazione" + "Rientro a sinistra" + \ No newline at end of file diff --git a/libraries/textcomposer/src/main/res/values-ro/translations.xml b/libraries/textcomposer/src/main/res/values-ro/translations.xml new file mode 100644 index 0000000000..b053e0ecaa --- /dev/null +++ b/libraries/textcomposer/src/main/res/values-ro/translations.xml @@ -0,0 +1,17 @@ + + + "Comutați lista cu puncte" + "Comutați blocul de cod" + "Mesaj…" + "Aplicați formatul aldin" + "Aplicați formatul italic" + "Aplicați formatul barat" + "Aplică formatul de subliniere" + "Comutați modul ecran complet" + "Indentare" + "Aplicați formatul de cod inline" + "Setați linkul" + "Comutați lista numerotată" + "Aplicați citatul" + "Dez-identare" + \ No newline at end of file diff --git a/libraries/ui-strings/src/main/res/values-de/translations.xml b/libraries/ui-strings/src/main/res/values-de/translations.xml index 64684b7905..22c60db481 100644 --- a/libraries/ui-strings/src/main/res/values-de/translations.xml +++ b/libraries/ui-strings/src/main/res/values-de/translations.xml @@ -1,4 +1,5 @@ "Bestätigen" + "de" \ No newline at end of file diff --git a/libraries/ui-strings/src/main/res/values-es/translations.xml b/libraries/ui-strings/src/main/res/values-es/translations.xml new file mode 100644 index 0000000000..d05dc300d2 --- /dev/null +++ b/libraries/ui-strings/src/main/res/values-es/translations.xml @@ -0,0 +1,156 @@ + + + "Ocultar contraseña" + "Enviar archivos" + "Mostrar contraseña" + "Menú de usuario" + "Atrás" + "Cancelar" + "Borrar" + "Cerrar" + "Completar verificación" + "Confirmar" + "Continuar" + "Copiar" + "Copiar enlace" + "Crear una sala" + "Desactivar" + "Hecho" + "Editar" + "Activar" + "Invitar" + "Invitar amigos a %1$s" + "Más información" + "Salir" + "Salir de la sala" + "Siguiente" + "No" + "Ahora no" + "OK" + "Respuesta rápida" + "Citar" + "Eliminar" + "Responder" + "Informar de un error" + "Reportar Contenido" + "Reintentar" + "Reintentar descifrado" + "Guardar" + "Buscar" + "Enviar" + "Compartir" + "Compartir enlace" + "Saltar" + "Comenzar" + "Iniciar chat" + "Iniciar la verificación" + "Ver Fuente" + "Sí" + "Acerca de" + "Sonido" + "Burbujas" + "Creando sala..." + "Saliste de la sala" + "Error de descifrado" + "Opciones de desarrollador" + "(editado)" + "Edición" + "Cifrado activado" + "Error" + "Archivo" + "GIF" + "Imagen" + "Enlace copiado al portapapeles" + "Cargando…" + "Mensaje" + "Diseño del mensaje" + "Mensaje eliminado" + "Moderno" + "No hay resultados" + "Sin conexión" + "Contraseña" + "Personas" + "Enlace permanente" + "Reacciones" + "Respondiendo a %1$s" + "Informar de un error" + "Informe enviado" + "Buscar a alguien" + "Seguridad" + "Selecciona tu servidor" + "Enviando…" + "Servidor no compatible" + "Dirección del servidor" + "Ajustes" + "Sticker" + "Terminado" + "Sugerencias" + "Tema" + "No se puede descifrar" + "Evento no compatible" + "Usuario" + "Verificación cancelada" + "Verificación completada" + "Vídeo" + "Esperando..." + "Confirmar" + "Error" + "Terminado" + "Atención" + "Actividades" + "Banderas" + "Comida y bebida" + "Animales y naturaleza" + "Objetos" + "Emojis y personas" + "Viajes y lugares" + "Símbolos" + "No se pudo crear el enlace permanente" + "Error al cargar mensajes" + "No se encontró ninguna aplicación compatible con esta acción." + "Algunos mensajes no se han enviado" + "Lo siento, se ha producido un error" + "Hola, puedes hablar conmigo en %1$s: %2$s" + "¿Estás seguro de que quieres salir de esta sala? Eres la única persona aquí. Si te vas, nadie podrá unirse en el futuro, ni siquiera tú." + "¿Estás seguro de que quieres abandonar esta sala? Esta sala no es pública y no podrás volver a entrar sin una invitación." + "¿Seguro que quieres salir de la habitación?" + "%1$s Android" + + "No hay miembros" + "%1$d miembro" + + + + "%1$d miembros" + + + "No hay cambios en la sala" + "%1$d cambio en la sala" + + + + "%1$d cambios en la sala" + + "Agitar con fuerza para informar de un error" + "Parece que sacudes el teléfono con frustración. ¿Quieres abrir la pantalla de informe de errores?" + "Este mensaje se notificará al administrador de su homeserver. No podrán leer ningún mensaje cifrado." + "Motivo para denunciar este contenido" + "Este es el principio de %1$s." + "Este es el principio de esta conversación." + "Nuevos" + "Bloquear usuario" + "Marque si quieres ocultar todos los mensajes actuales y futuros de este usuario" + "Bloquear" + "Los usuarios bloqueados no podrán enviarte mensajes y se ocultarán todos sus mensajes. Puede revertir esta acción en cualquier momento." + "Bloquear usuario" + "Desbloquear" + "Al desbloquear al usuario, podrás volver a ver todos sus mensajes." + "Desbloquear usuario" + "Se ha producido un error al intentar iniciar un chat" + "No podemos validar el ID de Matrix de este usuario. Es posible que no reciba la invitación." + "Agitar con fuerza" + "Umbral de detección" + "General" + "Versión: %1$s (%2$s)" + "es" + \ No newline at end of file diff --git a/libraries/ui-strings/src/main/res/values-fr/translations.xml b/libraries/ui-strings/src/main/res/values-fr/translations.xml index b75da2740b..5bdce47d20 100644 --- a/libraries/ui-strings/src/main/res/values-fr/translations.xml +++ b/libraries/ui-strings/src/main/res/values-fr/translations.xml @@ -1,4 +1,5 @@ "Confirmer" + "fr" \ No newline at end of file diff --git a/libraries/ui-strings/src/main/res/values-it/translations.xml b/libraries/ui-strings/src/main/res/values-it/translations.xml new file mode 100644 index 0000000000..80fed2e6f8 --- /dev/null +++ b/libraries/ui-strings/src/main/res/values-it/translations.xml @@ -0,0 +1,148 @@ + + + "Nascondi password" + "Invia file" + "Mostra password" + "Menu utente" + "Indietro" + "Annulla" + "Cancella" + "Chiudi" + "Completa verifica" + "Conferma" + "Continua" + "Copia" + "Copia collegamento" + "Crea una stanza" + "Disabilita" + "Fine" + "Modifica" + "Attiva" + "Invita" + "Invita amici a %1$s" + "Ulteriori informazioni" + "Esci" + "Esci dalla stanza" + "Avanti" + "No" + "Non ora" + "OK" + "Risposta rapida" + "Citazione" + "Rimuovi" + "Rispondi" + "Segnala un problema" + "Segnala Contenuto" + "Riprova" + "Riprova la decrittazione" + "Salva" + "Ricerca" + "Invia" + "Condividi" + "Condividi collegamento" + "Salta" + "Inizia" + "Avvia conversazione" + "Avvia la verifica" + "Vedi Sorgente" + "Sì" + "Informazioni" + "Audio" + "Fumetti" + "Creazione stanza..." + "Hai lasciato la stanza" + "Errore di decrittazione" + "Opzioni sviluppatore" + "(modificato)" + "Modifica in corso" + "Crittografia abilitata" + "Errore" + "File" + "GIF" + "Immagine" + "Collegamento copiato negli appunti" + "Caricamento…" + "Messaggio" + "Layout del messaggio" + "Messaggio rimosso" + "Moderno" + "Nessun risultato" + "Non in linea" + "Password" + "Persone" + "Collegamento permanente" + "Reazioni" + "Risposta a %1$s" + "Segnala un problema" + "Segnalazione inviata" + "Cerca qualcuno" + "Sicurezza" + "Seleziona il tuo server" + "Invio in corso…" + "Server non supportato" + "URL del server" + "Impostazioni" + "Adesivo" + "Operazione riuscita" + "Suggerimenti" + "Oggetto" + "Impossibile decrittografare" + "Evento non supportato" + "Nome utente" + "Verifica annullata" + "Verifica completata" + "Video" + "In attesa…" + "Conferma" + "Errore" + "Operazione riuscita" + "Attenzione" + "Attività" + "Bandiere" + "Cibi & Bevande" + "Animali & Natura" + "Oggetti" + "Faccine & Persone" + "Viaggi & Luoghi" + "Simboli" + "Impossibile creare il collegamento permanente" + "Caricamento dei messaggi non riuscito" + "Non è stata trovata alcuna app compatibile per gestire questa azione." + "Alcuni messaggi non sono stati inviati" + "Siamo spiacenti, si è verificato un errore" + "Ehi, parlami su %1$s: %2$s" + "Sei sicuro di voler lasciare questa stanza? Sei l\'unica persona presente. Se esci, nessuno potrà unirsi in futuro, te compreso." + "Sei sicuro di voler lasciare questa stanza? Questa stanza non è pubblica e non potrai rientrare senza un invito." + "Sei sicuro di voler lasciare la stanza?" + "%1$s Android" + + "%1$d membro" + "%1$d membri" + + + "%1$d modifica alla stanza" + "%1$d modifiche alla stanza" + + "Scuoti per segnalare un problema" + "Sembra che tu stia scuotendo il telefono per la frustrazione. Vuoi aprire la schermata di segnalazione dei problemi?" + "Questo messaggio verrà segnalato all\'amministratore dell\'homeserver. Questi non sarà in grado di leggere i messaggi criptati." + "Motivo della segnalazione di questo contenuto" + "Questo è l\'inizio di %1$s." + "Questo è l\'inizio della conversazione." + "Nuovo" + "Blocca utente" + "Seleziona se vuoi nascondere tutti i messaggi attuali e futuri di questo utente" + "Blocca" + "Gli utenti bloccati non saranno in grado di inviarti nuovi messaggi e tutti quelli già esistenti saranno nascosti. Potrai annullare questa azione in qualsiasi momento." + "Blocca utente" + "Sblocca" + "Dopo aver sbloccato l\'utente, potrai vedere nuovamente tutti i suoi messaggi." + "Sblocca utente" + "Si è verificato un errore durante il tentativo di avviare una chat" + "Non possiamo convalidare l\'ID Matrix di questo utente. L\'invito potrebbe non essere ricevuto." + "Rageshake" + "Soglia di rilevamento" + "Generali" + "Versione: %1$s (%2$s)" + "it" + \ No newline at end of file diff --git a/libraries/ui-strings/src/main/res/values-ro/translations.xml b/libraries/ui-strings/src/main/res/values-ro/translations.xml index 6878d7aab4..1872bb057f 100644 --- a/libraries/ui-strings/src/main/res/values-ro/translations.xml +++ b/libraries/ui-strings/src/main/res/values-ro/translations.xml @@ -1,10 +1,150 @@ - "Confirmare" + "Ascundeți parola" + "Trimiteți fișiere" + "Afișați parola" + "Meniu utilizator" + "Înapoi" + "Anulați" + "Ștergeți" + "Închideți" + "Verificare completă" + "Confirmați" + "Continuați" + "Copiați" + "Copiați linkul" "Creați o cameră" - "Gata" + "Dezactivați" + "Efectuat" + "Editați" + "Activați" + "Invitați" + "Invitați prieteni în %1$s" + "Aflați mai multe" + "Părăsiți" + "Părăsiți camera" + "Următorul" + "Nu" + "Nu acum" "OK" - "Raportează conținutul" - "Începe discuția" - "Vezi sursa" + "Raspuns rapid" + "Citat" + "Ștergeți" + "Răspundeți" + "Raportați o eroare" + "Raportați conținutul" + "Reîncercați" + "Reîncercați decriptarea" + "Salvați" + "Căutați" + "Trimiteți" + "Partajați" + "Partajați linkul" + "Omiteți" + "Începeți" + "Începeți discuția" + "Începeți verificarea" + "Vedeți sursă" + "Da" + "Despre" + "Audio" + "Baloane" + "Se creează camera…" + "Ați parăsit camera" + "Eroare de decriptare" + "Opțiuni programator" + "(editat)" + "Editare" + "Criptare activată" + "Eroare" + "Fişier" + "GIF" + "Imagine" + "Linkul a fost copiat în clipboard" + "Se încarcă…" + "Mesaj" + "Aranjamentul mesajelor" + "Mesaj sters" + "Modern" + "Niciun rezultat" + "Deconectat" + "Parola" + "Persoane" + "Permalink" + "Reacții" + "Răspuns pentru %1$s" + "Raportați o eroare" + "Raport trimis" + "Căutați pe cineva" + "Securitate" + "Selectați serverul" + "Se trimite…" + "Serverul nu este compatibil" + "Adresa URL a serverului" + "Setări" + "Autocolant" + "Succes" + "Sugestii" + "Subiect" + "Nu s-a putut decripta" + "Eveniment neacceptat" + "Utilizator" + "Verificare anulată" + "Verificare completă" + "Video" + "Se aşteaptă…" + "Confirmare" + "Eroare" + "Succes" + "Avertisment" + "Activități" + "Steaguri" + "Mâncare & Băutură" + "Animale și Natură" + "Obiecte" + "Fețe zâmbitoare & Oameni" + "Călătorii & Locuri" + "Simboluri" + "Crearea permalink-ului a eșuat" + "Încărcarea mesajelor a eșuat" + "Nu a fost găsită nicio aplicație capabilă să gestioneze această acțiune." + "Unele mesaje nu au fost trimise" + "Ne pare rău, a apărut o eroare" + "Hei, vorbește cu mine pe %1$s: %2$s" + "Sunteți sigur că vreți să părăsiți această cameră? Sunteți singura persoană de aici. Dacă o părasiți, nimeni nu se va mai putea alătura în viitor, inclusiv dumneavoastra." + "Sunteți sigur că vrei să părăsiți această cameră? Această cameră nu este publică și nu va veti putea alătura din nou fără o invitație." + "Sunteți sigur că vreți să părăsiți camera?" + "%1$s Android" + + "%1$d membru" + + "%1$d membri" + + + "%1$d schimbare a camerii" + + "%1$d schimbări ale camerei" + + "Rageshake pentru a raporta erori" + "Se pare că scuturați telefonul de frustrare. Doriți să deschdeți ecranul de raportare a unei erori?" + "Acest mesaj va fi raportat administratorilor homeserver-ului tau. Ei nu vor putea citi niciun mesaj criptat." + "Motivul raportării acestui conținut" + "Acesta este începutul conversației %1$s." + "Acesta este începutul acestei conversații." + "Nou" + "Blocați utilizatorul" + "Confirmați că doriți să ascundeți toate mesajele curente și viitoare de la acest utilizator" + "Blocați" + "Utilizatorii blocați nu vă vor putea trimite mesaje și toate mesajele lor vor fi ascunse. Puteți anula această acțiune oricând." + "Blocați utilizatorul" + "Deblocați" + "La deblocarea utilizatorului, veți putea vedea din nou toate mesajele de la acesta." + "Deblocați utilizatorul" + "A apărut o eroare la încercarea începerii conversației" + "Nu am putut valida ID-ul Matrix al acestui utilizator. Este posibil ca invitația să nu fi fost primită." + "Rageshake" + "Prag de detecție" + "General" + "Versiunea: %1$s (%2$s)" + "ro" \ No newline at end of file diff --git a/libraries/ui-strings/src/main/res/values/localazy.xml b/libraries/ui-strings/src/main/res/values/localazy.xml index 7ae90b9b53..28cef98c60 100644 --- a/libraries/ui-strings/src/main/res/values/localazy.xml +++ b/libraries/ui-strings/src/main/res/values/localazy.xml @@ -38,6 +38,7 @@ "Save" "Search" "Send" + "Share" "Share link" "Skip" "Start" @@ -49,6 +50,7 @@ "Audio" "Bubbles" "Creating room…" + "Left room" "Decryption error" "Developer options" "(edited)" @@ -128,12 +130,6 @@ "This is the beginning of %1$s." "This is the beginning of this conversation." "New" - "Block" - "Blocked users will not be able to send you messages and all message by them will be hidden. You can reverse this action anytime." - "Block user" - "Unblock" - "On unblocking the user, you will be able to see all messages by them again." - "Unblock user" "Block user" "Check if you want to hide all current and future messages from this user" "Block" @@ -143,8 +139,11 @@ "On unblocking the user, you will be able to see all messages by them again." "Unblock user" "An error occurred when trying to start a chat" + "We can’t validate this user’s Matrix ID. The invite might not be received." "Rageshake" "Detection threshold" "General" "Version: %1$s (%2$s)" + "en" + "en" \ No newline at end of file From 85b825e669fe88d015ba85f100477054f75e4096 Mon Sep 17 00:00:00 2001 From: Benoit Marty Date: Wed, 5 Apr 2023 11:44:55 +0200 Subject: [PATCH 4/6] Ensure ellipsis char is used (fix lint issue). --- .../logout/api/src/main/res/values-it/translations.xml | 2 +- .../impl/src/main/res/values-es/translations.xml | 2 +- .../impl/src/main/res/values-it/translations.xml | 2 +- .../textcomposer/src/main/res/values-es/translations.xml | 2 +- .../ui-strings/src/main/res/values-es/translations.xml | 4 ++-- .../ui-strings/src/main/res/values-it/translations.xml | 2 +- tools/localazy/generateLocalazyConfig.py | 9 +++++++++ 7 files changed, 16 insertions(+), 7 deletions(-) diff --git a/features/logout/api/src/main/res/values-it/translations.xml b/features/logout/api/src/main/res/values-it/translations.xml index 8b01a02780..7d1a3ae304 100644 --- a/features/logout/api/src/main/res/values-it/translations.xml +++ b/features/logout/api/src/main/res/values-it/translations.xml @@ -3,6 +3,6 @@ "Sei sicuro di voler uscire?" "Esci" "Esci" - "Uscita in corso..." + "Uscita in corso…" "Esci" \ No newline at end of file diff --git a/features/rageshake/impl/src/main/res/values-es/translations.xml b/features/rageshake/impl/src/main/res/values-es/translations.xml index 527376f268..0b1a374b97 100644 --- a/features/rageshake/impl/src/main/res/values-es/translations.xml +++ b/features/rageshake/impl/src/main/res/values-es/translations.xml @@ -4,7 +4,7 @@ "Podéis poneros en contacto conmigo para resolver dudas relacionadas" "Editar captura de pantalla" "Describe el problema. ¿Qué hiciste? ¿Qué esperabas que ocurriera? ¿Qué ocurrió en realidad? Por favor, detállalo todo lo que puedas." - "Describe el error..." + "Describe el error…" "Si es posible, escriba la descripción en inglés." "Enviar registros de fallos" "Enviar registros para ayudar" diff --git a/features/rageshake/impl/src/main/res/values-it/translations.xml b/features/rageshake/impl/src/main/res/values-it/translations.xml index 60397f8719..c8a15eeedf 100644 --- a/features/rageshake/impl/src/main/res/values-it/translations.xml +++ b/features/rageshake/impl/src/main/res/values-it/translations.xml @@ -4,7 +4,7 @@ "Potete contattarmi per qualsiasi altra domanda" "Modifica istantanea schermo" "Descrivi il bug. Che cosa hai fatto? Cosa ti aspettavi che accadesse? Cosa è effettivamente accaduto. Si prega di inserire il maggior numero di dettagli possibile." - "Descrivi il problema..." + "Descrivi il problema…" "Se possibile, scrivere la descrizione in inglese." "Invia i log degli arresti anomali" "Invia i log per aiutarci" diff --git a/libraries/textcomposer/src/main/res/values-es/translations.xml b/libraries/textcomposer/src/main/res/values-es/translations.xml index 7392bd2b31..e302765a58 100644 --- a/libraries/textcomposer/src/main/res/values-es/translations.xml +++ b/libraries/textcomposer/src/main/res/values-es/translations.xml @@ -2,7 +2,7 @@ "Lista de puntos" "Bloque de código" - "Mensaje..." + "Mensaje…" "Aplicar formato negrita" "Aplicar formato cursiva" "Aplicar formato tachado" diff --git a/libraries/ui-strings/src/main/res/values-es/translations.xml b/libraries/ui-strings/src/main/res/values-es/translations.xml index d05dc300d2..dbbf33933d 100644 --- a/libraries/ui-strings/src/main/res/values-es/translations.xml +++ b/libraries/ui-strings/src/main/res/values-es/translations.xml @@ -49,7 +49,7 @@ "Acerca de" "Sonido" "Burbujas" - "Creando sala..." + "Creando sala…" "Saliste de la sala" "Error de descifrado" "Opciones de desarrollador" @@ -92,7 +92,7 @@ "Verificación cancelada" "Verificación completada" "Vídeo" - "Esperando..." + "Esperando…" "Confirmar" "Error" "Terminado" diff --git a/libraries/ui-strings/src/main/res/values-it/translations.xml b/libraries/ui-strings/src/main/res/values-it/translations.xml index 80fed2e6f8..96d0648d3b 100644 --- a/libraries/ui-strings/src/main/res/values-it/translations.xml +++ b/libraries/ui-strings/src/main/res/values-it/translations.xml @@ -49,7 +49,7 @@ "Informazioni" "Audio" "Fumetti" - "Creazione stanza..." + "Creazione stanza…" "Hai lasciato la stanza" "Errore di decrittazione" "Opzioni sviluppatore" diff --git a/tools/localazy/generateLocalazyConfig.py b/tools/localazy/generateLocalazyConfig.py index 13b76e7d57..c5f99aca2c 100755 --- a/tools/localazy/generateLocalazyConfig.py +++ b/tools/localazy/generateLocalazyConfig.py @@ -20,6 +20,11 @@ regexToAlwaysExclude = [ ".*_ios" ] +# Replacement done in all string values +replacements = { + "...": "…" +} + # Store all regex specific to module, to eclude the corresponding keyx from the common string module allRegexToExcludeFromMainModule = [] # All actions that will be serialized in the localazy config @@ -33,6 +38,7 @@ for entry in config["modules"]: "output": convertModuleToPath(entry["name"]) + "/src/main/res/values/localazy.xml", "includeKeys": list(map(lambda i: "REGEX:" + i, entry["includeRegex"])), "excludeKeys": list(map(lambda i: "REGEX:" + i, regexToAlwaysExclude)), + "replacements": replacements, "conditions": [ "equals: ${languageCode}, en" ] @@ -46,6 +52,7 @@ for entry in config["modules"]: "output": convertModuleToPath(entry["name"]) + "/src/main/res/values-${langAndroidResNoScript}/translations.xml", "includeKeys": list(map(lambda i: "REGEX:" + i, entry["includeRegex"])), "excludeKeys": list(map(lambda i: "REGEX:" + i, regexToAlwaysExclude)), + "replacements": replacements, "conditions": [ "!equals: ${languageCode}, en" ] @@ -58,6 +65,7 @@ mainAction = { "type": "android", "output": "libraries/ui-strings/src/main/res/values/localazy.xml", "excludeKeys": list(map(lambda i: "REGEX:" + i, allRegexToExcludeFromMainModule + regexToAlwaysExclude)), + "replacements": replacements, "conditions": [ "equals: ${languageCode}, en" ] @@ -71,6 +79,7 @@ if allFiles: "type": "android", "output": "libraries/ui-strings/src/main/res/values-${langAndroidResNoScript}/translations.xml", "excludeKeys": list(map(lambda i: "REGEX:" + i, allRegexToExcludeFromMainModule + regexToAlwaysExclude)), + "replacements": replacements, "conditions": [ "!equals: ${languageCode}, en" ] From 64476de1534a8a279140fdc346f57a8e76f52c2e Mon Sep 17 00:00:00 2001 From: Benoit Marty Date: Wed, 5 Apr 2023 12:23:47 +0200 Subject: [PATCH 5/6] Create baseAction for shared values. --- tools/localazy/generateLocalazyConfig.py | 25 ++++++++++-------------- 1 file changed, 10 insertions(+), 15 deletions(-) diff --git a/tools/localazy/generateLocalazyConfig.py b/tools/localazy/generateLocalazyConfig.py index c5f99aca2c..e2bc310e1e 100755 --- a/tools/localazy/generateLocalazyConfig.py +++ b/tools/localazy/generateLocalazyConfig.py @@ -20,9 +20,12 @@ regexToAlwaysExclude = [ ".*_ios" ] -# Replacement done in all string values -replacements = { - "...": "…" +baseAction = { + "type": "android", + # Replacement done in all string values + "replacements": { + "...": "…" + } } # Store all regex specific to module, to eclude the corresponding keyx from the common string module @@ -33,12 +36,10 @@ allActions = [] # Iterating on the config for entry in config["modules"]: # Create action for the default language - action = { - "type": "android", + action = baseAction | { "output": convertModuleToPath(entry["name"]) + "/src/main/res/values/localazy.xml", "includeKeys": list(map(lambda i: "REGEX:" + i, entry["includeRegex"])), "excludeKeys": list(map(lambda i: "REGEX:" + i, regexToAlwaysExclude)), - "replacements": replacements, "conditions": [ "equals: ${languageCode}, en" ] @@ -47,12 +48,10 @@ for entry in config["modules"]: allActions.append(action) # Create action for the translations if allFiles: - actionTranslation = { - "type": "android", + actionTranslation = baseAction | { "output": convertModuleToPath(entry["name"]) + "/src/main/res/values-${langAndroidResNoScript}/translations.xml", "includeKeys": list(map(lambda i: "REGEX:" + i, entry["includeRegex"])), "excludeKeys": list(map(lambda i: "REGEX:" + i, regexToAlwaysExclude)), - "replacements": replacements, "conditions": [ "!equals: ${languageCode}, en" ] @@ -61,11 +60,9 @@ for entry in config["modules"]: allRegexToExcludeFromMainModule.extend(entry["includeRegex"]) # Append configuration for the main string module: default language -mainAction = { - "type": "android", +mainAction = baseAction | { "output": "libraries/ui-strings/src/main/res/values/localazy.xml", "excludeKeys": list(map(lambda i: "REGEX:" + i, allRegexToExcludeFromMainModule + regexToAlwaysExclude)), - "replacements": replacements, "conditions": [ "equals: ${languageCode}, en" ] @@ -75,11 +72,9 @@ allActions.append(mainAction) if allFiles: # Append configuration for the main string module: translations - mainActionTranslation = { - "type": "android", + mainActionTranslation = baseAction | { "output": "libraries/ui-strings/src/main/res/values-${langAndroidResNoScript}/translations.xml", "excludeKeys": list(map(lambda i: "REGEX:" + i, allRegexToExcludeFromMainModule + regexToAlwaysExclude)), - "replacements": replacements, "conditions": [ "!equals: ${languageCode}, en" ] From 00964212b76eea86b301f680ae485c2f867059ba Mon Sep 17 00:00:00 2001 From: Benoit Marty Date: Wed, 5 Apr 2023 12:25:17 +0200 Subject: [PATCH 6/6] Invoke `./tools/localazy/downloadStrings.sh --all` --- .../impl/src/main/res/values-es/translations.xml | 4 ---- .../ui-strings/src/main/res/values-es/translations.xml | 8 -------- 2 files changed, 12 deletions(-) diff --git a/features/roomdetails/impl/src/main/res/values-es/translations.xml b/features/roomdetails/impl/src/main/res/values-es/translations.xml index 817d3613ae..ba4327000b 100644 --- a/features/roomdetails/impl/src/main/res/values-es/translations.xml +++ b/features/roomdetails/impl/src/main/res/values-es/translations.xml @@ -1,11 +1,7 @@ - "0 personas" "Una persona" - - - "%1$d personas" "Bloquear" diff --git a/libraries/ui-strings/src/main/res/values-es/translations.xml b/libraries/ui-strings/src/main/res/values-es/translations.xml index dbbf33933d..4b14f3a4a7 100644 --- a/libraries/ui-strings/src/main/res/values-es/translations.xml +++ b/libraries/ui-strings/src/main/res/values-es/translations.xml @@ -116,19 +116,11 @@ "¿Seguro que quieres salir de la habitación?" "%1$s Android" - "No hay miembros" "%1$d miembro" - - - "%1$d miembros" - "No hay cambios en la sala" "%1$d cambio en la sala" - - - "%1$d cambios en la sala" "Agitar con fuerza para informar de un error"