Skip to content

Commit

Permalink
translate
Browse files Browse the repository at this point in the history
  • Loading branch information
JarbasAl committed Oct 14, 2024
1 parent 8ffba22 commit 7f33b8d
Show file tree
Hide file tree
Showing 27 changed files with 1,833 additions and 0 deletions.
32 changes: 32 additions & 0 deletions .github/workflows/sync_tx.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
name: Run script on merge to dev by gitlocalize-app

on:
workflow_dispatch:
push:
branches:
- dev

jobs:
run-script:
runs-on: ubuntu-latest
steps:
- name: Check out repository
uses: actions/checkout@v2
with:
ref: dev
fetch-depth: 0 # otherwise, there would be errors pushing refs to the destination repository.
- name: Setup Python
uses: actions/setup-python@v1
with:
python-version: 3.9

- name: Run script if merged by gitlocalize-app[bot]
if: github.event_name == 'push' && github.event.head_commit.author.username == 'gitlocalize-app[bot]'
run: |
python scripts/sync_translations.py
- name: Commit to dev
uses: stefanzweifel/git-auto-commit-action@v4
with:
commit_message: Update translations
branch: dev
54 changes: 54 additions & 0 deletions scripts/sync_translations.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,54 @@
"""this script should run in every PR originated from @gitlocalize-app
TODO - before PR merge
"""

import json
from os.path import dirname
import os

locale = f"{dirname(dirname(__file__))}/ocp_pipeline/locale"
tx = f"{dirname(dirname(__file__))}/translations"


for lang in os.listdir(tx):
intents = f"{tx}/{lang}/intents.json"
dialogs = f"{tx}/{lang}/dialogs.json"
vocs = f"{tx}/{lang}/vocabs.json"
regexes = f"{tx}/{lang}/regexes.json"
os.makedirs(f"{locale}/{lang.lower()}", exist_ok=True)
if os.path.isfile(intents):
with open(intents) as f:
data = json.load(f)
for fid, samples in data.items():
if samples:
samples = [s for s in samples if s] # s may be None
with open(f"{locale}/{lang.lower()}/{fid}", "w") as f:
f.write("\n".join(sorted(samples)))

if os.path.isfile(dialogs):
with open(dialogs) as f:
data = json.load(f)
for fid, samples in data.items():
if samples:
samples = [s for s in samples if s] # s may be None
with open(f"{locale}/{lang.lower()}/{fid}", "w") as f:
f.write("\n".join(sorted(samples)))

if os.path.isfile(vocs):
with open(vocs) as f:
data = json.load(f)
for fid, samples in data.items():
if samples:
samples = [s for s in samples if s] # s may be None
with open(f"{locale}/{lang.lower()}/{fid}", "w") as f:
f.write("\n".join(sorted(samples)))

if os.path.isfile(regexes):
with open(regexes) as f:
data = json.load(f)
for fid, samples in data.items():
if samples:
samples = [s for s in samples if s] # s may be None
with open(f"{locale}/{lang.lower()}/{fid}", "w") as f:
f.write("\n".join(sorted(samples)))

