scripts: fix translations

Translations with a comma in the key are rewritten to be on a single
line.

But this failed when the comma was just preceded by a dot (like in
`etc.,`).

Fix the script so that it works even in those cases.
This commit is contained in:
Pierre de La Morinerie 2019-04-17 10:49:10 +00:00
parent 80336b431e
commit d110ee558f
10 changed files with 24 additions and 19 deletions

View File

@ -406,14 +406,14 @@
"Add a time slot": "Ouzhpennañ un eur", "Add a time slot": "Ouzhpennañ un eur",
"Choose dates for your poll": "Dibabit deiziadoù ho sontadeg", "Choose dates for your poll": "Dibabit deiziadoù ho sontadeg",
"Copy times from the first day": "Eilañ eurioù an devezh kentañ war an devezhioù all", "Copy times from the first day": "Eilañ eurioù an devezh kentañ war an devezhioù all",
"For each selected day, you are free to suggest meeting times (e.g., \"8h\", \"8:30\", \"8h-10h\", \"evening\", etc.)": "For each selected day, you are free to suggest meeting times (e.g., \"8h\", \"8:30\", \"8h-10h\", \"evening\", etc.)", "For each selected day, you are free to suggest meeting times (e.g., \"8h\", \"8:30\", \"8h-10h\", \"evening\", etc.)": "Evit kement devezh diuzet e c'hallit dibab eurioù (da skouer: \"8e\", \"8:30\", \"8e-10e\", \"diouzh noz\", hag all.)",
"Poll dates (2 of 3)": "Dibab an deiziadoù (2 war 3)", "Poll dates (2 of 3)": "Dibab an deiziadoù (2 war 3)",
"Remove a day": "Dilemel an devezh diwezhañ", "Remove a day": "Dilemel an devezh diwezhañ",
"Remove a time slot": "Dileml an eur diwezhañ", "Remove a time slot": "Dileml an eur diwezhañ",
"Remove all days": "Dilemel an holl zevezhioù", "Remove all days": "Dilemel an holl zevezhioù",
"Remove all times": "Dilemel an holl eurioù", "Remove all times": "Dilemel an holl eurioù",
"Remove this day": "Dilemel an devezh-mañ", "Remove this day": "Dilemel an devezh-mañ",
"To schedule an event you need to provide at least two choices (e.g., two time slots on one day or two days).": "To schedule an event you need to provide at least two choices (e.g., two time slots on one day or two days).", "To schedule an event you need to provide at least two choices (e.g., two time slots on one day or two days).": "Evit krouiñ ur sontadeg deiziadoù eo ret deoc'h kinnig daou zibab d'an nebeutañ (div eur evit an hevelep devezh pe daou zevezh).",
"You can add or remove additional days and times with the buttons": "Gallout a rit ouzhpennañ pe dilemel devezhioù hag eurioù ouzhpenn gant an afelloù" "You can add or remove additional days and times with the buttons": "Gallout a rit ouzhpennañ pe dilemel devezhioù hag eurioù ouzhpenn gant an afelloù"
}, },
"Step 3": { "Step 3": {

View File

@ -406,14 +406,14 @@
"Add a time slot": "Afegeix un espai horari", "Add a time slot": "Afegeix un espai horari",
"Choose dates for your poll": "Tria dates per a la teva enquesta", "Choose dates for your poll": "Tria dates per a la teva enquesta",
"Copy times from the first day": "Copia els temps del primer dia", "Copy times from the first day": "Copia els temps del primer dia",
"For each selected day, you are free to suggest meeting times (e.g., \"8h\", \"8:30\", \"8h-10h\", \"evening\", etc.)": "For each selected day, you are free to suggest meeting times (e.g., \"8h\", \"8:30\", \"8h-10h\", \"evening\", etc.)", "For each selected day, you are free to suggest meeting times (e.g., \"8h\", \"8:30\", \"8h-10h\", \"evening\", etc.)": "Per cada dia seleccionat, pots suggerir temps de trobada (per exemple, \"8h\", \"8:30\", \"8h-10h\", \"tarda\", etc.).",
"Poll dates (2 of 3)": "Dates de l'enquesta (2 de 3)", "Poll dates (2 of 3)": "Dates de l'enquesta (2 de 3)",
"Remove a day": "Treure un dia", "Remove a day": "Treure un dia",
"Remove a time slot": "Treure un espai horari", "Remove a time slot": "Treure un espai horari",
"Remove all days": "Treure tots els dies", "Remove all days": "Treure tots els dies",
"Remove all times": "Treure tots els temps", "Remove all times": "Treure tots els temps",
"Remove this day": "Treu aquest dia", "Remove this day": "Treu aquest dia",
"To schedule an event you need to provide at least two choices (e.g., two time slots on one day or two days).": "To schedule an event you need to provide at least two choices (e.g., two time slots on one day or two days).", "To schedule an event you need to provide at least two choices (e.g., two time slots on one day or two days).": "Per programar un esdeveniment, hauràs de proporcionar almenys dues opcions (per exemple, dos espais horaris en un o dos dies).",
"You can add or remove additional days and times with the buttons": "Podeu afegir o treure dies i hores addicionals amb els botons" "You can add or remove additional days and times with the buttons": "Podeu afegir o treure dies i hores addicionals amb els botons"
}, },
"Step 3": { "Step 3": {

View File

@ -406,14 +406,14 @@
"Add a time slot": "Eine Uhrzeit hinzufügen", "Add a time slot": "Eine Uhrzeit hinzufügen",
"Choose dates for your poll": "Terminvorschläge für Ihre Umfrage machen", "Choose dates for your poll": "Terminvorschläge für Ihre Umfrage machen",
"Copy times from the first day": "Uhrzeiten des ersten Tags kopieren", "Copy times from the first day": "Uhrzeiten des ersten Tags kopieren",
"For each selected day, you are free to suggest meeting times (e.g., \"8h\", \"8:30\", \"8h-10h\", \"evening\", etc.)": "For each selected day, you are free to suggest meeting times (e.g., \"8h\", \"8:30\", \"8h-10h\", \"evening\", etc.)", "For each selected day, you are free to suggest meeting times (e.g., \"8h\", \"8:30\", \"8h-10h\", \"evening\", etc.)": "Für jeden ausgewählten Tag können Sie fakultativ Uhrzeiten vorschlagen (z. B.: \"8h\", \"8:30\", \"8h-10h\", \"abends\", usw.)",
"Poll dates (2 of 3)": "Umfragedaten (2 von 3)", "Poll dates (2 of 3)": "Umfragedaten (2 von 3)",
"Remove a day": "Einen Tag entfernen", "Remove a day": "Einen Tag entfernen",
"Remove a time slot": "Eine Uhrzeit entfernen", "Remove a time slot": "Eine Uhrzeit entfernen",
"Remove all days": "Alle Tage entfernen", "Remove all days": "Alle Tage entfernen",
"Remove all times": "Alle Uhrzeiten entfernen", "Remove all times": "Alle Uhrzeiten entfernen",
"Remove this day": "Diesen Tag entfernen", "Remove this day": "Diesen Tag entfernen",
"To schedule an event you need to provide at least two choices (e.g., two time slots on one day or two days).": "To schedule an event you need to provide at least two choices (e.g., two time slots on one day or two days).", "To schedule an event you need to provide at least two choices (e.g., two time slots on one day or two days).": "Um eine Terminabsprache zu konfigurieren, müssen Sie mindestens zwei alternative Zeitpunkte vorschlagen (zwei Uhrzeiten am gleichen Tag oder verschiedene Tage).",
"You can add or remove additional days and times with the buttons": "Sie können weitere Tage und Uhrzeiten über die Buttons hinzufügen oder entfernen" "You can add or remove additional days and times with the buttons": "Sie können weitere Tage und Uhrzeiten über die Buttons hinzufügen oder entfernen"
}, },
"Step 3": { "Step 3": {

View File

@ -406,14 +406,14 @@
"Add a time slot": "Añadir un horario", "Add a time slot": "Añadir un horario",
"Choose dates for your poll": "Elija las fechas de su encuesta", "Choose dates for your poll": "Elija las fechas de su encuesta",
"Copy times from the first day": "Copiar los horarios del primer día en los otros días", "Copy times from the first day": "Copiar los horarios del primer día en los otros días",
"For each selected day, you are free to suggest meeting times (e.g., \"8h\", \"8:30\", \"8h-10h\", \"evening\", etc.)": "For each selected day, you are free to suggest meeting times (e.g., \"8h\", \"8:30\", \"8h-10h\", \"evening\", etc.)", "For each selected day, you are free to suggest meeting times (e.g., \"8h\", \"8:30\", \"8h-10h\", \"evening\", etc.)": "Para cada día seleccionado, puede elegir o no, horarios de reunión (por ejemplo: \"8:00\", \"8:30\", \"8:00-10:00\", \"noche\", etc.)",
"Poll dates (2 of 3)": "Elegir las fechas (2 de 3)", "Poll dates (2 of 3)": "Elegir las fechas (2 de 3)",
"Remove a day": "Eliminar un día", "Remove a day": "Eliminar un día",
"Remove a time slot": "Eliminar una franja horaria", "Remove a time slot": "Eliminar una franja horaria",
"Remove all days": "Borrar todos los días", "Remove all days": "Borrar todos los días",
"Remove all times": "Eliminar todos los horarios", "Remove all times": "Eliminar todos los horarios",
"Remove this day": "Eliminar este dia", "Remove this day": "Eliminar este dia",
"To schedule an event you need to provide at least two choices (e.g., two time slots on one day or two days).": "To schedule an event you need to provide at least two choices (e.g., two time slots on one day or two days).", "To schedule an event you need to provide at least two choices (e.g., two time slots on one day or two days).": "Para programar un evento, tiene que proponer por lo menos dos opciones (dos horarios para un día, o dos días).",
"You can add or remove additional days and times with the buttons": "Puede agregar o borrar días y horarios con los botones" "You can add or remove additional days and times with the buttons": "Puede agregar o borrar días y horarios con los botones"
}, },
"Step 3": { "Step 3": {

View File

@ -406,14 +406,14 @@
"Add a time slot": "Ajouter un horaire", "Add a time slot": "Ajouter un horaire",
"Choose dates for your poll": "Choisissez les dates de votre sondage", "Choose dates for your poll": "Choisissez les dates de votre sondage",
"Copy times from the first day": "Reporter les horaires du premier jour sur les autres jours", "Copy times from the first day": "Reporter les horaires du premier jour sur les autres jours",
"For each selected day, you are free to suggest meeting times (e.g., \"8h\", \"8:30\", \"8h-10h\", \"evening\", etc.)": "For each selected day, you are free to suggest meeting times (e.g., \"8h\", \"8:30\", \"8h-10h\", \"evening\", etc.)", "For each selected day, you are free to suggest meeting times (e.g., \"8h\", \"8:30\", \"8h-10h\", \"evening\", etc.)": "Pour chacun des jours sélectionnés, vous avez la possibilité de choisir ou non, des heures de réunion (par exemple : \"8h\", \"8:30\", \"8h-10h\", \"soir\", etc.)",
"Poll dates (2 of 3)": "Choix des dates (2 sur 3)", "Poll dates (2 of 3)": "Choix des dates (2 sur 3)",
"Remove a day": "Supprimer le dernier jour", "Remove a day": "Supprimer le dernier jour",
"Remove a time slot": "Supprimer le dernier horaire", "Remove a time slot": "Supprimer le dernier horaire",
"Remove all days": "Effacer tous les jours", "Remove all days": "Effacer tous les jours",
"Remove all times": "Effacer tous les horaires", "Remove all times": "Effacer tous les horaires",
"Remove this day": "Supprimer ce jour", "Remove this day": "Supprimer ce jour",
"To schedule an event you need to provide at least two choices (e.g., two time slots on one day or two days).": "To schedule an event you need to provide at least two choices (e.g., two time slots on one day or two days).", "To schedule an event you need to provide at least two choices (e.g., two time slots on one day or two days).": "Pour créer un sondage spécial dates vous devez proposer au moins deux choix (deux horaires pour une même journée ou deux jours).",
"You can add or remove additional days and times with the buttons": "Vous pouvez ajouter ou supprimer des jours et horaires supplémentaires avec les boutons" "You can add or remove additional days and times with the buttons": "Vous pouvez ajouter ou supprimer des jours et horaires supplémentaires avec les boutons"
}, },
"Step 3": { "Step 3": {

View File

@ -406,14 +406,14 @@
"Add a time slot": "Idősáv hozzáadása", "Add a time slot": "Idősáv hozzáadása",
"Choose dates for your poll": "Válassz dátumokat a szavazáshoz", "Choose dates for your poll": "Válassz dátumokat a szavazáshoz",
"Copy times from the first day": "Idősávok átmásolása az első napból", "Copy times from the first day": "Idősávok átmásolása az első napból",
"For each selected day, you are free to suggest meeting times (e.g., \"8h\", \"8:30\", \"8h-10h\", \"evening\", etc.)": "For each selected day, you are free to suggest meeting times (e.g., \"8h\", \"8:30\", \"8h-10h\", \"evening\", etc.)", "For each selected day, you are free to suggest meeting times (e.g., \"8h\", \"8:30\", \"8h-10h\", \"evening\", etc.)": "Minden egyes napnál szabadon adhatsz meg találkozási időket (például „8h”, „8:30”, „8h-10h”, „este” stb.)",
"Poll dates (2 of 3)": "Szavazási dátumok (2/3)", "Poll dates (2 of 3)": "Szavazási dátumok (2/3)",
"Remove a day": "Nap eltávolítása", "Remove a day": "Nap eltávolítása",
"Remove a time slot": "Idősáv eltávolítása", "Remove a time slot": "Idősáv eltávolítása",
"Remove all days": "Összes nap eltávolítása", "Remove all days": "Összes nap eltávolítása",
"Remove all times": "Összes idősáv eltávolítása", "Remove all times": "Összes idősáv eltávolítása",
"Remove this day": "Nap eltávolítása", "Remove this day": "Nap eltávolítása",
"To schedule an event you need to provide at least two choices (e.g., two time slots on one day or two days).": "To schedule an event you need to provide at least two choices (e.g., two time slots on one day or two days).", "To schedule an event you need to provide at least two choices (e.g., two time slots on one day or two days).": "Egy esemény ütemezéséhez legalább két lehetőséget kell megadni (azaz két idősávot egy nap, vagy két napot).",
"You can add or remove additional days and times with the buttons": "A gombokkal további napokat és idősávokat adhatsz hozzá." "You can add or remove additional days and times with the buttons": "A gombokkal további napokat és idősávokat adhatsz hozzá."
}, },
"Step 3": { "Step 3": {

View File

@ -406,14 +406,14 @@
"Add a time slot": "Aggiungere un orario", "Add a time slot": "Aggiungere un orario",
"Choose dates for your poll": "Scegli le date del tuo sondaggio", "Choose dates for your poll": "Scegli le date del tuo sondaggio",
"Copy times from the first day": "Copia gli orari del primo giorno", "Copy times from the first day": "Copia gli orari del primo giorno",
"For each selected day, you are free to suggest meeting times (e.g., \"8h\", \"8:30\", \"8h-10h\", \"evening\", etc.)": "For each selected day, you are free to suggest meeting times (e.g., \"8h\", \"8:30\", \"8h-10h\", \"evening\", etc.)", "For each selected day, you are free to suggest meeting times (e.g., \"8h\", \"8:30\", \"8h-10h\", \"evening\", etc.)": "Per ogni giorno selezionato, hai la possibilità di scegliere o meno, le ore dell'incontro (per esempio : \"8h\", \"8:30\", \"8h-10h\", \"sera\", etc.)",
"Poll dates (2 of 3)": "Scelta delle date (2 di 3)", "Poll dates (2 of 3)": "Scelta delle date (2 di 3)",
"Remove a day": "Eliminare l'ultimo giorno", "Remove a day": "Eliminare l'ultimo giorno",
"Remove a time slot": "Eliminare l'ultimo orario", "Remove a time slot": "Eliminare l'ultimo orario",
"Remove all days": "Cancellare tutti i giorni", "Remove all days": "Cancellare tutti i giorni",
"Remove all times": "Cancellare tutti gli orari", "Remove all times": "Cancellare tutti gli orari",
"Remove this day": "Eliminare questo giorno", "Remove this day": "Eliminare questo giorno",
"To schedule an event you need to provide at least two choices (e.g., two time slots on one day or two days).": "To schedule an event you need to provide at least two choices (e.g., two time slots on one day or two days).", "To schedule an event you need to provide at least two choices (e.g., two time slots on one day or two days).": "Per creare un evento, è meglio proporre almeno 2 scelte (2 orari per lo stesso giorno o 2 giorni).",
"You can add or remove additional days and times with the buttons": "Puoi aggiungere o eliminare dei giorni et orari ulteriori con i pulsanti" "You can add or remove additional days and times with the buttons": "Puoi aggiungere o eliminare dei giorni et orari ulteriori con i pulsanti"
}, },
"Step 3": { "Step 3": {

View File

@ -406,14 +406,14 @@
"Add a time slot": "Voeg een tijd toe", "Add a time slot": "Voeg een tijd toe",
"Choose dates for your poll": "Kies de datums voor je datumprikker", "Choose dates for your poll": "Kies de datums voor je datumprikker",
"Copy times from the first day": "Kopieer de tijden van de eerste dag", "Copy times from the first day": "Kopieer de tijden van de eerste dag",
"For each selected day, you are free to suggest meeting times (e.g., \"8h\", \"8:30\", \"8h-10h\", \"evening\", etc.)": "For each selected day, you are free to suggest meeting times (e.g., \"8h\", \"8:30\", \"8h-10h\", \"evening\", etc.)", "For each selected day, you are free to suggest meeting times (e.g., \"8h\", \"8:30\", \"8h-10h\", \"evening\", etc.)": "Voor elke geselecteerde dag kan je tijden voorstellen. (Bijvoorbeeld 8h, 8:30, 8h-10h, avond, enz.)",
"Poll dates (2 of 3)": "Te prikken datums (2 van 3)", "Poll dates (2 of 3)": "Te prikken datums (2 van 3)",
"Remove a day": "Verwijder een dag", "Remove a day": "Verwijder een dag",
"Remove a time slot": "Verwijder een tijd", "Remove a time slot": "Verwijder een tijd",
"Remove all days": "Verwijder alle dagen", "Remove all days": "Verwijder alle dagen",
"Remove all times": "Verwijder alle tijden", "Remove all times": "Verwijder alle tijden",
"Remove this day": "Verwijder deze dag", "Remove this day": "Verwijder deze dag",
"To schedule an event you need to provide at least two choices (e.g., two time slots on one day or two days).": "To schedule an event you need to provide at least two choices (e.g., two time slots on one day or two days).", "To schedule an event you need to provide at least two choices (e.g., two time slots on one day or two days).": "Om een datum te prikken, moet je tenminste twee keuzes geven. (Bijvoorbeeld twee tijden op één dag of twee verschillende dagen).",
"You can add or remove additional days and times with the buttons": "Je kan extra dagen of tijden toevoegen en verwijderen met deze knoppen" "You can add or remove additional days and times with the buttons": "Je kan extra dagen of tijden toevoegen en verwijderen met deze knoppen"
}, },
"Step 3": { "Step 3": {

View File

@ -406,14 +406,14 @@
"Add a time slot": "Ajustar un orari", "Add a time slot": "Ajustar un orari",
"Choose dates for your poll": "Causissètz las datas de vòstre sondatge", "Choose dates for your poll": "Causissètz las datas de vòstre sondatge",
"Copy times from the first day": "Reportar los oraris del primièr jorn suls autres jorns", "Copy times from the first day": "Reportar los oraris del primièr jorn suls autres jorns",
"For each selected day, you are free to suggest meeting times (e.g., \"8h\", \"8:30\", \"8h-10h\", \"evening\", etc.)": "For each selected day, you are free to suggest meeting times (e.g., \"8h\", \"8:30\", \"8h-10h\", \"evening\", etc.)", "For each selected day, you are free to suggest meeting times (e.g., \"8h\", \"8:30\", \"8h-10h\", \"evening\", etc.)": "Per cada jorn seleccionat avètz la possibilitat de causir o non doras de reünion (per exemple:\"8o\", \"8o30\", \"8o-10o\", \"ser\", etc.)",
"Poll dates (2 of 3)": "Causida de las datas (2 sus 3)", "Poll dates (2 of 3)": "Causida de las datas (2 sus 3)",
"Remove a day": "Suprimir lo darrièr jorn", "Remove a day": "Suprimir lo darrièr jorn",
"Remove a time slot": "Suprimir lo darrièr orari", "Remove a time slot": "Suprimir lo darrièr orari",
"Remove all days": "Suprimir totes los jorns", "Remove all days": "Suprimir totes los jorns",
"Remove all times": "Suprimir totes los oraris", "Remove all times": "Suprimir totes los oraris",
"Remove this day": "Suprimir aqueste jorn", "Remove this day": "Suprimir aqueste jorn",
"To schedule an event you need to provide at least two choices (e.g., two time slots on one day or two days).": "To schedule an event you need to provide at least two choices (e.g., two time slots on one day or two days).", "To schedule an event you need to provide at least two choices (e.g., two time slots on one day or two days).": "Per crear un sondatge especial datas vos cal prepausar almens doas causidas (dos oraris per la meteissa jornada o dos jorns).",
"You can add or remove additional days and times with the buttons": "Podètz apondre o suprimir de jorns e oraris suplementaris amb los botons" "You can add or remove additional days and times with the buttons": "Podètz apondre o suprimir de jorns e oraris suplementaris amb los botons"
}, },
"Step 3": { "Step 3": {

View File

@ -4,7 +4,12 @@ po2json -i po/en.po -t locale/en.json --progress none -o po/default.json
for i in po/*.po for i in po/*.po
do do
j=$(echo $i | cut -d '.' -f 1 | cut -d '/' -f 2) j=$(echo $i | cut -d '.' -f 1 | cut -d '/' -f 2)
vim -E -c "while search('^\\(#: \\..*\\)\\(\\n\\_^#: \\([^.].*\\)\\)\\+') | execute 'normal J' | s/ #: /,/ | endwhile" -c 'x' -- $i
# When there is a comma in a key, Zanata replaces it by a newline. And po2json doesn't like this.
# Edit the po file, to restore split key names on a single line again.
vim -E -c "while search('^\\(#: \\..*\\)\\(\\n\\_^#: \\([^.].*\\)\\)\\+') | s/\n#: /,/ | endwhile" -c 'x' -- $i
# Convert the po file to json
po2json -i $i -t po/default.json --progress none | scripts/renest_json.pl > po/$j.json po2json -i $i -t po/default.json --progress none | scripts/renest_json.pl > po/$j.json
mv po/$j.json locale/ mv po/$j.json locale/
done done