From 990707d678645cca1257d20f816429574aded0b8 Mon Sep 17 00:00:00 2001 From: Florian Ostertag Date: Thu, 28 Dec 2023 20:58:13 +0100 Subject: [PATCH 01/13] Transifex integration (#655) * Add: Transifex file and renamed lang files * Translate Vocaluxe/Website/locales/en.json in tr 100% translated source file: 'Vocaluxe/Website/locales/en.json' on 'tr'. * Translate Vocaluxe/Website/locales/en.json in es 100% translated source file: 'Vocaluxe/Website/locales/en.json' on 'es'. * Rename all language files to match transifex. * Manual sync of translations * Another manual sync of translations * Adjust pr branch name * Translate Output/Languages/en.xml in pt 97% of minimum 90% translated source file: 'Output/Languages/en.xml' on 'pt'. Sync of partially translated files: untranslated content is included with an empty translation or source language content depending on file format * Translate Output/Languages/en.xml in cs 96% of minimum 90% translated source file: 'Output/Languages/en.xml' on 'cs'. Sync of partially translated files: untranslated content is included with an empty translation or source language content depending on file format * Translate Output/Languages/en.xml in it 100% translated source file: 'Output/Languages/en.xml' on 'it'. * Translate Output/Languages/en.xml in ru 100% translated source file: 'Output/Languages/en.xml' on 'ru'. * Translate Output/Languages/en.xml in sv 100% translated source file: 'Output/Languages/en.xml' on 'sv'. * Translate Output/Languages/en.xml in de 100% translated source file: 'Output/Languages/en.xml' on 'de'. * Translate Output/Languages/en.xml in fr 100% translated source file: 'Output/Languages/en.xml' on 'fr'. * Translate Vocaluxe/Website/locales/en.json in hu 100% translated source file: 'Vocaluxe/Website/locales/en.json' on 'hu'. * Translate Vocaluxe/Website/locales/en.json in ru 100% translated source file: 'Vocaluxe/Website/locales/en.json' on 'ru'. * Fix: Unescape String during xml reading * Translate Output/Languages/en.xml in ru 100% translated source file: 'Output/Languages/en.xml' on 'ru'. * Translate Output/Languages/en.xml in ru 100% translated source file: 'Output/Languages/en.xml' on 'ru'. * Translate Output/Languages/en.xml in ru 100% translated source file: 'Output/Languages/en.xml' on 'ru'. * Translate Output/Languages/en.xml in ru 100% translated source file: 'Output/Languages/en.xml' on 'ru'. * Fix: Seperate handling of unescaping * Fix: Typo * Fix: Typo --------- Co-authored-by: transifex-integration[bot] <43880903+transifex-integration[bot]@users.noreply.github.com> --- Output/Languages/{Czech.xml => cs.xml} | 23 ++ Output/Languages/{German.xml => de.xml} | 33 ++- Output/Languages/{English.xml => en.xml} | 0 Output/Languages/{Spanish.xml => es.xml} | 0 Output/Languages/{French.xml => fr.xml} | 40 ++- Output/Languages/{Hungarian.xml => hu.xml} | 0 Output/Languages/{Italian.xml => it.xml} | 46 ++- Output/Languages/{Dutch.xml => nl.xml} | 0 Output/Languages/{Portuguese.xml => pt.xml} | 33 +++ Output/Languages/ru.xml | 269 ++++++++++++++++++ Output/Languages/{Swedish.xml => sv.xml} | 33 ++- Output/Languages/{Turkish.xml => tr.xml} | 0 .../Languages/{Asturian.xml => ast.xml} | 0 .../Challenge/Languages/{Czech.xml => cs.xml} | 1 + .../Languages/{German.xml => de.xml} | 0 .../Languages/{English.xml => en.xml} | 0 .../Languages/{Spanish.xml => es.xml} | 0 .../Languages/{French.xml => fr.xml} | 0 .../Languages/{Hungarian.xml => hu.xml} | 6 +- .../Languages/{Italian.xml => it.xml} | 1 + .../Challenge/Languages/{Dutch.xml => nl.xml} | 0 .../Languages/{Portuguese.xml => pt.xml} | 3 + Output/PartyModes/Challenge/Languages/ru.xml | 33 +++ .../Languages/{Swedish.xml => sv.xml} | 0 .../Languages/{Turkish.xml => tr.xml} | 0 .../Languages/{Asturian.xml => ast.xml} | 0 .../TicTacToe/Languages/{Czech.xml => cs.xml} | 6 +- .../Languages/{German.xml => de.xml} | 2 - .../Languages/{English.xml => en.xml} | 0 .../Languages/{Spanish.xml => es.xml} | 5 - .../Languages/{French.xml => fr.xml} | 4 +- .../Languages/{Hungarian.xml => hu.xml} | 6 +- .../Languages/{Italian.xml => it.xml} | 8 +- .../TicTacToe/Languages/{Dutch.xml => nl.xml} | 5 - .../Languages/{Portuguese.xml => pt.xml} | 6 +- Output/PartyModes/TicTacToe/Languages/ru.xml | 31 ++ .../Languages/{Swedish.xml => sv.xml} | 0 .../Languages/{Turkish.xml => tr.xml} | 5 - Tests/VocaluxeLib/XML/CXmlSerializerTest.cs | 46 +++ Vocaluxe/Base/CLanguage.cs | 2 +- Vocaluxe/Website/locales/de.json | 2 +- Vocaluxe/Website/locales/es.json | 6 +- .../locales/{Hungarian.json => hu.json} | 6 +- Vocaluxe/Website/locales/it.json | 4 +- .../Website/locales/{Polish.json => pl.json} | 0 Vocaluxe/Website/locales/ru.json | 86 ++++++ Vocaluxe/Website/locales/tr.json | 6 +- VocaluxeLib/Xml/CXmlDeserializer.cs | 28 +- transifex.yaml | 24 ++ 49 files changed, 736 insertions(+), 73 deletions(-) rename Output/Languages/{Czech.xml => cs.xml} (87%) rename Output/Languages/{German.xml => de.xml} (83%) rename Output/Languages/{English.xml => en.xml} (100%) rename Output/Languages/{Spanish.xml => es.xml} (100%) rename Output/Languages/{French.xml => fr.xml} (83%) rename Output/Languages/{Hungarian.xml => hu.xml} (100%) rename Output/Languages/{Italian.xml => it.xml} (78%) rename Output/Languages/{Dutch.xml => nl.xml} (100%) rename Output/Languages/{Portuguese.xml => pt.xml} (83%) create mode 100644 Output/Languages/ru.xml rename Output/Languages/{Swedish.xml => sv.xml} (81%) rename Output/Languages/{Turkish.xml => tr.xml} (100%) rename Output/PartyModes/Challenge/Languages/{Asturian.xml => ast.xml} (100%) rename Output/PartyModes/Challenge/Languages/{Czech.xml => cs.xml} (97%) rename Output/PartyModes/Challenge/Languages/{German.xml => de.xml} (100%) rename Output/PartyModes/Challenge/Languages/{English.xml => en.xml} (100%) rename Output/PartyModes/Challenge/Languages/{Spanish.xml => es.xml} (100%) rename Output/PartyModes/Challenge/Languages/{French.xml => fr.xml} (100%) rename Output/PartyModes/Challenge/Languages/{Hungarian.xml => hu.xml} (85%) rename Output/PartyModes/Challenge/Languages/{Italian.xml => it.xml} (97%) rename Output/PartyModes/Challenge/Languages/{Dutch.xml => nl.xml} (100%) rename Output/PartyModes/Challenge/Languages/{Portuguese.xml => pt.xml} (89%) create mode 100644 Output/PartyModes/Challenge/Languages/ru.xml rename Output/PartyModes/Challenge/Languages/{Swedish.xml => sv.xml} (100%) rename Output/PartyModes/Challenge/Languages/{Turkish.xml => tr.xml} (100%) rename Output/PartyModes/TicTacToe/Languages/{Asturian.xml => ast.xml} (100%) rename Output/PartyModes/TicTacToe/Languages/{Czech.xml => cs.xml} (86%) rename Output/PartyModes/TicTacToe/Languages/{German.xml => de.xml} (84%) rename Output/PartyModes/TicTacToe/Languages/{English.xml => en.xml} (100%) rename Output/PartyModes/TicTacToe/Languages/{Spanish.xml => es.xml} (85%) rename Output/PartyModes/TicTacToe/Languages/{French.xml => fr.xml} (85%) rename Output/PartyModes/TicTacToe/Languages/{Hungarian.xml => hu.xml} (86%) rename Output/PartyModes/TicTacToe/Languages/{Italian.xml => it.xml} (81%) rename Output/PartyModes/TicTacToe/Languages/{Dutch.xml => nl.xml} (86%) rename Output/PartyModes/TicTacToe/Languages/{Portuguese.xml => pt.xml} (85%) create mode 100644 Output/PartyModes/TicTacToe/Languages/ru.xml rename Output/PartyModes/TicTacToe/Languages/{Swedish.xml => sv.xml} (100%) rename Output/PartyModes/TicTacToe/Languages/{Turkish.xml => tr.xml} (85%) rename Vocaluxe/Website/locales/{Hungarian.json => hu.json} (97%) rename Vocaluxe/Website/locales/{Polish.json => pl.json} (100%) create mode 100644 Vocaluxe/Website/locales/ru.json create mode 100644 transifex.yaml diff --git a/Output/Languages/Czech.xml b/Output/Languages/cs.xml similarity index 87% rename from Output/Languages/Czech.xml rename to Output/Languages/cs.xml index fe288daf..6b378176 100644 --- a/Output/Languages/Czech.xml +++ b/Output/Languages/cs.xml @@ -15,6 +15,7 @@ Nahrané písně Myš Využití paměti + Herní režim Normální Duet Směska @@ -31,6 +32,10 @@ Normální uživatel Správce Uživatel klávesnice + Zdroj písně + Seznam skladeb + Skupina + Všechny písně Software OpenGL Direct3D @@ -151,6 +156,8 @@ Zastavit zpívání Pokračovat Přeskočit tuto píseň + Začít kolo znovu + Začít hru znovu Výsledky Hodnocení Body @@ -183,6 +190,7 @@ Nabídka písně Třídění písně Karty + Přehrávat automaticky náhledy písní Obtížnost hry Režim časomíry Styl pro nejlepší výsledky @@ -234,4 +242,19 @@ Hlasitost Adresa serveru Server neběží. Prověřte, prosím, config.xml! + Promiňte + Vocaluxe postihla chyba a spadl.\r\nPomožte nám opravit problém, pošlete hlášení.\r\nPro odstranění možná citlivých údajů před odesláním upravte následující zápis. + , že jste zažili chybu.\r\nPomožte nám opravit problém, pošlete hlášení.\r\nPro odstranění možná citlivých údajů před odesláním upravte následující zápis. + Nenahrávejte nic (můžete pořád zkopírovat hlášení o chybě výše) + Nahrajte a otevřete téma (veřejně viditelné + vyžaduje účet na Githubu) + Nahrajte a získejte odkaz na svoji zprávu (veřejně viditelné) + Odeslat + Nahrává se + Ukončit + Pokračovat + Odkaz na vaše hlášení: + Chyba při nahrávání zápisu. + Poslední chyba + Nedostupné + Zde popište potíže.\n\n### Kroky k zopakování situace\nŘekněte nám, jak zopakovat tento problém.\n\n### Verze Vocaluxe a soubor se záznamem\n{0}\n{1} diff --git a/Output/Languages/German.xml b/Output/Languages/de.xml similarity index 83% rename from Output/Languages/German.xml rename to Output/Languages/de.xml index 9076e3b8..79e97df3 100644 --- a/Output/Languages/German.xml +++ b/Output/Languages/de.xml @@ -15,6 +15,7 @@ Geladene Songs Maus Speicherverbrauch + Spielmodus Normal Duett Medley @@ -31,6 +32,10 @@ Normaler Benutzer Administrator Tastatur Benutzer + Song-Quelle + Playlist + Kategorie + Alle Lieder Software OpenGL Direct3D @@ -147,19 +152,21 @@ (%v Lieder) (%v Lied) %a -%t - A-Z = Zum Buchstaben springen • F3 = Suchen • STRG+R = Zufällige Auswahl • STRG+S = Starte Medley • STRG+# = Song Sortierung ändern • STRG+T = Kategorieansicht ein-/ausschalten • Leertaste = Lied-Optionen öffnen • ESC = Zurück zum Hauptmenü - A-Z = Interpreten und Titel durchsuchen, Präfixe für die Suche → a: = Interpret • t: = Titel • c: = Ersteller • e: = Edition • g: = Genre • y: = Jahr (z.B. 1999 oder 1980-1989) • l: = Sprache • al: = Album • fi: = Dateiname • fo: = Ordnername - 1-6 = Drücke die Teamnummer um einen Zufallssong Joker zu verwenden + A-Z = Zum Buchstaben springen • F3 = Suchen • STRG+R = Zufällige Auswahl • STRG+S = Medley starten • STRG+# = Song-Reihenfolge ändern • STRG+T = Kategorieansicht an-/abschalten • Leertaste = Songoptionen öffnen • ESC = Zurück zum Hauptmenü + A-Z = Interpret und Titel suchen; Präfixe für die Suche → a: = Interpret • t: = Titel • c: = Autor • e: = Edition • g: = Genre • y: = Jahr (z.B. 1999 oder 1980-1989) • l: = Sprache • al: = Album • fi: = Dateiname • fo: = Ordnername + 1-6 = Drücke die Nummer Deines Teams, um einen zufälligen Song-Joker einzusetzen Sortierung: %s Kein Medley für diesen Song! Pause Lied beenden Fortfahren Lied überspringen + Runde neustarten + Spiel neustarten Keine weiteren Songs in der Playlist! Keine Webcam verfügbar! - Seitenverhältnis: %a - %s Sekunden gesprungen + Bildverhältnis: %a + %s Sekunden übersprungen Auswertung Bewertung Punkte @@ -192,6 +199,7 @@ Song-Menu-Stil Sortierung der Lieder Kategorieren anzeigen + Autoplay für Songvorschau Schwierigkeit Zeit-Modus Highscore-Stil @@ -243,4 +251,19 @@ Lautstärke Serveradresse Server läuft derzeit nicht. Bitte überprüfe die config.xml! + Es tut uns leid + dass Vocaluxe abgestürzt ist.\r\nUm uns zu helfen, das Problem zu beheben, schicke uns bitte einen Absturzbericht.\r\nBitte bearbeite das folgende Protokoll, so dass keine eventuell persönlichen Daten enthalten sind. + dass Du einen Fehler festgestellt hast.\r\nUm uns zu helfen, das Problem zu beheben, schicke uns bitte einen Absturzbericht.\r\nBitte bearbeite das folgende Protokoll, so dass keine eventuell persönlichen Daten enthalten sind. + Nichts hochladen (Du kannst immer noch die Fehlermeldung oben kopieren) + Hochladen und ein Ticket eröffnen (öffentlich sichtbar und benötigt einen github-Account) + Hochladen und einen Link zum Bericht erhalten (öffentlich sichtbar) + Senden + Lade hoch + Verlassen + Fortfahren + Der Link zu Deinem Bericht: + Fehler beim Hochladen des Protokolls. + Letzter Fehler + Nicht verfügbar + Beschreibe Dein Problem hier.\n\n###Schritte zum Reproduzieren des Problems\nTeil uns mit wie man das Problem reproduzieren kann.\n\n###Vocaluxe-Version und -Protokoll\n{0}\n{1} diff --git a/Output/Languages/English.xml b/Output/Languages/en.xml similarity index 100% rename from Output/Languages/English.xml rename to Output/Languages/en.xml diff --git a/Output/Languages/Spanish.xml b/Output/Languages/es.xml similarity index 100% rename from Output/Languages/Spanish.xml rename to Output/Languages/es.xml diff --git a/Output/Languages/French.xml b/Output/Languages/fr.xml similarity index 83% rename from Output/Languages/French.xml rename to Output/Languages/fr.xml index 53dd928d..5968f548 100644 --- a/Output/Languages/French.xml +++ b/Output/Languages/fr.xml @@ -35,7 +35,7 @@ Source des chansons Playlist Catégorie - Toutes les chansons + Toutes les chansons Logiciel OpenGL Direct3D @@ -145,19 +145,28 @@ Options de la chanson Rechercher: Pas de Langue - Pas d'Année + Pas d\'Année Pas de Genre - Pas d'Edition + Pas d\'Edition Toutes les chansons (%v Chansons) (%v Chanson) %a - %t + A-Z = Sauter à la lettre • F3 = Chercher • CTRL+R = Sélectionner au hasard • CTRL+S = Lancer medley • CTRL+# = Changer le tri des chansons • CTRL+T = Activer/Désactiver la vue par catégorie • Espace = Ouvrir les options de chanson • Échap = Retouner au menu précédent + A-Z = Chercher artiste et titre, préfixes pour la recherche → a: = artiste • t: = titre • c: = créateurr • e: = édition • g: = genre • y: = année (ex: 1999 ou 1980-1989) • l: = langage • al: = album • fi: = nom du fichier • fo: = nom du dossier + 1-6 = Pressez votre numéro d'équipe afin d'utiliser une chanson joker au hasard + Classement en cours : %s + Aucun Medley pour cette chanson ! Pause Arrêter de chanter Continuer Passer cette chanson Redémarer le tour Redémarer le jeu + Plus aucune chanson dans la playlist ! + Pas de webcam disponible ! + Ratio d'aspect : %a + %s secondes passées Scores Note Points @@ -242,4 +251,29 @@ Volume Adresse du serveur Le serveur ne fonctionne pas. Merci de vérifier config.xml ! + Nous sommes désolés + Vocaluxe a rencontré une erreur ou un bug. +Pour nous aider à résoudre le problème, envoyez-nous un rapport. +Avant de soumettre le bug, modifiez le journal pour supprimer des informations sensibles. + Vous avez rencontré une erreur ou un bug. +Pour nous aider à résoudre le problème, envoyez-nous un rapport. +Avant de soumettre le bug, modifiez le journal suivant pour supprimer des informations sensibles. + N'envoi rien (vous pouvez toujours copier le message d'erreur ci-dessus) + Envoyer et ouvrir un problème (visible publiquement + nécessite un compte github) + Envoyer et obtenir le lien de votre rapport (visible publiquement) + Soumettre + Envoyer + Quitter + Continuer + Lien de votre rapport: + Erreur lors de l'envoi du journal. + Dernière erreur + Indisponible + Décrivez votre problème ici. + +### Procédure de reproduction +Dites-nous comment reproduire ce problème. +### Version Vocaluxe et fichier journal +{0} +{1} diff --git a/Output/Languages/Hungarian.xml b/Output/Languages/hu.xml similarity index 100% rename from Output/Languages/Hungarian.xml rename to Output/Languages/hu.xml diff --git a/Output/Languages/Italian.xml b/Output/Languages/it.xml similarity index 78% rename from Output/Languages/Italian.xml rename to Output/Languages/it.xml index e2e34af9..a1f0c4a9 100644 --- a/Output/Languages/Italian.xml +++ b/Output/Languages/it.xml @@ -15,6 +15,7 @@ Canzoni caricate Mouse Uso della Memoria + Modalità di gioco Normale Duetto Medley @@ -31,6 +32,10 @@ Utente normale Amministratore Tasti Utente + Sorgente della Canzone + Playlist + Categoria + Tutte le canzoni Software OpenGL Direct3D @@ -51,7 +56,7 @@ Scacchiera Libro Su richiesta - All'avvio + All\\'avvio Dinamico Nessuno Casuale @@ -84,6 +89,7 @@ Niente Riempi Salta + Slide Zoom Sotto Sopra @@ -119,10 +125,10 @@ 4 giocatori 5 giocatori 6 giocatori - Attenzione: Non c'è nessun microfono assegnato al giocatore %v! - Attenzione: Non c'è nessun microfono assegnato ai giocatori %v! - Attenzione: Non c'è nessun profilo assegnato al giocatore %v! - Attenzione: Non c'è nessun profilo assegnato ai giocatori %v! + Attenzione: Non c\'è nessun microfono assegnato al giocatore %v! + Attenzione: Non c\'è nessun microfono assegnato ai giocatori %v! + Attenzione: Non c\'è nessun profilo assegnato al giocatore %v! + Attenzione: Non c\'è nessun profilo assegnato ai giocatori %v! Selezione canzone Canta Aggiungi alla playlist @@ -146,10 +152,21 @@ (%v Canzoni) (%v Canzone) %a - %t + A-Z = Salta alla lettera • F3 = Cerca • CTRL+R = Selezione casuale • CTRL+S = Inizia medley • CTRL+# = Cambia l\'ordinamento delle canzoni • CTRL+T = Attiva/Disattiva visualizzazione categoria • Space = Apri impostazioni canzone • ESC = Ritorna al menu principale + A-Z = Cerca artista e titolo, prefissi per la ricerca → a: = artista • t: = titolo • c: = creatore • e: = edizione • g: = genere • y: = anno (es. 1999 o 1980-1989) • l: = lingua • al: = album • fi: = nome file • fo: = nome cartella + 1-6: Premi il numero del tuo team per usare una canzone giullare casuale + Ordinamento: %s + Nessun Medley per questa canzone! Pausa Smetti di cantare Continua Salta questa canzone + Rinizia turno + Rinizia il gioco + Nessun\'altra canzone nella playlist! + Nessuna webcam disponibile! + Proporzioni: %a + Saltati %s secondi Punteggi Voto Punti @@ -182,8 +199,10 @@ Menu canzone Ordine canzone Schede + Riproduci automaticamente le anteprime delle canzoni Difficoltà gioco Modalità a tempo + Stile del punteggio più alto Opzioni registrazione Dispositivo Input @@ -223,7 +242,7 @@ Webcam Risoluzione-Webcam Sistemazione schermo - Premi CTR + ALT (+ SHIFT) + Freccia|"+\ per sistemare lo schermo + Premi CTR + ALT (+ SHIFT) + Freccia|+ per sistemare lo schermo CTR + ALT + 0 per ripristinare Sopra a sinistra Sopra a destra @@ -232,4 +251,19 @@ Volume Indirizzo server Il server non sta funzionando. Per favore controlla il file config.xml! + Siamo spiacenti + che Vocaluxe si è imbattuto in un errore e si è arrestato.\r\nPer aiutarci a risolvere il problema, vi preghiamo di inviarci un rapporto.\r\nModifica il seguente log prima di inviare per rimuovere le informazioni eventualmente sensibili. + che Vocaluxe si è imbattuto in un errore.\r\nPer aiutarci a risolvere il problema, vi preghiamo di inviarci un rapporto.\r\nModifica il seguente log prima di inviare per rimuovere le informazioni eventualmente sensibili. + Non caricare niente (puoi comunque copiare il messaggio di errore soprastante) + Carica e apri una segnalazione (visibile pubblicamente + richiede un account github) + Carica e ottieni un link per il tuo rapporto (visibile pubblicamente) + Invia + Caricamento + Esci + Continua + Il link al tuo rapporto: + Errore nel caricamento del registro + Ultimo errore + Non disponibile + Descrivi qui il tuo problema.\n\n### Passaggi per riprodurre \nDiteci come riprodurre questo problema.\n\n### Versione di Vocaluxe e file di registro\n{0}\n{1} diff --git a/Output/Languages/Dutch.xml b/Output/Languages/nl.xml similarity index 100% rename from Output/Languages/Dutch.xml rename to Output/Languages/nl.xml diff --git a/Output/Languages/Portuguese.xml b/Output/Languages/pt.xml similarity index 83% rename from Output/Languages/Portuguese.xml rename to Output/Languages/pt.xml index b4b22541..940595b2 100644 --- a/Output/Languages/Portuguese.xml +++ b/Output/Languages/pt.xml @@ -15,6 +15,7 @@ Músicas carregadas Rato Utilização da Memória + Modo de Jogo Normal Dueto Miscelânea @@ -31,6 +32,10 @@ Utilizador Normal Administrador Utilizador de Teclado + Origem da Música + Lista de Reprodução + Categoria + Todas as Músicas Software OpenGL Direct3D @@ -73,6 +78,8 @@ Total Normal Expandida + Mostrar Todas + Mostrar as Melhores Apenas musica e musica de fundo Não utilizar música própria Apenas música própria @@ -80,6 +87,10 @@ Todas Apenas nomes e avatares Nada + Preencher + Saltar + Deslizar + Aumentar Fundo Topo Topo e Fundo @@ -145,6 +156,10 @@ Terminar de cantar Continuar Saltar esta música + Recomeçar a Ronda + Recomeçar o Jogo + Sem mais Músicas na sua lista de reprodução! + Nenhuma câmara web disponível! Pontuações Classificação Pontos @@ -177,8 +192,10 @@ Menu das Músicas Ordenação das Musicas Separadores + Autoplay das Amostras de Músicas Dificildade do Jogo Modo Temporizado + Estilo da Melhor Pontuação Opções de Gravação Dispositivo Entrada @@ -197,6 +214,7 @@ Origem da Música de Fundo Prévisualizar Volume da Música Volume da Música no Jogo + Efeito Karaoke Opções do Tema Tema Skin @@ -226,4 +244,19 @@ Volume Endereço do Servidor Servidor não está em execução. Por favor verifique o config.xml! + Pedimos Desculpa + mas o Vocaluxe encontrou um erro e crashou.\r\nPara nos ajudares a resolver a questão envia-nos um relatório.\r\nSugerimos que edites o log seguinte antes de enviares para removeres alguma informação sigilosa. + que tenhas sofrido um problema.\r\nPara nos ajudares a resolver a questão envia-nos um relatório.\r\nSugerimos que edites o log seguinte antes de enviares para removeres alguma informação sigilosa. + Não fazer upload de nada (ainda podes copiar o código de erro que está por cima) + Fazer upload e abrir um problema (visível publicamente e requer uma conta github) + Fazer upload e obter um link para o teu relatório (visível publicamente) + Submeter + Uploading + Sair + Continuar + O Link para o teu relatório: + Erro a fazer upload do log. + Último erro + Indisponível + Descreve o teu problema aqui.\n\n### Passos para o reproduzir novamente \nDiz-nos como reproduzir este problema.\n\n### Versão do Vocaluxe e ficheiro Log\n{0}\n{1} diff --git a/Output/Languages/ru.xml b/Output/Languages/ru.xml new file mode 100644 index 00000000..8dced1ed --- /dev/null +++ b/Output/Languages/ru.xml @@ -0,0 +1,269 @@ + + + Русский + Вокалюкс + и + Выход + Сохранить + Назад + Старт + Аудиопотоки + Видеопотоки + Текстуры + Тонус + Макс. громкость + Загруженные песни + Мышь + Память + Игровой режим + Нормальный + Дуэт + Попурри + Краткая версия + Вокальный Герой + Суперзвезда + Ведущий певец + Восходящая звезда + Многообещающий + Подражатель + Любитель + Нету слуха + Гость + Обычный пользователь + Администратор + Пользователь клавиатуры + Источник песни + Плейлист + Категория + Все песни + Программное обеспечение + OpenGL + Direct3D + Низший + Низкий + Средний + Высокий + Наивысший + Выкл. + Вкл. + Только FPS + Уровень 1 + Уровень 2 + Уровень 3 + Макс. + Список + Дрейдл + Плитки + Книга + По требованию + При запуске + Динамически + Нет + Случайно + Папка + Исполнитель + Исполнитель по букве + Название по букве + Версия + Жанр + Год + Десятилетие + Язык + Дата добавления + Лёгкая + Нормальная + Сложная + Текущее + Оставшееся + Общее + Обычное + Расширенное + Список всех + Список лучших + Собственная музыка и фоновая музыка + Нет собственной музыки + Только собственная музыка + Только выбранная песня + Все + Только имена и аватары + Ничего + Заполнение + Прыжок + Слайд + Зум + Внизу + Сверху + Сверху и снизу + Динамический + Загрузка + Весь + песни + загружен + Общее Меню + Пение + Вечеринка + Опции + Профили + Профили не найдены! + Выбор режима Вечеринки + Режим Вечеринки + Описание + Автор + Версия + Не получилось загрузить этот режим вечеринки. + Нет настроенных микрофонов! + %d микрофон(ов) необходимо для этого режима вечеринки! + Целевая аудитория + Нет команд + Количество команд + Количество игроков + Выбор игроков + Игрок + 1 игрок + 2 игрока + 3 игрока + 4 игрока + 5 игроков + 6 игроков + Внимание: Не обнаружен микрофон игрока %v! + Внимание: Не обнаружены микрофоны игроков %v! + Внимание: Не обнаружен профиль игрока %v! + Внимание: Не обнаружены профили игроков %v! + Выбор песни + Петь + Добавить в плейлист + Закрыть + Выбрать случайную песню + Выбрать случяйную категорию + Петь все песни + Петь все видимые песни + Открыть плейлист + Выбрать + Спеть случайное попурри + Петь попурри + Новый плейлист + Опции пения + Поиск: + Нет языка + Нет Года + Нет Жанра + Нет Версии + Все песни + (%v песни) + (%v песня) + %a - %t + A-Z = Начать ввод • F3 = Поиск • CTRL+R = Случайный выбор • CTRL+S = Начать попурри • CTRL+# = Выбор сортировки песен • CTRL+T = Включить/Выключить просмотр категории • Space = Открыть параметры песни • ESC = Вернуться в главное меню + A-Z = Поиск исполнителя и названия, префиксы для поиска → a: = артист • t: = название • c: = автор • e: = версия • g: = жанр • y: = год (напр. 1999 или 1980-1989) • l: = язык • al: = альбом • fi: = имя файла • fo: = имя папки + 1-6 = Нажмите номер вашей команды, чтобы использовать случайную песню джокер + Сортировать: %s + Нет Попурри для этой песни! + Пауза + Остановить пение + Продолжить + Пропустить эту песню + Перезапустить раунд + Перезапустить игру + В плейлисте больше нет песен! + Веб-камера недоступна! + Соотношение сторон: %a + Пропущено %s секунд + Счёт + Рейтинг + Очки + Сложность + Общий счёт + Рекорд + Профили + Имя игрока + Сложность игры + Аватар + Роль + Активный + Новый + Удалить + Сделать снимок + Сохранить снимок + Удалить снимок + Веб-камера + Опции + Игра + Звук + Запись + Видео + Текст песни + Тема + Адрес сервера + Опции игры + Язык + Уровень отладки + Стиль меню песни + Сортировка песен + Вкладки + Автозапуск предпросмотра песен + Сложность игры + Режим таймера + Стиль Рекордов + Параметры Записи + Устройство + Ввод + Игрок 1 + Игрок 2 + Игрок 3 + Игрок 4 + Игрок 5 + Игрок 6 + Задержка микрофона + Внимание: один из игроков назначен на два микрофона. + Тест задержки + Настройки Звука + Фоновая музыка + Громкость фоновой музыки + Источник фоновой музыки + Предпрослушивание громкости музыки + Громкость игровой музыки + Эффект Караоке + Настройки темы + Тема + Скин + Тема обложки + Показать строки заметки + Показать тон-помощник + Режим временной шкалы + Угасание информации об игроке + Обложка-поведение при загрузке + Варианты песен + Стиль анимации + Позиция текста + Опции видео + Видео фоны + Предпросмотр видео + Видео во время пения + Отображение текущей фоновой музыки видео + Веб-камеры + Разрешение веб-камеры + Настроить экран + Нажмите CTRL + ALT (+ SHIFT) + Стрелки для настройки экрана + CTRL + ALT + 0 сброс + Сверху слева + Сверху справа + Внизу слева + Внизу справа + Громкость + Адрес сервера + Сервер не работает. Пожалуйста, проверьте config.xml! + Нам очень жаль + В Vocaluxe произошла ошибка и произошел сбой.\r\nЧтобы помочь нам решить проблему, отправьте нам отчет.\r\nИзмените следующий журнал перед отправкой, чтобы удалить потенциально конфиденциальную информацию. + что вы столкнулись с ошибкой.\r\nЧтобы помочь нам решить проблему, отправьте нам отчет..\r\nИзменить следующий журнал перед отправкой, чтобы удалить потенциально конфиденциальную информацию. + Не загружать ничего (вы можете скопировать сообщение об ошибке выше) + Загрузить и откройть проблему (общедоступно + требуется учетная запись github) + Загрузить и получить ссылку на свой отчет (общедоступная) + Отправить + Загрузка + Выход + Продолжить + Ссылка на ваш отчет: + Ошибка при загрузке журнала. + Последняя ошибка + Не доступно + Опишите свою проблему здесь.\n\n### шаги для воспроизведения\nРасскажите, как воспроизвести эту проблему.\n\n### версию Vocaluxe и лог файл\n{0}\n{1} + diff --git a/Output/Languages/Swedish.xml b/Output/Languages/sv.xml similarity index 81% rename from Output/Languages/Swedish.xml rename to Output/Languages/sv.xml index 81bfe9f9..746be5f5 100644 --- a/Output/Languages/Swedish.xml +++ b/Output/Languages/sv.xml @@ -15,6 +15,7 @@ Laddade låtar Mus Minnesanvändning + Spelläge Normal Duett Medley @@ -31,6 +32,10 @@ Normal användare Administratör Tangentbordsanvändare + Låtkälla + Spellista + Kategori + Alla låtar Mjukvara OpenGL Direct3D @@ -147,10 +152,21 @@ (%v låtar) (%v låt) %a - %t + A-Z = Hoppa till bokstaven • F3 = Sök • CTRL+R = Slumpa • CTRL+S = Starta medley • CTRL+# = Ändra sångsortering • CTRL+T = Aktivera/Inaktivera kategorivy • Mellanslag = Öppna sångalternativ • ESC = Tillbaka till huvudmenyn + A-Z = Sök artist och titel, prefix för sökningen → a: = artist • t: = titel • c: = skapare • e: = utgåva • g: = genre • y: = år (t ex. 1999 eller 1980-1989) • l: = språk • al: = album • fi: = filnamn • fo: = mappnamn + 1-6 = Tryck ditt lagnummer för att använda en slumpad sångjoker + Sortering: %s + Inget medley för denna sång! Paus Avsluta låt Fortsätt Hoppa över låt + Starta om runda + Starta om spel + Inga fler sånger i spellistan! + Ingen webkamera tillgänglig! + Bildformat: %a + Hoppade över %s sekunder Resultat Rankning Poäng @@ -183,7 +199,7 @@ Låtmeny Låtsortering Flikar - Förhandsvisa låtar automatiskt + Förhandsgranska låt automatiskt Spelets svårighetsgrad Timerläge Topplistsvy @@ -235,4 +251,19 @@ Volym Serveradress Servern körs inte. Var god kontrollera config.xml! + Vi ber om ursäkt + så Vocaluxe sätte på ett fel och har kraschat..\r\nFör att hjälpa oss att åtgärda problemet, ber vi er att skicka oss en rapport.\r\nÄndra följande logg innan du skickar in den och ta bort eventuellt känslig information. + att du har upplevt ett fel.\r\nFör att hjälp oss att åtgärda problemet, så ber vi er skicka in er rapport.\r\nÄndra loggen innan den skickar in för att ta bort eventuellt känslig information. + Ladda inte upp något. (du kan fortfarande kopiera felmeddelandet ovanför) + Ladda upp och felanmäla ett problem (Som kommer synas för alla och kräver ett github konto) + Ladda upp så får ni länk till er rapport (som kommer synas för alla) + Skicka in + Laddar upp + Lämna + Fortsätt + Länken till er rapport. + Problem uppstod när loggen skulle skickas. + Senaste fel + Inte tillgänglig + Beskriv ert problem här.\n\n### Steg att reproducera \ nBerätta för oss hur du reproducerat detta problem.\n\n### Vocaluxe-version och loggfil\n{0}\n{1} diff --git a/Output/Languages/Turkish.xml b/Output/Languages/tr.xml similarity index 100% rename from Output/Languages/Turkish.xml rename to Output/Languages/tr.xml diff --git a/Output/PartyModes/Challenge/Languages/Asturian.xml b/Output/PartyModes/Challenge/Languages/ast.xml similarity index 100% rename from Output/PartyModes/Challenge/Languages/Asturian.xml rename to Output/PartyModes/Challenge/Languages/ast.xml diff --git a/Output/PartyModes/Challenge/Languages/Czech.xml b/Output/PartyModes/Challenge/Languages/cs.xml similarity index 97% rename from Output/PartyModes/Challenge/Languages/Czech.xml rename to Output/PartyModes/Challenge/Languages/cs.xml index c0fce8eb..6fb11001 100644 --- a/Output/PartyModes/Challenge/Languages/Czech.xml +++ b/Output/PartyModes/Challenge/Languages/cs.xml @@ -11,6 +11,7 @@ Ano Ne Další kolo + Písně Soutěžní režim: Nastavení Počet hráčů Počet mikrofonů diff --git a/Output/PartyModes/Challenge/Languages/German.xml b/Output/PartyModes/Challenge/Languages/de.xml similarity index 100% rename from Output/PartyModes/Challenge/Languages/German.xml rename to Output/PartyModes/Challenge/Languages/de.xml diff --git a/Output/PartyModes/Challenge/Languages/English.xml b/Output/PartyModes/Challenge/Languages/en.xml similarity index 100% rename from Output/PartyModes/Challenge/Languages/English.xml rename to Output/PartyModes/Challenge/Languages/en.xml diff --git a/Output/PartyModes/Challenge/Languages/Spanish.xml b/Output/PartyModes/Challenge/Languages/es.xml similarity index 100% rename from Output/PartyModes/Challenge/Languages/Spanish.xml rename to Output/PartyModes/Challenge/Languages/es.xml diff --git a/Output/PartyModes/Challenge/Languages/French.xml b/Output/PartyModes/Challenge/Languages/fr.xml similarity index 100% rename from Output/PartyModes/Challenge/Languages/French.xml rename to Output/PartyModes/Challenge/Languages/fr.xml diff --git a/Output/PartyModes/Challenge/Languages/Hungarian.xml b/Output/PartyModes/Challenge/Languages/hu.xml similarity index 85% rename from Output/PartyModes/Challenge/Languages/Hungarian.xml rename to Output/PartyModes/Challenge/Languages/hu.xml index 30b313a2..fd86b1aa 100644 --- a/Output/PartyModes/Challenge/Languages/Hungarian.xml +++ b/Output/PartyModes/Challenge/Languages/hu.xml @@ -1,8 +1,8 @@ Magyar - Bajnokság Mód - Bajnokság Módban egymás ellen + Bajnokság + Bajnokság mód egymás ellen Azoknak akik szeretnék megmérettetni magukat egymás ellen Következő Vissza @@ -15,6 +15,8 @@ Játékosok Száma Mikrofonok Száma Körök Száma + Jokerek száma + Jokerek újratöltése minden körben Bajnokság Mód: Válassz Játékost Véletlenszerű választás Bajnokság Mód: Áttekintés diff --git a/Output/PartyModes/Challenge/Languages/Italian.xml b/Output/PartyModes/Challenge/Languages/it.xml similarity index 97% rename from Output/PartyModes/Challenge/Languages/Italian.xml rename to Output/PartyModes/Challenge/Languages/it.xml index 05b77510..cdcfd734 100644 --- a/Output/PartyModes/Challenge/Languages/Italian.xml +++ b/Output/PartyModes/Challenge/Languages/it.xml @@ -11,6 +11,7 @@ Si No Prossimo Turno + Canzoni Modalità Sfida: Configurazione Numero di giocatori Numero di microfoni diff --git a/Output/PartyModes/Challenge/Languages/Dutch.xml b/Output/PartyModes/Challenge/Languages/nl.xml similarity index 100% rename from Output/PartyModes/Challenge/Languages/Dutch.xml rename to Output/PartyModes/Challenge/Languages/nl.xml diff --git a/Output/PartyModes/Challenge/Languages/Portuguese.xml b/Output/PartyModes/Challenge/Languages/pt.xml similarity index 89% rename from Output/PartyModes/Challenge/Languages/Portuguese.xml rename to Output/PartyModes/Challenge/Languages/pt.xml index 0a25c2fc..5cab563b 100644 --- a/Output/PartyModes/Challenge/Languages/Portuguese.xml +++ b/Output/PartyModes/Challenge/Languages/pt.xml @@ -11,10 +11,13 @@ Sim Não Ronda Seguinte + Músicas Modo Desafio: Configuração Número de Jogadores Número de microfones Número de rondas + Número de "Jokers" + Recarregar os "Jokers" todas as rondas Modo Desafio: Escolher Jogador Escolha Aleatória Modo Desafio: Resumo diff --git a/Output/PartyModes/Challenge/Languages/ru.xml b/Output/PartyModes/Challenge/Languages/ru.xml new file mode 100644 index 00000000..b4949f4d --- /dev/null +++ b/Output/PartyModes/Challenge/Languages/ru.xml @@ -0,0 +1,33 @@ + + + Английский + Режим соревнования + Сыграть несколько раундов соревнований. + Для всех, кому интересны дуэльные бои. + Далее + Назад + Начать + Выход + Да + Нет + Следующий раунд + Песни + Режим испытания: Конфигурация + Количество игроков + Количество микрофонов + Количество раундов + Количество джокеров + Пополняйте джокеры каждый раунд + Режим соревнования: Выбор игрока + Случайный выбор + Режим соревнования: Обзор + Позиция + Имя + Раундов + Побед + Очки пения + Счёт + Вы действительно хотите выйти? + Игрок следующего раунда: + Спеты все раунды! И победителем становится... + diff --git a/Output/PartyModes/Challenge/Languages/Swedish.xml b/Output/PartyModes/Challenge/Languages/sv.xml similarity index 100% rename from Output/PartyModes/Challenge/Languages/Swedish.xml rename to Output/PartyModes/Challenge/Languages/sv.xml diff --git a/Output/PartyModes/Challenge/Languages/Turkish.xml b/Output/PartyModes/Challenge/Languages/tr.xml similarity index 100% rename from Output/PartyModes/Challenge/Languages/Turkish.xml rename to Output/PartyModes/Challenge/Languages/tr.xml diff --git a/Output/PartyModes/TicTacToe/Languages/Asturian.xml b/Output/PartyModes/TicTacToe/Languages/ast.xml similarity index 100% rename from Output/PartyModes/TicTacToe/Languages/Asturian.xml rename to Output/PartyModes/TicTacToe/Languages/ast.xml diff --git a/Output/PartyModes/TicTacToe/Languages/Czech.xml b/Output/PartyModes/TicTacToe/Languages/cs.xml similarity index 86% rename from Output/PartyModes/TicTacToe/Languages/Czech.xml rename to Output/PartyModes/TicTacToe/Languages/cs.xml index a328a32f..a7294248 100644 --- a/Output/PartyModes/TicTacToe/Languages/Czech.xml +++ b/Output/PartyModes/TicTacToe/Languages/cs.xml @@ -13,15 +13,11 @@ Spustit Písně Tým - Seznam skladeb - Skupina - Všechny písně Tic-Tac-Toe: Nastavení Počet hráčů v týmu 1 Počet hráčů v týmu 2 Počet polí - Zdroj písně - Herní režim + Doplnit žolíky každé kolo Tic-Tac-Toe: Výběr hráče Tým 1 Tým 2 diff --git a/Output/PartyModes/TicTacToe/Languages/German.xml b/Output/PartyModes/TicTacToe/Languages/de.xml similarity index 84% rename from Output/PartyModes/TicTacToe/Languages/German.xml rename to Output/PartyModes/TicTacToe/Languages/de.xml index 1413dac7..8839754c 100644 --- a/Output/PartyModes/TicTacToe/Languages/German.xml +++ b/Output/PartyModes/TicTacToe/Languages/de.xml @@ -19,11 +19,9 @@ Anzahl der Felder Joker nach jeder Runde auffüllen Tic-Tac-Toe: Spielerwahl - Ausgewählte Spieler für dieses Team: Team 1 Team 2 Zufällig auswählen - Füge mindestens einen Spieler zu beiden Teams hinzu! / Zum Hinzufügen den Spieleravatar auf die Liste der ausgewählten Spieler ziehen! / Zum Entfernen den Spieleravatar mit rechter Maustaste anklicken! Tic-Tac-Toe Wählt ein Feld aus. Nächster Spieler diff --git a/Output/PartyModes/TicTacToe/Languages/English.xml b/Output/PartyModes/TicTacToe/Languages/en.xml similarity index 100% rename from Output/PartyModes/TicTacToe/Languages/English.xml rename to Output/PartyModes/TicTacToe/Languages/en.xml diff --git a/Output/PartyModes/TicTacToe/Languages/Spanish.xml b/Output/PartyModes/TicTacToe/Languages/es.xml similarity index 85% rename from Output/PartyModes/TicTacToe/Languages/Spanish.xml rename to Output/PartyModes/TicTacToe/Languages/es.xml index 48133d84..1a08cbf8 100644 --- a/Output/PartyModes/TicTacToe/Languages/Spanish.xml +++ b/Output/PartyModes/TicTacToe/Languages/es.xml @@ -13,15 +13,10 @@ Iniciar Canciones Equipo - Lista de reproducción - Categoría - Todas las canciones Ta-Te-Ti: Configuración Nro. de cantantes equipo 1 Nro. de cantantes equipo 2 Nro. de campos - Origen de la canción - Modo de juego Ta-Te-Ti: Selección de cantante Equipo 1 Equiipo 2 diff --git a/Output/PartyModes/TicTacToe/Languages/French.xml b/Output/PartyModes/TicTacToe/Languages/fr.xml similarity index 85% rename from Output/PartyModes/TicTacToe/Languages/French.xml rename to Output/PartyModes/TicTacToe/Languages/fr.xml index 73413bae..40e9dd3c 100644 --- a/Output/PartyModes/TicTacToe/Languages/French.xml +++ b/Output/PartyModes/TicTacToe/Languages/fr.xml @@ -18,12 +18,12 @@ Nombre de joueurs dans l'Equipe 2 Nombre de champs Recharger les jokers a chaque tour - Nombre de jokers - Changement de joueur Tic-Tac-Toe: Choix des joueurs + Joueurs sélectionnés pour cette équipe : Equipe 1 Equipe 2 Sélectionner au hasard + Ajoutez au moins un joueur aux deux équipes ! / Tirez l'avatar d'un joueur vers la liste des joueurs sélectionnés ! / Faites un clic droit sur l'avatar d'un joueur pour le retirer ! Tic-Tac-Toe Choisissez une case. Joueur suivant diff --git a/Output/PartyModes/TicTacToe/Languages/Hungarian.xml b/Output/PartyModes/TicTacToe/Languages/hu.xml similarity index 86% rename from Output/PartyModes/TicTacToe/Languages/Hungarian.xml rename to Output/PartyModes/TicTacToe/Languages/hu.xml index 0f1a8dc8..7802ab6f 100644 --- a/Output/PartyModes/TicTacToe/Languages/Hungarian.xml +++ b/Output/PartyModes/TicTacToe/Languages/hu.xml @@ -13,18 +13,14 @@ Kezdés Dalok Csapat - Dal Lista - Kategória - Összes Dal Tic-Tac-Toe: Beállítások 1. Csapat játékosainak száma 2. Csapat játékosainak száma Mezők száma - Dal-forrás - Játék Mód Tic-Tac-Toe: Válassz Játékost 1. Csapat 2. Csapat + Véletlenszerű választás Tic-Tac-Toe Válassz egy mezőt. Következő Játékos diff --git a/Output/PartyModes/TicTacToe/Languages/Italian.xml b/Output/PartyModes/TicTacToe/Languages/it.xml similarity index 81% rename from Output/PartyModes/TicTacToe/Languages/Italian.xml rename to Output/PartyModes/TicTacToe/Languages/it.xml index f20d59dd..f63f982d 100644 --- a/Output/PartyModes/TicTacToe/Languages/Italian.xml +++ b/Output/PartyModes/TicTacToe/Languages/it.xml @@ -13,15 +13,11 @@ Inizia Canzoni Squadra - Playlist - Categoria - Tutte le canzoni Tris: Configurazione Numero di giocatori della squadra 1 Numero di giocatori della squadra 2 Numero di caselle - Sorgente della Canzone - Modalità di Gioco + Ricarica i giullari ad ogni turno Tris: Scegli il Giocatore Squadra 1 Squadra 2 @@ -31,5 +27,5 @@ Prossimo giocatore Vuoi veramente uscire dal Tris? E il vincitore è... - Non c'è nessun vincitore in questo turno... + Non c\'è nessun vincitore in questo turno... diff --git a/Output/PartyModes/TicTacToe/Languages/Dutch.xml b/Output/PartyModes/TicTacToe/Languages/nl.xml similarity index 86% rename from Output/PartyModes/TicTacToe/Languages/Dutch.xml rename to Output/PartyModes/TicTacToe/Languages/nl.xml index cdac1e9a..1d3f7182 100644 --- a/Output/PartyModes/TicTacToe/Languages/Dutch.xml +++ b/Output/PartyModes/TicTacToe/Languages/nl.xml @@ -13,15 +13,10 @@ Start Liedjes Team - Afspeellijst - Categorie - Alle liedjes Drie-op-een-rij: configuratie Aantal spelers in team 1 Aantal spelers in team 2 Aantal vakjes - Liedjesbron - Spelmodus Drie-op-een-rij: Kies speler Team 1 Team 2 diff --git a/Output/PartyModes/TicTacToe/Languages/Portuguese.xml b/Output/PartyModes/TicTacToe/Languages/pt.xml similarity index 85% rename from Output/PartyModes/TicTacToe/Languages/Portuguese.xml rename to Output/PartyModes/TicTacToe/Languages/pt.xml index 42da10a3..c796c00f 100644 --- a/Output/PartyModes/TicTacToe/Languages/Portuguese.xml +++ b/Output/PartyModes/TicTacToe/Languages/pt.xml @@ -13,15 +13,11 @@ Iniciar Músicas Equipa - Lista de Reprodução - Categoria - Todas as Músicas Jogo do Galo: Configuração Número de Jogadores na Equipa 1 Número de Jogadores na Equipa 2 Número de Campos - Origem da Música - Modo do Jogo + Recarregar os \"Jokers\" todas as rondas Jogo do Galo: Esolher Jogador Equipa 1 Equipa 2 diff --git a/Output/PartyModes/TicTacToe/Languages/ru.xml b/Output/PartyModes/TicTacToe/Languages/ru.xml new file mode 100644 index 00000000..8ba288bf --- /dev/null +++ b/Output/PartyModes/TicTacToe/Languages/ru.xml @@ -0,0 +1,31 @@ + + + Английский + Крестики-нолики + Играйте в Крестики-нолики особым образом + Веселые раунды со стратегией, удачей и навыками + Далее + Назад + Начать + Выход + Да + Нет + Старт + Песни + Команда + Крестики-нолики: Конфигурация + Номер игрока из команды 1 + Номер игрока из команды 2 + Количество полей + Пополняйте джокеры каждый раунд + Крестики-нолики: Выберите игрока + Команда 1 + Команда 2 + Случайный выбор + Крестики-нолики + Выберите поле. + Следующий игрок + Действительно выйти из Крестики-нолики? + И победителем становится... + В этом раунде нет победителя... + diff --git a/Output/PartyModes/TicTacToe/Languages/Swedish.xml b/Output/PartyModes/TicTacToe/Languages/sv.xml similarity index 100% rename from Output/PartyModes/TicTacToe/Languages/Swedish.xml rename to Output/PartyModes/TicTacToe/Languages/sv.xml diff --git a/Output/PartyModes/TicTacToe/Languages/Turkish.xml b/Output/PartyModes/TicTacToe/Languages/tr.xml similarity index 85% rename from Output/PartyModes/TicTacToe/Languages/Turkish.xml rename to Output/PartyModes/TicTacToe/Languages/tr.xml index 9af5e420..eb5e284d 100644 --- a/Output/PartyModes/TicTacToe/Languages/Turkish.xml +++ b/Output/PartyModes/TicTacToe/Languages/tr.xml @@ -13,15 +13,10 @@ Başla Şarkılar Takım - Çalma Listesi - Kategori - Tüm Şarkılar XOX: Yapılandırma 1. takımdaki oyuncu sayısı 2. takımdaki oyuncu sayısı Bölge sayısı - Şarkı Kaynağı - Oyun Modu XOX: Oyuncu Seç 1. Takım 2. Takım diff --git a/Tests/VocaluxeLib/XML/CXmlSerializerTest.cs b/Tests/VocaluxeLib/XML/CXmlSerializerTest.cs index 8c027489..ca381abc 100644 --- a/Tests/VocaluxeLib/XML/CXmlSerializerTest.cs +++ b/Tests/VocaluxeLib/XML/CXmlSerializerTest.cs @@ -371,6 +371,38 @@ namespace Tests.VocaluxeLib.XML ", newXml); } + [Test] + public void TestEscapedValues() + { + const string s = _Head + @" + Foo\'Bar + + Foo\'Bar + +"; + _AssertSerDeserMatch(s); + var xml = new CXmlDeserializer(new CXmlErrorHandler(exception => { })); + SUnescaping foo = xml.DeserializeString(@""); + Assert.AreEqual(foo.S, "Foo\'Bar"); + Assert.AreEqual(foo.Sub.S, "Foo\'Bar"); + } + + [Test] + public void TestUnescapedValues() + { + const string s = _Head + @" + Foo\'Bar + + Foo\'Bar + +"; + _AssertSerDeserMatch(s); + var xml = new CXmlDeserializer(new CXmlErrorHandler(exception => { }), true); + SUnescaping foo = xml.DeserializeString(@""); + Assert.AreEqual(foo.S, "Foo'Bar"); + Assert.AreEqual(foo.Sub.S, "Foo'Bar"); + } + [Test] public void TestRealFiles([Values(typeof(SThemeCover), typeof(CConfig.SConfig), /*typeof(SThemeScreen),*/ typeof(SDefaultFonts), typeof(SSkin), typeof(STheme), typeof(Dictionary))] Type type) { @@ -491,6 +523,20 @@ namespace Tests.VocaluxeLib.XML public SDefaultSub Sub; } + private struct SUnescaping + { + [DefaultValue("Foo\'Bar")] + public string S; + public SUnescapingSub Sub; + } + + private struct SUnescapingSub + { + [DefaultValue("Foo\'Bar")] + public string S; + } + + #pragma warning restore 169 #pragma warning restore 649 diff --git a/Vocaluxe/Base/CLanguage.cs b/Vocaluxe/Base/CLanguage.cs index a7f6f1ec..e1a30c41 100644 --- a/Vocaluxe/Base/CLanguage.cs +++ b/Vocaluxe/Base/CLanguage.cs @@ -161,7 +161,7 @@ namespace Vocaluxe.Base private static bool _LoadLanguageEntries(string filePath, out Dictionary texts) { - var deser = new CXmlDeserializer(); + var deser = new CXmlDeserializer(true); try { texts = deser.Deserialize>(filePath); diff --git a/Vocaluxe/Website/locales/de.json b/Vocaluxe/Website/locales/de.json index 1464ca30..4d9812c3 100644 --- a/Vocaluxe/Website/locales/de.json +++ b/Vocaluxe/Website/locales/de.json @@ -15,7 +15,7 @@ "mainPageSelectProfile": "Profile", "mainPageSelectProfileDesc": "Listet alle Profile auf", "mainPageTakePhotoLink": "Nehme Foto auf", - "mainPageTakePhotoLinkDesc": "Nimmt ein Foto auf und zeige es am Ende der Runde an", + "mainPageTakePhotoLinkDesc": "Nimmt ein Foto auf und zeigt es am ende der Runde an", "mainPageKeyboard": "Tastatur", "mainPageKeyboardDesc": "Sende Tastatureingaben", "mainPageSelectUserAdmin": "Administration", diff --git a/Vocaluxe/Website/locales/es.json b/Vocaluxe/Website/locales/es.json index ff33aef1..5c3f4113 100644 --- a/Vocaluxe/Website/locales/es.json +++ b/Vocaluxe/Website/locales/es.json @@ -77,10 +77,10 @@ "discoverConnectButton": "Conectar", "Checking...": "Comprobando...", "timeout": "Tiempo de espera", - "keyboardButtonShift": "Shift", - "keyboardButtonAlt": "Alt", + "keyboardButtonShift": "Shift", + "keyboardButtonAlt": "Alt", "keyboardButtonCtrl": "Control", "keyboardButtonBackspace": "Retroceso", "keyboardAutoSend": "Auto-enviar teclas.", - "keyboardButtonSend": "Mandar" + "keyboardButtonSend": "Mandar" } \ No newline at end of file diff --git a/Vocaluxe/Website/locales/Hungarian.json b/Vocaluxe/Website/locales/hu.json similarity index 97% rename from Vocaluxe/Website/locales/Hungarian.json rename to Vocaluxe/Website/locales/hu.json index a817b65a..a4d4af4a 100644 --- a/Vocaluxe/Website/locales/Hungarian.json +++ b/Vocaluxe/Website/locales/hu.json @@ -77,10 +77,10 @@ "discoverConnectButton": "Kapcsolódás", "Checking...": "Ellenőrzés...", "timeout": "Időtúllépés", - "keyboardButtonShift": "Shift", - "keyboardButtonAlt": "Alt", + "keyboardButtonShift": "Shift", + "keyboardButtonAlt": "Alt", "keyboardButtonCtrl": "Ctrl", "keyboardButtonBackspace": "Backspace", "keyboardAutoSend": "Billentyűleütések automatikus küldése", - "keyboardButtonSend": "Küldés" + "keyboardButtonSend": "Küldés" } \ No newline at end of file diff --git a/Vocaluxe/Website/locales/it.json b/Vocaluxe/Website/locales/it.json index c055b460..399d361b 100644 --- a/Vocaluxe/Website/locales/it.json +++ b/Vocaluxe/Website/locales/it.json @@ -81,6 +81,6 @@ "keyboardButtonAlt": "Alt", "keyboardButtonCtrl": "Control", "keyboardButtonBackspace": "Backspace", - "keyboardAutoSend": "Auto send keys", - "keyboardButtonSend": "Send" + "keyboardAutoSend": "Tasti auto invio", + "keyboardButtonSend": "Invia" } \ No newline at end of file diff --git a/Vocaluxe/Website/locales/Polish.json b/Vocaluxe/Website/locales/pl.json similarity index 100% rename from Vocaluxe/Website/locales/Polish.json rename to Vocaluxe/Website/locales/pl.json diff --git a/Vocaluxe/Website/locales/ru.json b/Vocaluxe/Website/locales/ru.json new file mode 100644 index 00000000..cd5301fa --- /dev/null +++ b/Vocaluxe/Website/locales/ru.json @@ -0,0 +1,86 @@ +{ + "loginName": "Пользователь:", + "loginPassword": "Пароль:", + "loginButton": "Логин", + "registerButton": "Создать профиль", + "discoverReadQrButton": "Сканировать QRкод", + "mainPageYourProfileLink": "Ваш профиль", + "mainPageYourProfileLinkDesc": "Редактировать ваш профиль", + "mainPageCurrentSongLink": "Текущая песня", + "mainPageCurrentSongLinkDesc": "Отображение информации о текущей песне", + "mainPageSelectSong": "Все песни", + "mainPageSelectSongDesc": "Список всех доступных песен", + "mainPageSelectPlaylist": "Все плейлисты", + "mainPageSelectPlaylistDesc": "Список всех плейлистов", + "mainPageSelectProfile": "Профили", + "mainPageSelectProfileDesc": "Показать все профили", + "mainPageTakePhotoLink": "Выбрать Фото", + "mainPageTakePhotoLinkDesc": "Выбрать фотографию и отображать ее в конце текущего раунда", + "mainPageKeyboard": "Клавиатура", + "mainPageKeyboardDesc": "Отправить ключи", + "mainPageSelectUserAdmin": "Администрирование", + "mainPageSelectUserAdminDesc": "Настроить права пользователя", + "mainPageLogoutLink": "Выход из системы", + "mainPageLogoutLinkDesc": "Закрыть сессию", + "selectProfileHeader": "Все профили", + "displayProfileHeader": "Профиль", + "displayProfileName": "Имя:", + "displayProfilePlayerType": "Тип Игрока:", + "displayProfilePlayerTypeNormal": "Обычный", + "displayProfilePlayerTypeGuest": "Гость", + "displayProfilePlayerDifficulty": "Сложность:", + "displayProfilePlayerDifficultyEasy": "Легко", + "displayProfilePlayerDifficultyNormal": "Нормально", + "displayProfilePlayerDifficultyHard": "Сложно", + "displayProfilePlayerPassword": "Новый Пароль:", + "displayProfilePlayerSaveButton": "Сохранить и загрузить", + "displaySongHeader": "Нет текущей песни", + "displaySongArtist": "Артист:", + "displaySongGenre": "Жанр:", + "displaySongYear": "Год:", + "displaySongLanguage": "Язык:", + "displaySongIsDuet": "Дуэт:", + "popupVideoClose": "Закрыть", + "selectSongHeader": "Все песни", + "keyboardHeader": "Клавиатура", + "keyboardButtonUp": "вверх", + "keyboardButtonLeft": "влево", + "keyboardButtonRight": "вправо", + "keyboardButtonDown": "вниз", + "keyboardButtonEscape": "escape", + "keyboardButtonTab": "tab", + "keyboardButtonReturn": "return", + "keyboardButtonKeys": "Чтобы отправить другие ключи введите здесь:", + "selectUserAdminHeader": "Все профили", + "displayUserAdminHeader": "Профиль", + "displayUserAdminContentSaveButton": "Сохранить", + "selectPlaylistHeader": "Выборать из плейлиста", + "displayPlaylistHeader": "Плейлист", + "displayPlaylistSaveButton": "Сохранить", + "selectPlaylistAddPlaylistButton": "Добавить", + "Loading (external)...": "Загрузка (внешняя)...", + "Loading...": "Загрузка...", + "Creating...": "Создание...", + "Error...": "Ошибка...", + "No connection": "Нет соединения", + "No session": "Нет сеанса", + "Uploading photo...": "Загрузка фото..", + "Getting current song...": "Получение текущей песни...", + "Login...": "Логин...", + "Creating profile...": "Создание профиля...", + "This is not a valid name.": "Это неверное имя.", + "Uploading profile...": "Загрузка профиля...", + "songs": "песни", + "YourName": "Ваше имя", + "discoverConnectHeader": "Подключиться к серверу", + "discoverConnectServerAddress": "Адрес сервера:", + "discoverConnectButton": "Соединение", + "Checking...": "Проверка...", + "timeout": "Время ожидания", + "keyboardButtonShift": "Shift", + "keyboardButtonAlt": "Alt", + "keyboardButtonCtrl": "Control", + "keyboardButtonBackspace": "Backspace", + "keyboardAutoSend": "Автоматическая отправка ключей", + "keyboardButtonSend": "Отправить" +} \ No newline at end of file diff --git a/Vocaluxe/Website/locales/tr.json b/Vocaluxe/Website/locales/tr.json index 527a3b48..189d53ac 100644 --- a/Vocaluxe/Website/locales/tr.json +++ b/Vocaluxe/Website/locales/tr.json @@ -77,10 +77,10 @@ "discoverConnectButton": "Bağlan", "Checking...": "Kontrol ediliyor...", "timeout": "Zaman aşımı", - "keyboardButtonShift": "Shift", - "keyboardButtonAlt": "Alt", + "keyboardButtonShift": "Shift", + "keyboardButtonAlt": "Alt", "keyboardButtonCtrl": "Control", "keyboardButtonBackspace": "Backspace", "keyboardAutoSend": "Auto send keys", - "keyboardButtonSend": "Send" + "keyboardButtonSend": "Send" } \ No newline at end of file diff --git a/VocaluxeLib/Xml/CXmlDeserializer.cs b/VocaluxeLib/Xml/CXmlDeserializer.cs index 5a415397..c835dff4 100644 --- a/VocaluxeLib/Xml/CXmlDeserializer.cs +++ b/VocaluxeLib/Xml/CXmlDeserializer.cs @@ -23,6 +23,7 @@ using System.IO; using System.Linq; using System.Reflection; using System.Text; +using System.Text.RegularExpressions; using System.Xml; using VocaluxeLib.Log; @@ -179,14 +180,28 @@ namespace VocaluxeLib.Xml } private readonly IXmlErrorHandler _ErrorHandler; + private readonly bool _UnescapeStringValues; + + /// + /// Creates a new XmlDeserializer + /// + /// Set to true if string values should be unescaped during reading + public CXmlDeserializer(bool unescapeStringValues) + { + _ErrorHandler = new CXmlDefaultErrorHandler(); + _UnescapeStringValues = unescapeStringValues; + } + /// /// Creates a new XmlDeserializer /// /// Class to be used for error callbacks, if not given a default handler will be used which throws errors and logs warnings - public CXmlDeserializer(IXmlErrorHandler errorHandler = null) + /// Set to true if string values should be unescaped during reading + public CXmlDeserializer(IXmlErrorHandler errorHandler = null, bool unescapeStringValues = false) { _ErrorHandler = errorHandler ?? new CXmlDefaultErrorHandler(); + _UnescapeStringValues = unescapeStringValues; } /// @@ -216,8 +231,15 @@ namespace VocaluxeLib.Xml } if (type == typeof(Guid)) return Guid.Parse(node.InnerText); - if (type == typeof(string)) - return node == null ? null : node.InnerText; + if (type == typeof(string)) { + if(node == null) { + return null; + } else if(_UnescapeStringValues) { + return Regex.Unescape(node.InnerText); + } else { + return node.InnerText; + } + } if (type.IsPrimitive) return _GetPrimitiveValue(node, type) ?? value; if (type.IsNullable()) diff --git a/transifex.yaml b/transifex.yaml new file mode 100644 index 00000000..51a3a67d --- /dev/null +++ b/transifex.yaml @@ -0,0 +1,24 @@ +git: + filters: + - filter_type: file + file_format: ANDROID + source_file: Output/Languages/en.xml + source_language: en + translation_files_expression: 'Output/Languages/.xml' + - filter_type: file + file_format: ANDROID + source_file: Output/PartyModes/Challenge/Languages/en.xml + source_language: en + translation_files_expression: 'Output/PartyModes/Challenge/Languages/.xml' + - filter_type: file + file_format: ANDROID + source_file: Output/PartyModes/TicTacToe/Languages/en.xml + source_language: en + translation_files_expression: 'Output/PartyModes/TicTacToe/Languages/.xml' + - filter_type: file + file_format: KEYVALUEJSON + source_file: Vocaluxe/Website/locales/en.json + source_language: en + translation_files_expression: 'Vocaluxe/Website/locales/.json' + settings: + pr_branch_name: translations/ \ No newline at end of file From 16bb07404a819676c90d32befe20f09c794092e3 Mon Sep 17 00:00:00 2001 From: "transifex-integration[bot]" <43880903+transifex-integration[bot]@users.noreply.github.com> Date: Thu, 28 Dec 2023 21:07:19 +0100 Subject: [PATCH 02/13] Updates for project Vocaluxe and language de (#662) * Translate Vocaluxe/Website/locales/en.json in de 100% translated source file: 'Vocaluxe/Website/locales/en.json' on 'de'. * Translate en.xml in de 90% of minimum 90% translated source file: 'en.xml' on 'de'. Sync of partially translated files: untranslated content is included with an empty translation or source language content depending on file format * Translate en.xml in de 93% of minimum 90% translated source file: 'en.xml' on 'de'. Sync of partially translated files: untranslated content is included with an empty translation or source language content depending on file format * Translate en.xml in de 96% of minimum 90% translated source file: 'en.xml' on 'de'. Sync of partially translated files: untranslated content is included with an empty translation or source language content depending on file format * Translate en.xml in de 100% translated source file: 'en.xml' on 'de'. --------- Co-authored-by: transifex-integration[bot] <43880903+transifex-integration[bot]@users.noreply.github.com> --- Output/PartyModes/TicTacToe/Languages/de.xml | 4 ++++ Vocaluxe/Website/locales/de.json | 6 +++--- 2 files changed, 7 insertions(+), 3 deletions(-) diff --git a/Output/PartyModes/TicTacToe/Languages/de.xml b/Output/PartyModes/TicTacToe/Languages/de.xml index 8839754c..57c68b5f 100644 --- a/Output/PartyModes/TicTacToe/Languages/de.xml +++ b/Output/PartyModes/TicTacToe/Languages/de.xml @@ -18,10 +18,14 @@ Anzahl der Spieler in Team 2 Anzahl der Felder Joker nach jeder Runde auffüllen + Joker-Anzahl + Spieler wechseln Tic-Tac-Toe: Spielerwahl + Ausgewählte Spieler für dieses Team: Team 1 Team 2 Zufällig auswählen + Füge mindestens einen Spieler zu beiden Teams hinzu! / Zum Hinzufügen den Spieleravatar auf die Liste der ausgewählten Spieler ziehen! / Zum Entfernen den Spieleravatar mit rechter Maustaste anklicken! Tic-Tac-Toe Wählt ein Feld aus. Nächster Spieler diff --git a/Vocaluxe/Website/locales/de.json b/Vocaluxe/Website/locales/de.json index 4d9812c3..89b2f705 100644 --- a/Vocaluxe/Website/locales/de.json +++ b/Vocaluxe/Website/locales/de.json @@ -77,10 +77,10 @@ "discoverConnectButton": "Verbinden", "Checking...": "Prüfen...", "timeout": "Zeitüberschreitung", - "keyboardButtonShift": "Shift", - "keyboardButtonAlt": "Alt", + "keyboardButtonShift": "Shift", + "keyboardButtonAlt": "Alt", "keyboardButtonCtrl": "Steuerung", "keyboardButtonBackspace": "Backspace", "keyboardAutoSend": "Automatisch Tasten senden", - "keyboardButtonSend": "Senden" + "keyboardButtonSend": "Senden" } \ No newline at end of file From f7e60110b7566412fb464ca3a41956606db9a89b Mon Sep 17 00:00:00 2001 From: "transifex-integration[bot]" <43880903+transifex-integration[bot]@users.noreply.github.com> Date: Thu, 28 Dec 2023 21:07:39 +0100 Subject: [PATCH 03/13] Translate Vocaluxe/Website/locales/en.json in cs (#663) 100% translated source file: 'Vocaluxe/Website/locales/en.json' on 'cs'. Co-authored-by: transifex-integration[bot] <43880903+transifex-integration[bot]@users.noreply.github.com> --- Vocaluxe/Website/locales/cs.json | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/Vocaluxe/Website/locales/cs.json b/Vocaluxe/Website/locales/cs.json index 3cc5e9c2..e300efc1 100644 --- a/Vocaluxe/Website/locales/cs.json +++ b/Vocaluxe/Website/locales/cs.json @@ -77,10 +77,10 @@ "discoverConnectButton": "Připojit se", "Checking...": "Ověřuje se...", "timeout": "Překročení časového omezení", - "keyboardButtonShift": "Shift", - "keyboardButtonAlt": "Alt", + "keyboardButtonShift": "Shift", + "keyboardButtonAlt": "Alt", "keyboardButtonCtrl": "Ctrl", "keyboardButtonBackspace": "Backspace", "keyboardAutoSend": "Poslat klávesy automaticky", - "keyboardButtonSend": "Poslat" + "keyboardButtonSend": "Poslat" } \ No newline at end of file From dccfebcd728959a3dc70f1d7e153ab4e06ff133a Mon Sep 17 00:00:00 2001 From: "transifex-integration[bot]" <43880903+transifex-integration[bot]@users.noreply.github.com> Date: Thu, 28 Dec 2023 21:07:50 +0100 Subject: [PATCH 04/13] Translate Vocaluxe/Website/locales/en.json in sv (#661) 100% translated source file: 'Vocaluxe/Website/locales/en.json' on 'sv'. Co-authored-by: transifex-integration[bot] <43880903+transifex-integration[bot]@users.noreply.github.com> --- Vocaluxe/Website/locales/sv.json | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/Vocaluxe/Website/locales/sv.json b/Vocaluxe/Website/locales/sv.json index 53203293..98427174 100644 --- a/Vocaluxe/Website/locales/sv.json +++ b/Vocaluxe/Website/locales/sv.json @@ -77,10 +77,10 @@ "discoverConnectButton": "Anslut", "Checking...": "Kontrollerar...", "timeout": "Timeout", - "keyboardButtonShift": "Skift", - "keyboardButtonAlt": "Alt", + "keyboardButtonShift": "Skift", + "keyboardButtonAlt": "Alt", "keyboardButtonCtrl": "Ctrl", "keyboardButtonBackspace": "Backsteg", "keyboardAutoSend": "Autoskicka knappar", - "keyboardButtonSend": "Skicka" + "keyboardButtonSend": "Skicka" } \ No newline at end of file From 806b7a884e165e3240751d0f49c696bb6d9b2883 Mon Sep 17 00:00:00 2001 From: "transifex-integration[bot]" <43880903+transifex-integration[bot]@users.noreply.github.com> Date: Thu, 28 Dec 2023 21:08:01 +0100 Subject: [PATCH 05/13] Translate Vocaluxe/Website/locales/en.json in it (#660) 100% translated source file: 'Vocaluxe/Website/locales/en.json' on 'it'. Co-authored-by: transifex-integration[bot] <43880903+transifex-integration[bot]@users.noreply.github.com> --- Vocaluxe/Website/locales/it.json | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/Vocaluxe/Website/locales/it.json b/Vocaluxe/Website/locales/it.json index 399d361b..906aafea 100644 --- a/Vocaluxe/Website/locales/it.json +++ b/Vocaluxe/Website/locales/it.json @@ -77,10 +77,10 @@ "discoverConnectButton": "Connetti", "Checking...": "Controllo...", "timeout": "Timeout", - "keyboardButtonShift": "Shift", - "keyboardButtonAlt": "Alt", + "keyboardButtonShift": "Shift", + "keyboardButtonAlt": "Alt", "keyboardButtonCtrl": "Control", "keyboardButtonBackspace": "Backspace", "keyboardAutoSend": "Tasti auto invio", - "keyboardButtonSend": "Invia" + "keyboardButtonSend": "Invia" } \ No newline at end of file From 2c006fad24d150e95773b99935877420bc3da48e Mon Sep 17 00:00:00 2001 From: "transifex-integration[bot]" <43880903+transifex-integration[bot]@users.noreply.github.com> Date: Thu, 28 Dec 2023 21:08:12 +0100 Subject: [PATCH 06/13] Translate Vocaluxe/Website/locales/en.json in pt (#659) 100% translated source file: 'Vocaluxe/Website/locales/en.json' on 'pt'. Co-authored-by: transifex-integration[bot] <43880903+transifex-integration[bot]@users.noreply.github.com> --- Vocaluxe/Website/locales/pt.json | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/Vocaluxe/Website/locales/pt.json b/Vocaluxe/Website/locales/pt.json index cfdff899..fc024f99 100644 --- a/Vocaluxe/Website/locales/pt.json +++ b/Vocaluxe/Website/locales/pt.json @@ -77,10 +77,10 @@ "discoverConnectButton": "Ligar", "Checking...": "A verificar...", "timeout": "Tempo de espera excedido", - "keyboardButtonShift": "Shift", - "keyboardButtonAlt": "Alt", + "keyboardButtonShift": "Shift", + "keyboardButtonAlt": "Alt", "keyboardButtonCtrl": "Control", "keyboardButtonBackspace": "Backspace", "keyboardAutoSend": "Enviar teclas automáticamente", - "keyboardButtonSend": "Enviar" + "keyboardButtonSend": "Enviar" } \ No newline at end of file From fa58e6e1de5b4605e78f3569c0899d6df60f1719 Mon Sep 17 00:00:00 2001 From: "transifex-integration[bot]" <43880903+transifex-integration[bot]@users.noreply.github.com> Date: Thu, 28 Dec 2023 21:08:22 +0100 Subject: [PATCH 07/13] Translate Vocaluxe/Website/locales/en.json in nl (#658) 100% translated source file: 'Vocaluxe/Website/locales/en.json' on 'nl'. Co-authored-by: transifex-integration[bot] <43880903+transifex-integration[bot]@users.noreply.github.com> --- Vocaluxe/Website/locales/nl.json | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/Vocaluxe/Website/locales/nl.json b/Vocaluxe/Website/locales/nl.json index aeee54ba..5642fbca 100644 --- a/Vocaluxe/Website/locales/nl.json +++ b/Vocaluxe/Website/locales/nl.json @@ -77,10 +77,10 @@ "discoverConnectButton": "Verbinden", "Checking...": "Controleren...", "timeout": "Timeout", - "keyboardButtonShift": "Shift", - "keyboardButtonAlt": "Alt", + "keyboardButtonShift": "Shift", + "keyboardButtonAlt": "Alt", "keyboardButtonCtrl": "Control", "keyboardButtonBackspace": "Backspace", "keyboardAutoSend": "Stuur toetsen automatisch", - "keyboardButtonSend": "Verzenden" + "keyboardButtonSend": "Verzenden" } \ No newline at end of file From c8188fe3e8ba60197eac0bb8f8bdf456638fc860 Mon Sep 17 00:00:00 2001 From: "transifex-integration[bot]" <43880903+transifex-integration[bot]@users.noreply.github.com> Date: Thu, 28 Dec 2023 21:08:34 +0100 Subject: [PATCH 08/13] Translate Vocaluxe/Website/locales/en.json in fr (#657) 100% translated source file: 'Vocaluxe/Website/locales/en.json' on 'fr'. Co-authored-by: transifex-integration[bot] <43880903+transifex-integration[bot]@users.noreply.github.com> --- Vocaluxe/Website/locales/fr.json | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/Vocaluxe/Website/locales/fr.json b/Vocaluxe/Website/locales/fr.json index 4ab27121..44a3241d 100644 --- a/Vocaluxe/Website/locales/fr.json +++ b/Vocaluxe/Website/locales/fr.json @@ -77,10 +77,10 @@ "discoverConnectButton": "Connecter", "Checking...": "Vérification", "timeout": "Temps dépassé", - "keyboardButtonShift": "Maj.", - "keyboardButtonAlt": "Alt", + "keyboardButtonShift": "Maj.", + "keyboardButtonAlt": "Alt", "keyboardButtonCtrl": "Controle", "keyboardButtonBackspace": "Retour", "keyboardAutoSend": "Envoyer la saisie automatiquement", - "keyboardButtonSend": "Envoyer" + "keyboardButtonSend": "Envoyer" } \ No newline at end of file From e8bba399585bd709220fb78a9734500f5b96b3a2 Mon Sep 17 00:00:00 2001 From: "transifex-integration[bot]" <43880903+transifex-integration[bot]@users.noreply.github.com> Date: Fri, 29 Dec 2023 06:56:28 +0100 Subject: [PATCH 09/13] Updates for project Vocaluxe and language fr (#665) * Translate en.xml in fr 93% of minimum 90% translated source file: 'en.xml' on 'fr'. Sync of partially translated files: untranslated content is included with an empty translation or source language content depending on file format * Translate en.xml in fr 93% of minimum 90% translated source file: 'en.xml' on 'fr'. Sync of partially translated files: untranslated content is included with an empty translation or source language content depending on file format * Translate en.xml in fr 96% of minimum 90% translated source file: 'en.xml' on 'fr'. Sync of partially translated files: untranslated content is included with an empty translation or source language content depending on file format * Translate en.xml in fr 100% translated source file: 'en.xml' on 'fr'. * Translate en.xml in fr 100% translated source file: 'en.xml' on 'fr'. --------- Co-authored-by: transifex-integration[bot] <43880903+transifex-integration[bot]@users.noreply.github.com> --- Output/PartyModes/TicTacToe/Languages/fr.xml | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/Output/PartyModes/TicTacToe/Languages/fr.xml b/Output/PartyModes/TicTacToe/Languages/fr.xml index 40e9dd3c..b4c6f24d 100644 --- a/Output/PartyModes/TicTacToe/Languages/fr.xml +++ b/Output/PartyModes/TicTacToe/Languages/fr.xml @@ -1,8 +1,8 @@ Français - Tic-Tac-Toe - Jouez au Tic-Tac-Toe d'une nouvelle façon + Morpion + Jouez au Morpion d\'une nouvelle façon Des matchs amusants alliant stratégie, gains et compétences Suivant Retour @@ -14,10 +14,12 @@ Chansons Equipe Tic-Tac-Toe: Configuration - Nombre de joueurs dans l'Equipe 1 - Nombre de joueurs dans l'Equipe 2 + Nombre de joueurs dans l\'Équipe 1 + Nombre de joueurs dans l\'Équipe 2 Nombre de champs Recharger les jokers a chaque tour + Nombre de jokers + Changer de joueur Tic-Tac-Toe: Choix des joueurs Joueurs sélectionnés pour cette équipe : Equipe 1 From 456fbe136b0f690af676d166ebc961ddff245e29 Mon Sep 17 00:00:00 2001 From: "transifex-integration[bot]" <43880903+transifex-integration[bot]@users.noreply.github.com> Date: Fri, 29 Dec 2023 06:56:41 +0100 Subject: [PATCH 10/13] Updates for project Vocaluxe and language ru (#664) * Translate en.xml in ru 100% translated source file: 'en.xml' on 'ru'. * Translate en.xml in ru 90% of minimum 90% translated source file: 'en.xml' on 'ru'. Sync of partially translated files: untranslated content is included with an empty translation or source language content depending on file format * Translate en.xml in ru 93% of minimum 90% translated source file: 'en.xml' on 'ru'. Sync of partially translated files: untranslated content is included with an empty translation or source language content depending on file format * Translate en.xml in ru 96% of minimum 90% translated source file: 'en.xml' on 'ru'. Sync of partially translated files: untranslated content is included with an empty translation or source language content depending on file format * Translate Vocaluxe/Website/locales/en.json in ru 100% translated source file: 'Vocaluxe/Website/locales/en.json' on 'ru'. * Translate Output/Languages/en.xml in ru 100% translated source file: 'Output/Languages/en.xml' on 'ru'. * Translate Output/Languages/en.xml in ru 100% translated source file: 'Output/Languages/en.xml' on 'ru'. --------- Co-authored-by: transifex-integration[bot] <43880903+transifex-integration[bot]@users.noreply.github.com> --- Output/Languages/ru.xml | 4 ++-- Output/PartyModes/Challenge/Languages/ru.xml | 2 +- Output/PartyModes/TicTacToe/Languages/ru.xml | 5 ++++- Vocaluxe/Website/locales/ru.json | 2 +- 4 files changed, 8 insertions(+), 5 deletions(-) diff --git a/Output/Languages/ru.xml b/Output/Languages/ru.xml index 8dced1ed..9695f746 100644 --- a/Output/Languages/ru.xml +++ b/Output/Languages/ru.xml @@ -10,7 +10,7 @@ Аудиопотоки Видеопотоки Текстуры - Тонус + ToneAbs Макс. громкость Загруженные песни Мышь @@ -81,7 +81,7 @@ Список всех Список лучших Собственная музыка и фоновая музыка - Нет собственной музыки + Без собственной музыки Только собственная музыка Только выбранная песня Все diff --git a/Output/PartyModes/Challenge/Languages/ru.xml b/Output/PartyModes/Challenge/Languages/ru.xml index b4949f4d..00e55d30 100644 --- a/Output/PartyModes/Challenge/Languages/ru.xml +++ b/Output/PartyModes/Challenge/Languages/ru.xml @@ -1,6 +1,6 @@ - Английский + Русский Режим соревнования Сыграть несколько раундов соревнований. Для всех, кому интересны дуэльные бои. diff --git a/Output/PartyModes/TicTacToe/Languages/ru.xml b/Output/PartyModes/TicTacToe/Languages/ru.xml index 8ba288bf..5879a215 100644 --- a/Output/PartyModes/TicTacToe/Languages/ru.xml +++ b/Output/PartyModes/TicTacToe/Languages/ru.xml @@ -1,6 +1,6 @@ - Английский + Русский Крестики-нолики Играйте в Крестики-нолики особым образом Веселые раунды со стратегией, удачей и навыками @@ -18,7 +18,10 @@ Номер игрока из команды 2 Количество полей Пополняйте джокеры каждый раунд + Количество джокеров + Сменить игрока Крестики-нолики: Выберите игрока + Выбранные игроки для этой команды: Команда 1 Команда 2 Случайный выбор diff --git a/Vocaluxe/Website/locales/ru.json b/Vocaluxe/Website/locales/ru.json index cd5301fa..38f163ae 100644 --- a/Vocaluxe/Website/locales/ru.json +++ b/Vocaluxe/Website/locales/ru.json @@ -3,7 +3,7 @@ "loginPassword": "Пароль:", "loginButton": "Логин", "registerButton": "Создать профиль", - "discoverReadQrButton": "Сканировать QRкод", + "discoverReadQrButton": "Сканировать QR-код", "mainPageYourProfileLink": "Ваш профиль", "mainPageYourProfileLinkDesc": "Редактировать ваш профиль", "mainPageCurrentSongLink": "Текущая песня", From bad9ee304b8c4cfa374ff7ab0b8cd52132b1f3dd Mon Sep 17 00:00:00 2001 From: "transifex-integration[bot]" <43880903+transifex-integration[bot]@users.noreply.github.com> Date: Fri, 29 Dec 2023 10:27:02 +0100 Subject: [PATCH 11/13] Updates for project Vocaluxe and language cs (#666) * Translate Output/Languages/en.xml in cs 97% of minimum 90% translated source file: 'Output/Languages/en.xml' on 'cs'. Sync of partially translated files: untranslated content is included with an empty translation or source language content depending on file format * Translate Output/Languages/en.xml in cs 97% of minimum 90% translated source file: 'Output/Languages/en.xml' on 'cs'. Sync of partially translated files: untranslated content is included with an empty translation or source language content depending on file format * Translate Output/Languages/en.xml in cs 97% of minimum 90% translated source file: 'Output/Languages/en.xml' on 'cs'. Sync of partially translated files: untranslated content is included with an empty translation or source language content depending on file format * Translate Output/Languages/en.xml in cs 98% of minimum 90% translated source file: 'Output/Languages/en.xml' on 'cs'. Sync of partially translated files: untranslated content is included with an empty translation or source language content depending on file format * Translate Output/Languages/en.xml in cs 98% of minimum 90% translated source file: 'Output/Languages/en.xml' on 'cs'. Sync of partially translated files: untranslated content is included with an empty translation or source language content depending on file format * Translate Output/Languages/en.xml in cs 98% of minimum 90% translated source file: 'Output/Languages/en.xml' on 'cs'. Sync of partially translated files: untranslated content is included with an empty translation or source language content depending on file format * Translate Output/Languages/en.xml in cs 99% of minimum 90% translated source file: 'Output/Languages/en.xml' on 'cs'. Sync of partially translated files: untranslated content is included with an empty translation or source language content depending on file format * Translate Output/Languages/en.xml in cs 99% of minimum 90% translated source file: 'Output/Languages/en.xml' on 'cs'. Sync of partially translated files: untranslated content is included with an empty translation or source language content depending on file format * Translate Output/Languages/en.xml in cs 100% translated source file: 'Output/Languages/en.xml' on 'cs'. * Translate en.xml in cs 100% translated source file: 'en.xml' on 'cs'. * Translate en.xml in cs 100% translated source file: 'en.xml' on 'cs'. * Translate en.xml in cs 100% translated source file: 'en.xml' on 'cs'. --------- Co-authored-by: transifex-integration[bot] <43880903+transifex-integration[bot]@users.noreply.github.com> --- Output/Languages/cs.xml | 9 +++++++++ Output/PartyModes/TicTacToe/Languages/cs.xml | 4 ++++ 2 files changed, 13 insertions(+) diff --git a/Output/Languages/cs.xml b/Output/Languages/cs.xml index 6b378176..39d2c221 100644 --- a/Output/Languages/cs.xml +++ b/Output/Languages/cs.xml @@ -152,12 +152,21 @@ (%v písní) (%v píseň) %a - %t + A-Z = Skok na písmeno • F3 = Vyhledávat • CTRL+R = Náhodný výběr - CTRL+S = Spustit směsku • CTRL+# = Změnit řazení skladeb • CTRL+T = Zapnout/Vypnout zobrazení kategorií • Mezerník = Otevřít volby skladby • ESC = Zpět do hlavní nabídky + A-Z = Vyhledávání umělce a názvu, předpony pro vyhledávání → a: = umělec • t: = název • c: = tvůrce • e: = edice • g: = žánr • y: = rok (např. 1999 nebo 1980-1989) • l: = jazyk • al: = album • fi: = název souboru • fo: = název složky + 1-6 = stisknutím čísla týmu použijete náhodný žolík. + Řazení: %s + Žádnou směsku pro tuto píseň! Pozastavit Zastavit zpívání Pokračovat Přeskočit tuto píseň Začít kolo znovu Začít hru znovu + Žádné další písně v seznamu skladeb! + Webová kamera není dostupná! + Poměr stran: %a + Přeskočeno %s sekund Výsledky Hodnocení Body diff --git a/Output/PartyModes/TicTacToe/Languages/cs.xml b/Output/PartyModes/TicTacToe/Languages/cs.xml index a7294248..49e692fd 100644 --- a/Output/PartyModes/TicTacToe/Languages/cs.xml +++ b/Output/PartyModes/TicTacToe/Languages/cs.xml @@ -18,10 +18,14 @@ Počet hráčů v týmu 2 Počet polí Doplnit žolíky každé kolo + Počet žolíků + Přepnout hráče Tic-Tac-Toe: Výběr hráče + Vybraní hráči pro tento tým: Tým 1 Tým 2 Vybrat náhodně + Přidejte alespoň jednoho hráče do obou týmů! / Přetáhněte zástupné obrázky hráčů a přidejte je do seznamu vybraných hráčů! / Klepnutím pravým tlačítkem myši na jej zastupující obrázek vybraného hráče odeberete! Tic-Tac-Toe Vybrat pole. Další hráč From e6f27d6281b61cc70db0808d23b8fe4c59bb453a Mon Sep 17 00:00:00 2001 From: Damien LAGUERRE Date: Fri, 29 Dec 2023 22:33:48 +0100 Subject: [PATCH 12/13] #559 Display song name on sing screen in pause menu --- Output/Themes/Genius/Screens/ScreenSing.xml | 14 ++++++++++++++ Vocaluxe/Screens/CScreenSing.cs | 9 +++++++++ 2 files changed, 23 insertions(+) diff --git a/Output/Themes/Genius/Screens/ScreenSing.xml b/Output/Themes/Genius/Screens/ScreenSing.xml index 44badc9c..2561cebb 100644 --- a/Output/Themes/Genius/Screens/ScreenSing.xml +++ b/Output/Themes/Genius/Screens/ScreenSing.xml @@ -694,6 +694,20 @@ Outline TR_SCREENSING_PAUSE + + 640 + 10 + -2.11 + 40 + 0 + + + Center + Center + + Normal + + 10 55 diff --git a/Vocaluxe/Screens/CScreenSing.cs b/Vocaluxe/Screens/CScreenSing.cs index 1f29a202..a16da86d 100644 --- a/Vocaluxe/Screens/CScreenSing.cs +++ b/Vocaluxe/Screens/CScreenSing.cs @@ -57,6 +57,7 @@ namespace Vocaluxe.Screens private const string _TextDuetName1 = "TextDuetName1"; private const string _TextDuetName2 = "TextDuetName2"; private const string _TextMedleyCountdown = "TextMedleyCountdown"; + private const string _TextPauseSongName = "TextPauseSongName"; private string[,,] _TextScores; private string[,,] _TextNames; private List _TextsPause; @@ -1114,6 +1115,13 @@ namespace Vocaluxe.Screens _Buttons[_ButtonRestartGame].Visible = _Pause; _Buttons[_ButtonRestartRound].Visible = _Pause && CGame.NumRounds > 1; + if (_Pause && _TimerSongText.IsRunning) + _TimerSongText.Stop(); + else + _TimerSongText.Start(); + + _Texts[_TextSongName].Visible = !_Pause; + if (_Pause) CSound.Pause(_CurrentStream); else @@ -1149,6 +1157,7 @@ namespace Vocaluxe.Screens if (rounds > 1) songname += " (" + CGame.RoundNr + "/" + rounds + ")"; _Texts[_TextSongName].Text = songname; + _Texts[_TextPauseSongName].Text = songname; _CurrentStream = CSound.Load(song.GetMP3(), false, true, CConfig.Config.Sound.KaraokeEffect == EOffOn.TR_CONFIG_ON ? EAudioEffect.Karaoke : EAudioEffect.None); CSound.SetStreamVolume(_CurrentStream, 100); From 9daf4c97e16cb7f11ff06450e0c94ab2222843a8 Mon Sep 17 00:00:00 2001 From: Damien LAGUERRE Date: Sun, 31 Dec 2023 10:15:01 +0100 Subject: [PATCH 13/13] Increase the version of ScreenSing to 11. + Adds missing information to the changelog fer version 10. --- Output/Themes/Changelog/Changelog_ScreenSing.txt | 13 +++++++++++++ Output/Themes/Genius/Screens/ScreenSing.xml | 2 +- Vocaluxe/Screens/CScreenSing.cs | 2 +- 3 files changed, 15 insertions(+), 2 deletions(-) diff --git a/Output/Themes/Changelog/Changelog_ScreenSing.txt b/Output/Themes/Changelog/Changelog_ScreenSing.txt index d86c8747..38ce8c20 100644 --- a/Output/Themes/Changelog/Changelog_ScreenSing.txt +++ b/Output/Themes/Changelog/Changelog_ScreenSing.txt @@ -1,5 +1,18 @@ ScreenSing ++++++++++ +Version 11 + +Add: + + ++++++++++ +Version 10 + +Add: + + + +++++++++ Version 9 diff --git a/Output/Themes/Genius/Screens/ScreenSing.xml b/Output/Themes/Genius/Screens/ScreenSing.xml index 2561cebb..30a03e2d 100644 --- a/Output/Themes/Genius/Screens/ScreenSing.xml +++ b/Output/Themes/Genius/Screens/ScreenSing.xml @@ -2,7 +2,7 @@ ScreenSing - 10 + 11 diff --git a/Vocaluxe/Screens/CScreenSing.cs b/Vocaluxe/Screens/CScreenSing.cs index a16da86d..b7cb3b65 100644 --- a/Vocaluxe/Screens/CScreenSing.cs +++ b/Vocaluxe/Screens/CScreenSing.cs @@ -41,7 +41,7 @@ namespace Vocaluxe.Screens // Version number for theme files. Increment it, if you've changed something on the theme files! protected override int _ScreenVersion { - get { return 10; } + get { return 11; } } private struct STimeRect