19 changes: 19 additions & 0 deletions translations/ca-es/dialogs.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
{
"cant.play.dialog": [
"No estic segur de com reproduir {phrase}",
"No sé com reproduir {phrase}"
],
"play.what.dialog": [
"Què hauria de reproduir després?"
],
"no.media.skills.dialog": [
"No tinc cap habilitat multimèdia instal·lada",
"Em cal instal·lar alguna habilitat multimèdia abans de poder reproduir contingut multimèdia",
"No puc reproduir contingut multimèdia fins que s'instal·lin alguna habilitat multimèdia"
],
"just.one.moment.dialog": [
"Espereu un moment",
"Només un segon",
"Només un moment mentre cerco això"
]
}
63 changes: 63 additions & 0 deletions translations/ca-es/intents.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,63 @@
{
"play.intent": [
"(reprodueix|inicia|comença) {query}",
"(cerca|busca) (una|la|) (reproducció habitual|reproducció comú|O C P|o ce pe) (ovos|) (per a|per) {query}",
"(cerca|busca) (un|el|es) (mèdia|multimèdia|mitjà) (ovos|open voice os) (per|per a) {query}",
"(cerca|busca) {query} (en|a|en la|a la) (reproducció habitual|reproducció comú|ocp|ovos|O C P)",
"(cerca|busca) {query} (en|a|en el| al) (mèdia|contingut multimèdia|multimèdia) (ovos|open voice os)"
],
"like_song.intent": [
"m'agrada (això|açò|)",
"m'agrada (aquesta|esta|aquest|este)(cançó|música|pista|peça|so)",
"(bon|bona|gran|agradable|increïble|genial) (cançó|música|pista|peça|àudio|so)",
"(açò|això|aquest|aquesta|este|esta) (és|era|ha estat|ha sigut|ha set) (un|una) (bon|bona|gran|agradable|increïble|genial) (cançó|música|pista|peça|àudio|so)"
],
"next.intent": [
"(següent|salta)",
"(següent|salta) (a|al|a la|a sa) (música|cançó|pista|peça|vídeo|mèdia|multimèdia|contingut) ",
"(reprodueix|reproduix|ves|vés) (a|al|a es|a la|a sa|) (següent|) (música|cançó|pista|peça|vídeo|mèdia|multimèdia|contingut) (següent|)",
"(reprodueix|reproduix|posa) (el|la|es|sa|) següent",
"següent",
"(cançó|pista|peça|música|film|pel·li|pel·lícula|vídeo|emissora) següent"
],
"resume.intent": [
"(deixa de pausar|reprèn|reprén|despausa)",
"(deixa de pausar|reprèn|reprén|continua|despausa) (la|el|es|sa) (música|cançó|pista|peça|vídeo|mèdia|multimèdia|contingut|reproducció)",
"(reprodueix|reproduix)"
],
"read.intent": [
"llegeix (llibre|audiollibre|àudio llibre|llibre d'àudio) {query}",
"llegeix {query}",
"llegeix (el |l'|)(llibre|audiollibre|àudio llibre) {query}"
],
"prev.intent": [
"(reprodueix|posa) (la|el|es|sa) (música|peça|pista|vídeo|mèdia|contingut|multimèdia) (anterior|d'abans)",
"(reprodueix|inicia|comença) (el|la|es|sa) (música|cançó|peça|pista|vídeo|mèdia|multimèdia) (anterior|previ|prèvia|enrere)",
"(reprodueix|inicia|comença) (l'anterior|enrere|anterior)",
"(enrere|anterior|previ|prèvia)",
"(cançó|peça|pista|música|pel·lícula|film|vídeo|emissora) (anterior|prèvia|enrere)"
],
"pause.intent": [
"pausa",
"pausa (la|el|sa|es|)(música|cançó|peça|psita|vídeo|mèdia|multimèdia)"
],
"open.intent": [
"obre (el|es) (reproductor|reproductor multimèdia) (OCP|O C P|common|ovos|open voice os) ",
"(obre|executa) (el|es|la|sa) (pantalla d'inici|pantalla|pantalla inicial|menú) (del|des|de) (OCP|O C P|ovos comon plei|comon plei|reproductor ovos multimèdia|reproductor open vois) ",
"(obre|executa) (el|es) (OCP|O C P|ovos common play|open voice os common play|reproductor multimèdia)",
"(obre|executa) (el|es|la|sa|les|ses) (reproductor|catàleg|habilitats|menú) (multimèdia|de música|música|gràfic|vídeo| de vídeo)"
],
"featured.intent": [
"(obre|mostra|reprodueix|posa) (el|la|es|sa|) (catàleg|col·lecció|llista|llista de reproducció) (de|) {media} (destacat|destacada|destacats|destacades)",
"(obre|mostra|reprodueix|posa) (el|la|es|sa|){media} (destacat|destacada)"
],
"play_favorites.intent": [
"(reprodeux|inicia|posa) (les meves|ses meves|els meus|els|ses)(peces|pistes|àudios|cançons|música) (favorita|favorites|preferides|preferida|que m'agrada|preferits|favorits)",
"(reprodueix|inicia|comença) (la|les|sa|ses) (cançons|cançó|cançons|música) (preferida|favorita|preferides|favorites)"
],
"media_stop.intent": [
"(para|atura)('t|)",
"(atura|para) (la|el|sa|es|els|les|ses) (reproducció|reproduccions|multimèdia|mèdia|mèdies|reproducció multimèdia|reproduccións multimèdia|música|pel·lícula|pel·lícules|soroll|àudio|peça|pista)",
"(atura|para)(-ho) tot"
]
}
125 changes: 125 additions & 0 deletions translations/ca-es/vocabs.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,125 @@
{
"video_only.voc": [
"no emetis amb àudio",
"no reprodueixis amb àudio",
"sense reproducció d'àudio",
"sols vídeo",
"només vídeo"
],
"AudioKeyword.voc": [
"àudio",
"so"
],
"HentaiKeyword.voc": [
"hentai"
],
"PodcastKeyword.voc": [
"pòdcast",
"pòdcasts"
],
"Play.voc": [
"cerca\nbusca",
"llegeix",
"reprodueix",
"inicia\ncomença"
],
"audio_only.voc": [
"només àudio",
"sense vídeo",
"sols àudio",
"sols so",
"només so"
],
"NewsKeyword.voc": [
"notícies"
],
"GameKeyword.voc": [
"jocs"
],
"ADKeyword.voc": [
"audiodescripció",
"descripció de la pel·lícula"
],
"TrailerKeyword.voc": [
"tràiler"
],
"MovieKeyword.voc": [
"pel·lícula",
"film"
],
"CartoonKeyword.voc": [
"dibuixos",
"animació"
],
"VideoKeyword.voc": [
"vídeo"
],
"ASMRKeyword.voc": [
"RSMA",
"resposta sensorial meridiana autònoma"
],
"DocumentaryKeyword.voc": [
"documental",
"documentals"
],
"SeriesKeyword.voc": [
"sèries",
"xou de televisió",
"episodi",
"episodis"
],
"BWKeyword.voc": [
"blanc i negre",
"monocrom"
],
"AdultKeyword.voc": [
"porno",
"majors de 18 anys",
"pornografia"
],
"RadioKeyword.voc": [
"ràdio",
"ràdio per internet"
],
"AudioDramaKeyword.voc": [
"drama",
"teatre"
],
"Resume.voc": [
"reprèn\ncontinua\nsegueix",
"deixa de pausar\nsense pausa\ntreu la pausa\nlleva la pausa\ndespausa\n"
],
"ComicBookKeyword.voc": [
"còmic animat",
"còmic",
"història visual"
],
"TVKeyword.voc": [
"Televisió",
"televisió",
"canal"
],
"AnimeKeyword.voc": [
"ànime"
],
"MusicKeyword.voc": [
"música",
"cançó",
"banda sonora",
"banda sonora"
],
"AudioBookKeyword.voc": [
"llibre",
"llibres",
"lectura",
"audiollibre",
"audiollibres",
"narra"
],
"SilentKeyword.voc": [
"silenci"
],
"ShortKeyword.voc": [
"curt"
]
}
14 changes: 14 additions & 0 deletions translations/de-de/dialogs.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
{
"cant.play.dialog": [
"Ich bin nicht sicher, wie man {phrase} spielt",
"Entschuldigung, ich weiß nicht, wie man {phrase} spielt"
],
"play.what.dialog": [
"Was soll ich als nächstes spielen?"
],
"just.one.moment.dialog": [
"Gib mir einen Moment",
"Augenblick",
"Einen Moment bitte, während ich danach suche"
]
}
63 changes: 63 additions & 0 deletions translations/de-de/intents.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,63 @@
{
"play.intent": [
"(spiele|starte) {query}",
"Suche (common play|ocp|ovos common play|O C P) nach {query}",
"Suche in (ovos|open voice os) Medien nach {query}",
"Suche {query} (in) (common play|ocp|ovos common play|O C P))",
"Suche {query} (in) (ovos|open voice os) Medien"
],
"like_song.intent": [
"ich mag (das|dieses|es)",
"ich mag (das|dieses|diese|diesen)(Lied|Musik|Track|Jam|Sound)",
"(gut|nett|großartig|erstaunlich|fantastisch|cool) (Lied|Musik|Track|Jam|Sound)",
"(das|dies|es) ist ein (guter|schöner|großartiger|erstaunlicher|fantastischer|cooler) (Song|Musik|Track|Jam|Sound)"
],
"next.intent": [
"(weiter|überspringen|skippe|überspringe)",
"(weiter|überspringen|skippe|überspringe) (Musik|Lied|Track|Video|Medien)",
"(spiele|gehen zum) nächsten (Musik|Lied|Titel|Video|Medium)",
"spiele das nächste",
"das nächste",
"(nächstes|nächsten) (Lied|Titel|Musik|Film|Video|Melodie)"
],
"resume.intent": [
"(Pause beenden| fortsetzen| weiter)",
"(Musik|Lied|Titel|Video|Medien|Wiedergabe) (Pause beenden|fortsetzen|fortfahren|neu starten) ",
"spiele"
],
"read.intent": [
"lese (Buch|Hörbuch) {query}",
"lese {query}",
"lese {query} (Buch|Hörbuch)"
],
"prev.intent": [
"(spiele vorheriges|spiele vorherigen|gehe ein) (Musik|Lied|Titel|Video|Medien) zurück",
"(spiele vorheriges|vorheriges) (Musik|Lied|Track|Video|Medien)",
"(spiele vorheriges|Vorheriges|gehe zurück)",
"vorheriges",
"(vorheriges|vorheriger) (Lied|Titel|Musik|Film|Video|Melodie)"
],
"pause.intent": [
"Pause",
"Pause (Musik|Lied|Titel|Video|Medien|Wiedergabe)"
],
"open.intent": [
"öffne (OCP|O C P|common|ovos|open voice os) (Player|Mediaplayer)",
"öffne (OCP|O C P|ovos Common Play|Common Play|ovos Media Player|Voice OS Player) (Startbildschirm|Startseite|Homescreen|Startseite|Menü)",
"öffne (OCP|O C P|ovos Common Play|Common Play|ovos Media Player|Voice OS Player)",
"öffne (Medien|Musik|GUI|Video) (Player|Katalog|Skills|Menü|Wiedergabe)"
],
"featured.intent": [
"(öffne|zeige|zeige an) (vorgestellte|) {Medien} (Katalog|Sammlung|Wiedergabeliste)",
"(öffnen | zeigen | anzeigen) vorgestellte {Medien}"
],
"play_favorites.intent": [
"(spiele|starte) meine (liebsten|schönsten) (Titel|Lied|Lieder|Musik|Jam|Jams)",
"(spiele|starte) (favorisierte) (Titel|Lied|Lieder|Musik|Jam|Jams)"
],
"media_stop.intent": [
"stoppen",
"Stoppe (Wiedergabe|Medien|Medienwiedergabe|Musik|Film|Filme|Lärm)",
"alles stoppen"
]
}
Loading

0 comments on commit 7f33b8d

Please sign in to comment.