From a3808e97d55771a2fd91b820f9adb9cd615dc65e Mon Sep 17 00:00:00 2001 From: Mark Sujew Date: Thu, 29 Aug 2024 12:06:41 +0200 Subject: [PATCH] Produce failure on translation error --- dev-packages/cli/src/theia.ts | 5 +++- .../src/localization-manager.ts | 12 ++++++-- packages/core/i18n/nls.cs.json | 28 ++++++++++++++++++- packages/core/i18n/nls.de.json | 28 ++++++++++++++++++- packages/core/i18n/nls.es.json | 28 ++++++++++++++++++- packages/core/i18n/nls.fr.json | 28 ++++++++++++++++++- packages/core/i18n/nls.hu.json | 28 ++++++++++++++++++- packages/core/i18n/nls.it.json | 28 ++++++++++++++++++- packages/core/i18n/nls.ja.json | 28 ++++++++++++++++++- packages/core/i18n/nls.ko.json | 28 ++++++++++++++++++- packages/core/i18n/nls.pl.json | 28 ++++++++++++++++++- packages/core/i18n/nls.pt-br.json | 28 ++++++++++++++++++- packages/core/i18n/nls.ru.json | 28 ++++++++++++++++++- packages/core/i18n/nls.tr.json | 28 ++++++++++++++++++- packages/core/i18n/nls.zh-cn.json | 28 ++++++++++++++++++- packages/core/i18n/nls.zh-tw.json | 28 ++++++++++++++++++- scripts/translation-update.js | 6 +++- 17 files changed, 396 insertions(+), 19 deletions(-) diff --git a/dev-packages/cli/src/theia.ts b/dev-packages/cli/src/theia.ts index 6da5e2c498b1f..0a57af1895cbf 100644 --- a/dev-packages/cli/src/theia.ts +++ b/dev-packages/cli/src/theia.ts @@ -466,13 +466,16 @@ async function theiaCli(): Promise { } }, handler: async ({ freeApi, deeplKey, file, sourceLanguage, languages = [] }) => { - await localizationManager.localize({ + const success = await localizationManager.localize({ sourceFile: file, freeApi: freeApi ?? true, authKey: deeplKey, targetLanguages: languages, sourceLanguage }); + if (!success) { + process.exit(1); + } } }) .command<{ diff --git a/dev-packages/localization-manager/src/localization-manager.ts b/dev-packages/localization-manager/src/localization-manager.ts index f8468d0057abc..34081a0d3d9f9 100644 --- a/dev-packages/localization-manager/src/localization-manager.ts +++ b/dev-packages/localization-manager/src/localization-manager.ts @@ -34,7 +34,7 @@ export class LocalizationManager { constructor(private localizationFn = deepl) { } - async localize(options: LocalizationOptions): Promise { + async localize(options: LocalizationOptions): Promise { let source: Localization = {}; const cwd = process.env.INIT_CWD || process.cwd(); const sourceFile = path.resolve(cwd, options.sourceFile); @@ -66,7 +66,8 @@ export class LocalizationManager { existingTranslations.set(targetLanguage, {}); } } - await Promise.all(languages.map(language => this.translateLanguage(source, existingTranslations.get(language)!, language, options))); + const results = await Promise.all(languages.map(language => this.translateLanguage(source, existingTranslations.get(language)!, language, options))); + let result = results.reduce((acc, val) => acc && val, true); for (const targetLanguage of languages) { const targetPath = this.translationFileName(sourceFile, targetLanguage); @@ -75,8 +76,10 @@ export class LocalizationManager { await fs.writeJson(targetPath, sortLocalization(translation), { spaces: 2 }); } catch { console.error(chalk.red(`Error writing translated file to '${targetPath}'`)); + result = false; } } + return result; } protected translationFileName(original: string, language: string): string { @@ -85,7 +88,7 @@ export class LocalizationManager { return path.join(directory, `${fileName}.${language.toLowerCase()}.json`); } - async translateLanguage(source: Localization, target: Localization, targetLanguage: string, options: LocalizationOptions): Promise { + async translateLanguage(source: Localization, target: Localization, targetLanguage: string, options: LocalizationOptions): Promise { const map = this.buildLocalizationMap(source, target); if (map.text.length > 0) { try { @@ -102,11 +105,14 @@ export class LocalizationManager { map.localize(i, this.removeIgnoreTags(text)); }); console.log(chalk.green(`Successfully translated ${map.text.length} value${map.text.length > 1 ? 's' : ''} for language "${targetLanguage}"`)); + return true; } catch (e) { console.log(chalk.red(`Could not translate into language "${targetLanguage}"`), e); + return false; } } else { console.log(`No translation necessary for language "${targetLanguage}"`); + return true; } } diff --git a/packages/core/i18n/nls.cs.json b/packages/core/i18n/nls.cs.json index 31e51b0bfe70c..5168d1dd92a9a 100644 --- a/packages/core/i18n/nls.cs.json +++ b/packages/core/i18n/nls.cs.json @@ -11,7 +11,33 @@ "noCallers": "Nebyl zjištěn žádný volající.", "open": "Hierarchie otevřených výzev" }, - "collaboration": {}, + "collaboration": { + "collaborate": "Spolupracujte", + "collaboration": "Spolupráce", + "collaborationWorkspace": "Pracovní prostor pro spolupráci", + "connected": "Připojeno", + "connectedSession": "Připojení k relaci spolupráce", + "copiedInvitation": "Kód pozvánky zkopírovaný do schránky.", + "copyAgain": "Znovu kopírovat", + "createRoom": "Vytvoření nové relace spolupráce", + "creatingRoom": "Vytvoření relace", + "end": "Ukončení relace spolupráce", + "endDetail": "Ukončit relaci, ukončit sdílení obsahu a zrušit přístup ostatním uživatelům.", + "enterCode": "Zadejte kód relace spolupráce", + "failedCreate": "Nepodařilo se vytvořit prostor: {0}", + "failedJoin": "Nepodařilo se připojit k místnosti: {0}", + "invite": "Pozvat ostatní", + "inviteDetail": "Zkopírujte si kód pozvánky, abyste ji mohli sdílet s ostatními a připojit se k sezení.", + "joinRoom": "Připojte se k zasedání o spolupráci", + "joiningRoom": "Připojení k relaci", + "leave": "Opustit zasedání pro spolupráci", + "leaveDetail": "Odpojte se od aktuální relace spolupráce a zavřete pracovní prostor.", + "selectCollaboration": "Vyberte možnost spolupráce", + "sharedSession": "Společná relace spolupráce", + "startSession": "Zahájení relace spolupráce nebo připojení se k ní", + "userWantsToJoin": "Uživatel '{0}' se chce připojit k místnosti pro spolupráci", + "whatToDo": "Co byste chtěli dělat s dalšími spolupracovníky?" + }, "core": { "about": { "compatibility": "{0} Kompatibilita", diff --git a/packages/core/i18n/nls.de.json b/packages/core/i18n/nls.de.json index 21ab06785c954..c032b6c735f39 100644 --- a/packages/core/i18n/nls.de.json +++ b/packages/core/i18n/nls.de.json @@ -11,7 +11,33 @@ "noCallers": "Es wurden keine Anrufer entdeckt.", "open": "Öffne Aufruf-Hierarchie" }, - "collaboration": {}, + "collaboration": { + "collaborate": "Zusammenarbeiten", + "collaboration": "Zusammenarbeit", + "collaborationWorkspace": "Arbeitsbereich für Zusammenarbeit", + "connected": "Verbunden", + "connectedSession": "Verbunden mit einer Sitzung zur Zusammenarbeit", + "copiedInvitation": "Einladungscode in die Zwischenablage kopiert.", + "copyAgain": "Erneut kopieren", + "createRoom": "Neue Collaboration-Sitzung erstellen", + "creatingRoom": "Sitzung erstellen", + "end": "Kollaborationssitzung beenden", + "endDetail": "Beenden Sie die Sitzung, beenden Sie die Freigabe von Inhalten und sperren Sie den Zugang für andere.", + "enterCode": "Enter collaboration session code", + "failedCreate": "Es konnte kein Raum erstellt werden: {0}", + "failedJoin": "Verbindung zum Raum fehlgeschlagen: {0}", + "invite": "Andere einladen", + "inviteDetail": "Kopieren Sie den Einladungscode, um ihn mit anderen zu teilen und an der Sitzung teilzunehmen.", + "joinRoom": "An der Collaboration-Sitzung teilnehmen", + "joiningRoom": "Beitrittssitzung", + "leave": "Kollaborationssitzung verlassen", + "leaveDetail": "Trennen Sie die Verbindung zur aktuellen Zusammenarbeitssitzung und schließen Sie den Arbeitsbereich.", + "selectCollaboration": "Wählen Sie die Option Zusammenarbeit", + "sharedSession": "Gemeinsame Sitzung zur Zusammenarbeit", + "startSession": "Zusammenarbeitssitzung starten oder beitreten", + "userWantsToJoin": "Benutzer '{0}' möchte dem Collaboration Room beitreten", + "whatToDo": "Was würden Sie gerne mit anderen Mitarbeitern machen?" + }, "core": { "about": { "compatibility": "{0} Kompatibilität", diff --git a/packages/core/i18n/nls.es.json b/packages/core/i18n/nls.es.json index b412a52253c1f..8931ed3df2226 100644 --- a/packages/core/i18n/nls.es.json +++ b/packages/core/i18n/nls.es.json @@ -11,7 +11,33 @@ "noCallers": "No se ha detectado ninguna llamada.", "open": "Jerarquía de la convocatoria abierta" }, - "collaboration": {}, + "collaboration": { + "collaborate": "Colabore", + "collaboration": "Colaboración", + "collaborationWorkspace": "Espacio de trabajo colaborativo", + "connected": "Conectado", + "connectedSession": "Conectado a una sesión de colaboración", + "copiedInvitation": "Código de invitación copiado en el portapapeles.", + "copyAgain": "Copiar de nuevo", + "createRoom": "Crear una nueva sesión de colaboración", + "creatingRoom": "Crear sesión", + "end": "Fin de la sesión de colaboración", + "endDetail": "Finalizar la sesión, dejar de compartir contenidos y revocar el acceso a otras personas.", + "enterCode": "Introduzca el código de la sesión de colaboración", + "failedCreate": "No se ha podido crear la sala: {0}", + "failedJoin": "No se ha podido entrar en la sala: {0}", + "invite": "Invitar a otros", + "inviteDetail": "Copie el código de invitación para compartirlo con otras personas y unirse a la sesión.", + "joinRoom": "Unirse a la sesión de colaboración", + "joiningRoom": "Sesión inaugural", + "leave": "Abandonar la sesión de colaboración", + "leaveDetail": "Desconectar de la sesión de colaboración actual y cerrar el espacio de trabajo.", + "selectCollaboration": "Seleccione la opción de colaboración", + "sharedSession": "Compartió una sesión de colaboración", + "startSession": "Iniciar o unirse a una sesión de colaboración", + "userWantsToJoin": "Usuario '{0}' quiere unirse a la sala de colaboración", + "whatToDo": "¿Qué le gustaría hacer con otros colaboradores?" + }, "core": { "about": { "compatibility": "{0} Compatibilidad", diff --git a/packages/core/i18n/nls.fr.json b/packages/core/i18n/nls.fr.json index e788409daae31..45accd898c9b0 100644 --- a/packages/core/i18n/nls.fr.json +++ b/packages/core/i18n/nls.fr.json @@ -11,7 +11,33 @@ "noCallers": "Aucun appelant n'a été détecté.", "open": "Hiérarchie des appels ouverts" }, - "collaboration": {}, + "collaboration": { + "collaborate": "Collaborer", + "collaboration": "Collaboration", + "collaborationWorkspace": "Espace de travail collaboratif", + "connected": "Connecté", + "connectedSession": "Connecté à une session de collaboration", + "copiedInvitation": "Code d'invitation copié dans le presse-papiers.", + "copyAgain": "Copier à nouveau", + "createRoom": "Créer une nouvelle session de collaboration", + "creatingRoom": "Création d'une session", + "end": "Fin de la session de collaboration", + "endDetail": "Mettre fin à la session, cesser le partage de contenu et révoquer l'accès pour d'autres personnes.", + "enterCode": "Enter collaboration session code", + "failedCreate": "Échec de la création d'une salle : {0}", + "failedJoin": "N'a pas réussi à rejoindre la salle : {0}", + "invite": "Inviter d'autres personnes", + "inviteDetail": "Copiez le code d'invitation pour le partager avec d'autres personnes afin de participer à la session.", + "joinRoom": "Participer à une session de collaboration", + "joiningRoom": "Session d'adhésion", + "leave": "Quitter la session de collaboration", + "leaveDetail": "Se déconnecter de la session de collaboration en cours et fermer l'espace de travail.", + "selectCollaboration": "Sélectionner l'option de collaboration", + "sharedSession": "Partager une session de collaboration", + "startSession": "Démarrer ou rejoindre une session de collaboration", + "userWantsToJoin": "User '{0}' wants to join the collaboration room", + "whatToDo": "Qu'aimeriez-vous faire avec d'autres collaborateurs ?" + }, "core": { "about": { "compatibility": "{0} Compatibilité", diff --git a/packages/core/i18n/nls.hu.json b/packages/core/i18n/nls.hu.json index b636cd04403c0..c059404ecd184 100644 --- a/packages/core/i18n/nls.hu.json +++ b/packages/core/i18n/nls.hu.json @@ -11,7 +11,33 @@ "noCallers": "Nem észleltek hívókat.", "open": "Nyílt felhívás hierarchia" }, - "collaboration": {}, + "collaboration": { + "collaborate": "Együttműködés", + "collaboration": "Együttműködés", + "collaborationWorkspace": "Együttműködési munkaterület", + "connected": "Csatlakoztatva", + "connectedSession": "Együttműködési munkamenethez csatlakoztatva", + "copiedInvitation": "Meghívó kódja a vágólapra másolva.", + "copyAgain": "Ismétlemásolás", + "createRoom": "Új együttműködési munkamenet létrehozása", + "creatingRoom": "Munkamenet létrehozása", + "end": "Együttműködési ülés befejezése", + "endDetail": "A munkamenet megszüntetése, a tartalom megosztásának megszüntetése és a hozzáférés visszavonása mások számára.", + "enterCode": "Adja meg az együttműködési munkamenet kódját", + "failedCreate": "Nem sikerült helyet létrehozni: {0}", + "failedJoin": "Nem sikerült csatlakozni a szobához: {0}", + "invite": "Mások meghívása", + "inviteDetail": "Másolja ki a meghívó kódját, hogy másokkal is megoszthassa, és csatlakozhasson az üléshez.", + "joinRoom": "Csatlakozzon az együttműködési üléshez", + "joiningRoom": "Csatlakozási munkamenet", + "leave": "Hagyja el az együttműködési ülést", + "leaveDetail": "Szakítsa meg a kapcsolatot az aktuális együttműködési munkamenetből, és zárja be a munkaterületet.", + "selectCollaboration": "Együttműködési lehetőség kiválasztása", + "sharedSession": "Közös együttműködési munkamenet", + "startSession": "Együttműködési munkamenet indítása vagy ahhoz való csatlakozás", + "userWantsToJoin": "Felhasználó '{0}' csatlakozni szeretne a kollaborációs szobához", + "whatToDo": "Mit szeretnél csinálni más munkatársakkal?" + }, "core": { "about": { "compatibility": "{0} Kompatibilitás", diff --git a/packages/core/i18n/nls.it.json b/packages/core/i18n/nls.it.json index 0fc479a65e66f..46ff1f2ae77fb 100644 --- a/packages/core/i18n/nls.it.json +++ b/packages/core/i18n/nls.it.json @@ -11,7 +11,33 @@ "noCallers": "Non sono stati rilevati chiamanti.", "open": "Gerarchia delle chiamate aperte" }, - "collaboration": {}, + "collaboration": { + "collaborate": "Collaborate", + "collaboration": "Collaborazione", + "collaborationWorkspace": "Spazio di lavoro per la collaborazione", + "connected": "Collegato", + "connectedSession": "Collegato a una sessione di collaborazione", + "copiedInvitation": "Codice invito copiato negli appunti.", + "copyAgain": "Copia di nuovo", + "createRoom": "Creare una nuova sessione di collaborazione", + "creatingRoom": "Creazione di una sessione", + "end": "Fine della sessione di collaborazione", + "endDetail": "Terminare la sessione, interrompere la condivisione dei contenuti e revocare l'accesso ad altri.", + "enterCode": "Inserire il codice della sessione di collaborazione", + "failedCreate": "Impossibile creare una stanza: {0}", + "failedJoin": "Impossibile unirsi alla stanza: {0}", + "invite": "Invitare altri", + "inviteDetail": "Copiare il codice di invito per condividerlo con altri e partecipare alla sessione.", + "joinRoom": "Partecipa alla sessione di collaborazione", + "joiningRoom": "Sessione di adesione", + "leave": "Lasciare la sessione di collaborazione", + "leaveDetail": "Disconnettersi dalla sessione di collaborazione in corso e chiudere l'area di lavoro.", + "selectCollaboration": "Selezionare l'opzione di collaborazione", + "sharedSession": "Condivisione di una sessione di collaborazione", + "startSession": "Avviare o partecipare a una sessione di collaborazione", + "userWantsToJoin": "L'utente '{0}' vuole unirsi alla sala di collaborazione", + "whatToDo": "Cosa le piacerebbe fare con altri collaboratori?" + }, "core": { "about": { "compatibility": "{0} Compatibilità", diff --git a/packages/core/i18n/nls.ja.json b/packages/core/i18n/nls.ja.json index 34871ca325a1d..1d823f74c0c86 100644 --- a/packages/core/i18n/nls.ja.json +++ b/packages/core/i18n/nls.ja.json @@ -11,7 +11,33 @@ "noCallers": "発信者は検出されていません。", "open": "オープンコールヒエラルキー" }, - "collaboration": {}, + "collaboration": { + "collaborate": "コラボレーション", + "collaboration": "コラボレーション", + "collaborationWorkspace": "コラボレーション・ワークスペース", + "connected": "接続済み", + "connectedSession": "コラボレーション・セッションに接続", + "copiedInvitation": "招待状コードがクリップボードにコピーされました。", + "copyAgain": "コピー・アゲイン", + "createRoom": "新しいコラボレーション・セッションの作成", + "creatingRoom": "セッションの作成", + "end": "コラボレーション・セッション終了", + "endDetail": "セッションを終了し、コンテンツの共有を停止し、他の人のアクセスを取り消す。", + "enterCode": "コラボレーションセッションコードを入力", + "failedCreate": "部屋の作成に失敗しました:{0}", + "failedJoin": "入室に失敗:{0}", + "invite": "他の人を招待する", + "inviteDetail": "招待コードをコピーして他の人と共有し、セッションに参加してください。", + "joinRoom": "コラボレーション・セッションに参加", + "joiningRoom": "セッションへの参加", + "leave": "コラボレーション・セッション", + "leaveDetail": "現在のコラボレーションセッションから切断し、ワークスペースを閉じます。", + "selectCollaboration": "コラボレーション・オプションを選択", + "sharedSession": "コラボレーション・セッションを共有", + "startSession": "コラボレーションセッションの開始または参加", + "userWantsToJoin": "ユーザー '{0}' がコラボレーションルームへの参加を希望しています。", + "whatToDo": "他の協力者とどんなことをしたいですか?" + }, "core": { "about": { "compatibility": "{0} 互換性", diff --git a/packages/core/i18n/nls.ko.json b/packages/core/i18n/nls.ko.json index 8e9682548446c..c35b5f4e7a0d9 100644 --- a/packages/core/i18n/nls.ko.json +++ b/packages/core/i18n/nls.ko.json @@ -11,7 +11,33 @@ "noCallers": "발신자가 감지되지 않았습니다.", "open": "오픈 콜 계층 구조" }, - "collaboration": {}, + "collaboration": { + "collaborate": "협업", + "collaboration": "협업", + "collaborationWorkspace": "협업 작업 공간", + "connected": "연결됨", + "connectedSession": "공동 작업 세션에 연결됨", + "copiedInvitation": "초대 코드가 클립보드에 복사되었습니다.", + "copyAgain": "다시 복사", + "createRoom": "새 공동 작업 세션 만들기", + "creatingRoom": "세션 만들기", + "end": "협업 세션 종료", + "endDetail": "세션을 종료하고, 콘텐츠 공유를 중단하고, 다른 사용자의 액세스 권한을 취소합니다.", + "enterCode": "공동 작업 세션 코드 입력", + "failedCreate": "공간을 만들지 못했습니다: {0}", + "failedJoin": "방에 참여하지 못했습니다: {0}", + "invite": "다른 사람 초대", + "inviteDetail": "초대 코드를 복사하여 다른 사람들과 공유하여 세션에 참여합니다.", + "joinRoom": "협업 세션 참여", + "joiningRoom": "세션 참여", + "leave": "공동 작업 세션 나가기", + "leaveDetail": "현재 공동 작업 세션에서 연결을 끊고 워크스페이스를 닫습니다.", + "selectCollaboration": "협업 옵션 선택", + "sharedSession": "공동 작업 세션 공유", + "startSession": "공동 작업 세션 시작 또는 참여", + "userWantsToJoin": "사용자 '{0}' 가 공동 작업실에 참여하려고 합니다.", + "whatToDo": "다른 공동 작업자들과 함께 무엇을 하고 싶으신가요?" + }, "core": { "about": { "compatibility": "{0} 호환성", diff --git a/packages/core/i18n/nls.pl.json b/packages/core/i18n/nls.pl.json index ef9a8677dd57a..8955829d6df56 100644 --- a/packages/core/i18n/nls.pl.json +++ b/packages/core/i18n/nls.pl.json @@ -11,7 +11,33 @@ "noCallers": "Nie wykryto żadnych rozmówców.", "open": "Hierarchia zaproszeń otwartych" }, - "collaboration": {}, + "collaboration": { + "collaborate": "Współpraca", + "collaboration": "Współpraca", + "collaborationWorkspace": "Przestrzeń robocza do współpracy", + "connected": "Połączony", + "connectedSession": "Połączenie z sesją współpracy", + "copiedInvitation": "Kod zaproszenia skopiowany do schowka.", + "copyAgain": "Kopiuj ponownie", + "createRoom": "Utwórz nową sesję współpracy", + "creatingRoom": "Tworzenie sesji", + "end": "Zakończenie sesji współpracy", + "endDetail": "Zakończenie sesji, zaprzestanie udostępniania treści i odebranie dostępu innym osobom.", + "enterCode": "Wprowadź kod sesji współpracy", + "failedCreate": "Nie udało się utworzyć miejsca: {0}", + "failedJoin": "Nie udało się dołączyć do pokoju: {0}", + "invite": "Zaproś innych", + "inviteDetail": "Skopiuj kod zaproszenia, aby udostępnić go innym osobom i dołączyć do sesji.", + "joinRoom": "Dołącz do sesji współpracy", + "joiningRoom": "Sesja dołączania", + "leave": "Zostaw sesję współpracy", + "leaveDetail": "Rozłączenie się z bieżącą sesją współpracy i zamknięcie obszaru roboczego.", + "selectCollaboration": "Wybierz opcję współpracy", + "sharedSession": "Wspólna sesja współpracy", + "startSession": "Rozpoczęcie lub dołączenie do sesji współpracy", + "userWantsToJoin": "Użytkownik '{0}' chce dołączyć do pokoju współpracy", + "whatToDo": "Co chciałbyś zrobić z innymi współpracownikami?" + }, "core": { "about": { "compatibility": "{0} Zgodność", diff --git a/packages/core/i18n/nls.pt-br.json b/packages/core/i18n/nls.pt-br.json index 04706f612398f..10793ca773fd0 100644 --- a/packages/core/i18n/nls.pt-br.json +++ b/packages/core/i18n/nls.pt-br.json @@ -11,7 +11,33 @@ "noCallers": "Nenhum chamador foi detectado.", "open": "Hierarquia de Chamadas Abertas" }, - "collaboration": {}, + "collaboration": { + "collaborate": "Colaborar", + "collaboration": "Colaboração", + "collaborationWorkspace": "Espaço de trabalho de colaboração", + "connected": "Conectado", + "connectedSession": "Conectado a uma sessão de colaboração", + "copiedInvitation": "Código do convite copiado para a área de transferência.", + "copyAgain": "Copiar novamente", + "createRoom": "Criar nova sessão de colaboração", + "creatingRoom": "Criação de sessão", + "end": "Encerrar a sessão de colaboração", + "endDetail": "Encerrar a sessão, interromper o compartilhamento de conteúdo e revogar o acesso de outras pessoas.", + "enterCode": "Digite o código da sessão de colaboração", + "failedCreate": "Falha ao criar a sala: {0}", + "failedJoin": "Falha ao entrar na sala: {0}", + "invite": "Convidar outras pessoas", + "inviteDetail": "Copie o código do convite para compartilhá-lo com outras pessoas e participar da sessão.", + "joinRoom": "Participe da sessão de colaboração", + "joiningRoom": "Sessão de ingresso", + "leave": "Sair da sessão de colaboração", + "leaveDetail": "Desconecte-se da sessão de colaboração atual e feche o espaço de trabalho.", + "selectCollaboration": "Selecione a opção de colaboração", + "sharedSession": "Compartilhou uma sessão de colaboração", + "startSession": "Iniciar ou participar de uma sessão de colaboração", + "userWantsToJoin": "O usuário '{0}' deseja participar da sala de colaboração", + "whatToDo": "O que você gostaria de fazer com outros colaboradores?" + }, "core": { "about": { "compatibility": "{0} Compatibilidade", diff --git a/packages/core/i18n/nls.ru.json b/packages/core/i18n/nls.ru.json index d823d61975293..18e1d8d01d3fa 100644 --- a/packages/core/i18n/nls.ru.json +++ b/packages/core/i18n/nls.ru.json @@ -11,7 +11,33 @@ "noCallers": "Вызывающих не обнаружено.", "open": "Иерархия открытых звонков" }, - "collaboration": {}, + "collaboration": { + "collaborate": "Сотрудничайте", + "collaboration": "Сотрудничество", + "collaborationWorkspace": "Рабочее пространство для совместной работы", + "connected": "Подключено", + "connectedSession": "Подключение к сеансу совместной работы", + "copiedInvitation": "Код приглашения скопирован в буфер обмена.", + "copyAgain": "Повторная копия", + "createRoom": "Создать новый сеанс совместной работы", + "creatingRoom": "Создание сессии", + "end": "Завершение сеанса совместной работы", + "endDetail": "Прервите сеанс, прекратите обмен содержимым и отмените доступ для других.", + "enterCode": "Введите код сеанса совместной работы", + "failedCreate": "Не удалось создать комнату: {0}", + "failedJoin": "Не удалось присоединиться к комнате: {0}", + "invite": "Пригласите других", + "inviteDetail": "Скопируйте код приглашения, чтобы поделиться им с другими людьми и присоединиться к сеансу.", + "joinRoom": "Присоединяйтесь к сессии совместной работы", + "joiningRoom": "Присоединение к сессии", + "leave": "Оставьте сессию совместной работы", + "leaveDetail": "Отключитесь от текущего сеанса совместной работы и закройте рабочую область.", + "selectCollaboration": "Выберите вариант сотрудничества", + "sharedSession": "Совместная сессия сотрудничества", + "startSession": "Начать или присоединиться к сеансу совместной работы", + "userWantsToJoin": "Пользователь '{0}' хочет присоединиться к комнате для совместной работы", + "whatToDo": "Что бы вы хотели сделать с другими соавторами?" + }, "core": { "about": { "compatibility": "{0} Совместимость", diff --git a/packages/core/i18n/nls.tr.json b/packages/core/i18n/nls.tr.json index 8cfec2522e698..87ebc516eaeed 100644 --- a/packages/core/i18n/nls.tr.json +++ b/packages/core/i18n/nls.tr.json @@ -11,7 +11,33 @@ "noCallers": "Herhangi bir arayan tespit edilmedi.", "open": "Açık Çağrı Hiyerarşisi" }, - "collaboration": {}, + "collaboration": { + "collaborate": "İşbirliği yapın", + "collaboration": "İşbirliği", + "collaborationWorkspace": "İşbirliği Çalışma Alanı", + "connected": "Bağlı", + "connectedSession": "Bir işbirliği oturumuna bağlandı", + "copiedInvitation": "Davetiye kodu panoya kopyalandı.", + "copyAgain": "Tekrar Kopyala", + "createRoom": "Yeni İşbirliği Oturumu Oluştur", + "creatingRoom": "Oturum Oluşturma", + "end": "İşbirliği Oturumunu Sonlandırın", + "endDetail": "Oturumu sonlandırın, içerik paylaşımını durdurun ve başkalarının erişimini iptal edin.", + "enterCode": "İşbirliği oturum kodunu girin", + "failedCreate": "Oda oluşturulamadı: {0}", + "failedJoin": "Odaya katılamadı: {0}", + "invite": "Başkalarını Davet Edin", + "inviteDetail": "Oturuma katılmak üzere başkalarıyla paylaşmak için davet kodunu kopyalayın.", + "joinRoom": "İşbirliği Oturumuna Katılın", + "joiningRoom": "Katılma Oturumu", + "leave": "İşbirliği Oturumundan Ayrılın", + "leaveDetail": "Geçerli işbirliği oturumunun bağlantısını kesin ve çalışma alanını kapatın.", + "selectCollaboration": "İşbirliği seçeneğini belirleyin", + "sharedSession": "Bir işbirliği oturumu paylaştı", + "startSession": "İşbirliği oturumunu başlatın veya oturuma katılın", + "userWantsToJoin": "Kullanıcı '{0}' işbirliği odasına katılmak istiyor", + "whatToDo": "Diğer işbirlikçilerle neler yapmak istersiniz?" + }, "core": { "about": { "compatibility": "{0} Uyumluluk", diff --git a/packages/core/i18n/nls.zh-cn.json b/packages/core/i18n/nls.zh-cn.json index 871d9b07dccce..3c356b419855d 100644 --- a/packages/core/i18n/nls.zh-cn.json +++ b/packages/core/i18n/nls.zh-cn.json @@ -11,7 +11,33 @@ "noCallers": "没有发现调用者。", "open": "打开调用层次结构" }, - "collaboration": {}, + "collaboration": { + "collaborate": "合作", + "collaboration": "合作", + "collaborationWorkspace": "协作工作区", + "connected": "已连接", + "connectedSession": "连接到协作会议", + "copiedInvitation": "邀请函代码已复制到剪贴板。", + "copyAgain": "再次复制", + "createRoom": "创建新的协作会话", + "creatingRoom": "创建会话", + "end": "结束合作会议", + "endDetail": "终止会话,停止内容共享,并取消其他人的访问权限。", + "enterCode": "输入协作会话代码", + "failedCreate": "创建房间失败:{0}", + "failedJoin": "未能加入房间:{0}", + "invite": "邀请他人", + "inviteDetail": "复制邀请代码,与他人分享,参加会议。", + "joinRoom": "参加协作会议", + "joiningRoom": "加入会议", + "leave": "离开合作会议", + "leaveDetail": "断开当前协作会话并关闭工作区。", + "selectCollaboration": "选择协作选项", + "sharedSession": "共享合作会议", + "startSession": "开始或加入协作会议", + "userWantsToJoin": "用户 '{0}' 希望加入协作室", + "whatToDo": "您想与其他合作者做些什么?" + }, "core": { "about": { "compatibility": "{0} 兼容性", diff --git a/packages/core/i18n/nls.zh-tw.json b/packages/core/i18n/nls.zh-tw.json index 6c06fb3edd79e..b3f4b4f67c936 100644 --- a/packages/core/i18n/nls.zh-tw.json +++ b/packages/core/i18n/nls.zh-tw.json @@ -11,7 +11,33 @@ "noCallers": "未偵測到來電者。", "open": "開放式呼叫層級" }, - "collaboration": {}, + "collaboration": { + "collaborate": "合作", + "collaboration": "合作", + "collaborationWorkspace": "協同工作區", + "connected": "連接", + "connectedSession": "連接至協作會議", + "copiedInvitation": "邀請函代碼已複製到剪貼簿。", + "copyAgain": "再次複製", + "createRoom": "建立新的協作會議", + "creatingRoom": "創建會話", + "end": "結束協作會議", + "endDetail": "終止會話、停止內容共用,並取消其他人的存取權限。", + "enterCode": "輸入協作會議代碼", + "failedCreate": "建立空間失敗:{0}", + "failedJoin": "未能加入房間:{0}", + "invite": "邀請他人", + "inviteDetail": "複製邀請代碼,以便與他人分享,參加會議。", + "joinRoom": "加入協作會議", + "joiningRoom": "加入會議", + "leave": "休假協作會議", + "leaveDetail": "中斷目前的協作工作階段,並關閉工作區。", + "selectCollaboration": "選擇合作選項", + "sharedSession": "分享協作會議", + "startSession": "開始或加入協作會議", + "userWantsToJoin": "使用者 '{0}' 想要加入協作室", + "whatToDo": "您想與其他合作者做什麼?" + }, "core": { "about": { "compatibility": "{0} 相容性", diff --git a/scripts/translation-update.js b/scripts/translation-update.js index 9209af82eb86f..c90cce7d9bcfc 100644 --- a/scripts/translation-update.js +++ b/scripts/translation-update.js @@ -38,7 +38,7 @@ function getDeepLToken() { } function performDeepLTranslation(token) { - cp.spawnSync('yarn', [ + const childProcess = cp.spawnSync('yarn', [ 'theia', 'nls-localize', '-f', './packages/core/i18n/nls.json', '--free-api', '-k', token @@ -46,4 +46,8 @@ function performDeepLTranslation(token) { shell: true, stdio: 'inherit' }); + if (childProcess.status !== 0) { + console.error('DeepL translation failed'); + process.exit(1); + } }