From 6c743c9c733ee170d66a6f73c96ba98355812287 Mon Sep 17 00:00:00 2001 From: Dark Date: Wed, 18 Feb 2026 00:08:50 +0800 Subject: [PATCH] fix(i18n): Complete and standardize all locale translations (#549) - Added missing translation keys across all language files - Completed file_transfer lock translations for all locales - Added missing control section translations (has/hasnot) - Fixed inconsistent translations and improved accuracy - Ensured all locale files match the English key structure - Corrected grammar errors and typos in various languages - Added broadcast_title, reconnecting, kicked translations - Standardized translation quality across all supported languages Languages updated: zh-cn, es-sp, fr-fr, de-de, ja-jp, ko-kr, ru-ru, fi-fi, sv-se, nb-no, sk-sk --- client/src/locale/de-de.ts | 2 + client/src/locale/es-sp.ts | 120 +++++++++++++++++-------------------- client/src/locale/fi-fi.ts | 19 +++--- client/src/locale/fr-fr.ts | 70 ++++++++++------------ client/src/locale/ja-jp.ts | 4 +- client/src/locale/ko-kr.ts | 21 +++---- client/src/locale/nb-no.ts | 66 +++++++++----------- client/src/locale/ru-ru.ts | 17 +++--- client/src/locale/sk-sk.ts | 20 ++++--- client/src/locale/sv-se.ts | 70 ++++++++++------------ client/src/locale/zh-cn.ts | 105 ++++++++++++++++---------------- 11 files changed, 242 insertions(+), 272 deletions(-) diff --git a/client/src/locale/de-de.ts b/client/src/locale/de-de.ts index c163c6fa..8633afae 100644 --- a/client/src/locale/de-de.ts +++ b/client/src/locale/de-de.ts @@ -50,6 +50,8 @@ export const controls = { request: 'Steuerung anfordern', lock: 'Steuerung sperren', unlock: 'Steuerung entsperren', + has: 'Du hast die Kontrolle', // TODO: prüfen Übersetzung + hasnot: 'Du hast keine Kontrolle', // TODO: prüfen Übersetzung } export const locks = { diff --git a/client/src/locale/es-sp.ts b/client/src/locale/es-sp.ts index d8bf6b96..2a27e9a2 100644 --- a/client/src/locale/es-sp.ts +++ b/client/src/locale/es-sp.ts @@ -2,8 +2,7 @@ export const logout = 'salir' export const unsupported = 'este navegador no soporta webrtc' export const admin_loggedin = 'Registrado como admin' export const you = 'Tú' -// TODO -//export const somebody = 'Somebody' +export const somebody = 'Alguien' export const send_a_message = 'Enviar un mensaje' export const side = { @@ -19,8 +18,7 @@ export const connect = { password: 'Contraseña', connect: 'Conectar', error: 'Error de login', - // TODO - //empty_displayname: 'Display Name cannot be empty.', + empty_displayname: 'El nombre para mostrar no puede estar vacío.', } export const context = { @@ -37,7 +35,7 @@ export const context = { kick_title: 'Echar a {name}?', kick_text: 'Seguro que quiere echar a {name}?', ban_title: 'Bloquear a {name}?', - ban_text: 'Seguroq ue quieres bloquear a {name}? Necesitarás reiniciar el servidor para deshacer esta acción.', + ban_text: '¿Seguro que quieres bloquear a {name}? Necesitarás reiniciar el servidor para deshacer esta acción.', mute_title: 'Silenciar a {name}?', mute_text: 'Seguro que quieres silenciar a {name}?', unmute_title: 'Dejar de silenciar a {name}?', @@ -48,25 +46,23 @@ export const context = { } export const controls = { - release: 'Controles liberador', - request: 'Controles solicitados', - lock: 'Controles bloqueados', - unlock: 'Controles desbloqueados', - // TODO - //has: 'You have control', - //hasnot: 'You do not have control', + release: 'Liberar controles', + request: 'Solicitar controles', + lock: 'Bloquear controles', + unlock: 'Desbloquear controles', + has: 'Tienes el control', + hasnot: 'No tienes el control', } export const locks = { - // TODO - //control: { - // lock: 'Lock Controls (for users)', - // unlock: 'Unlock Controls (for users)', - // locked: 'Controls Locked (for users)', - // unlocked: 'Controls Unlocked (for users)', - // notif_locked: 'locked controls for users', - // notif_unlocked: 'unlocked controls for users', - //}, + control: { + lock: 'Bloquear controles (para usuarios)', + unlock: 'Desbloquear controles (para usuarios)', + locked: 'Controles bloqueados (para usuarios)', + unlocked: 'Controles desbloqueados (para usuarios)', + notif_locked: 'controles bloqueados para usuarios', + notif_unlocked: 'controles desbloqueados para usuarios', + }, login: { lock: 'Bloquear sala (para usuarios)', unlock: 'Desbloquear sala (para usuarios)', @@ -75,61 +71,57 @@ export const locks = { notif_locked: 'bloqueó la sala', notif_unlocked: 'desbloqueó la sala', }, - // TODO - //file_transfer: { - // lock: 'Lock File Transfer (for users)', - // unlock: 'Unlock File Transfer (for users)', - // locked: 'File Transfer Locked (for users)', - // unlocked: 'File Transfer Unlocked (for users)', - // notif_locked: 'locked file transfer', - // notif_unlocked: 'unlocked file transfer', - //}, + file_transfer: { + lock: 'Bloquear transferencia de archivos (para usuarios)', + unlock: 'Desbloquear transferencia de archivos (para usuarios)', + locked: 'Transferencia de archivos bloqueada (para usuarios)', + unlocked: 'Transferencia de archivos desbloqueada (para usuarios)', + notif_locked: 'transferencia de archivos bloqueada', + notif_unlocked: 'transferencia de archivos desbloqueada', + }, } export const setting = { - scroll: 'Sensibilidad del Scroll', - scroll_invert: 'Invertir Scroll', - autoplay: 'Auto Reproducir Video', - ignore_emotes: 'Ignorar Emotes', - chat_sound: 'Reproducir Sonidos Chat', - keyboard_layout: 'Keyboard Layout', - // TODO - //broadcast_title: 'Live Broadcast', + scroll: 'Sensibilidad del scroll', + scroll_invert: 'Invertir scroll', + autoplay: 'Reproducir video automáticamente', + ignore_emotes: 'Ignorar emoticonos', + chat_sound: 'Reproducir sonido del chat', + keyboard_layout: 'Diseño del teclado', + broadcast_title: 'Transmisión en vivo', } export const connection = { - logged_out: 'Has salido!', - // TODO - //reconnecting: 'Reconnecting', - connected: 'Connectado correctamente', - disconnected: 'Has sido desconectado', - // TODO - //kicked: 'You have been removed from this room.', - button_confirm: 'De acuerdo', + logged_out: 'Has sido desconectado.', + reconnecting: 'Reconectando...', + connected: 'Conectado', + disconnected: 'Desconectado', + kicked: 'Has sido expulsado de esta sala.', + button_confirm: 'OK', } export const notifications = { - connected: '{name} se ha conectado', - disconnected: '{name} se ha desconnectado', - controls_taken: '{name} tiene los controles', - controls_taken_force: 'controles confiscados', - controls_taken_steal: 'cogió los controles de {name}', - controls_released: '{name} ha liberado los controles', - controls_released_force: 'controles liberados', - controls_released_steal: 'controles liberados de {name}', - controls_given: 'controles asignados a {name}', + connected: '{name} se conectó', + disconnected: '{name} se desconectó', + controls_taken: '{name} tomó los controles', + controls_taken_force: 'tomó los controles por la fuerza', + controls_taken_steal: 'tomó los controles de {name}', + controls_released: '{name} liberó los controles', + controls_released_force: 'liberó los controles por la fuerza', + controls_released_steal: 'liberó los controles de {name}', + controls_given: 'dio los controles a {name}', controls_has: '{name} tiene los controles', - controls_has_alt: 'Pero le diré que quieres los controles', - controls_requesting: '{name} quiere los controles', - resolution: 'resolución cambiada a {width}x{height}@{rate}', - banned: '{name} bloqueado', - kicked: '{name} expulsado', - muted: '{name} silenciado', - unmuted: '{name} no silenciado', + controls_has_alt: 'Pero le hice saber a la persona que los querías', + controls_requesting: '{name} está solicitando los controles', + resolution: 'cambió la resolución a {width}x{height}@{rate}', + banned: 'bloqueó a {name}', + kicked: 'expulsó a {name}', + muted: 'silenció a {name}', + unmuted: 'quitó el silencio a {name}', } export const files = { downloads: 'Descargas', - uploads: 'Cargar', - upload_here: 'Haga clic o arrastre los archivos aquí para cargarlos', + uploads: 'Subidas', + upload_here: 'Haz clic o arrastra archivos aquí para subirlos', } diff --git a/client/src/locale/fi-fi.ts b/client/src/locale/fi-fi.ts index 105cbf2d..804d8e85 100644 --- a/client/src/locale/fi-fi.ts +++ b/client/src/locale/fi-fi.ts @@ -2,7 +2,7 @@ export const logout = 'kirjaudu ulos' export const unsupported = 'Tämä nettiselain ei tue WebRTC:tä' export const admin_loggedin = 'Sinä olet kirjautunut valvojana' export const you = 'Sinä' -export const somebody = 'Joku' +export const somebody = 'Joku' // TODO: tarkista käännös export const send_a_message = 'Lähetä viesti' export const side = { @@ -71,15 +71,14 @@ export const locks = { notif_locked: 'lukittu huone', notif_unlocked: 'vapautettu huone', }, - // TODO - //file_transfer: { - // lock: 'Lock File Transfer (for users)', - // unlock: 'Unlock File Transfer (for users)', - // locked: 'File Transfer Locked (for users)', - // unlocked: 'File Transfer Unlocked (for users)', - // notif_locked: 'locked file transfer', - // notif_unlocked: 'unlocked file transfer', - //}, + file_transfer: { + lock: 'Lukitse tiedostonsiirto (käyttäjiltä)', + unlock: 'Vapauta tiedostonsiirto (käyttäjiltä)', + locked: 'Tiedostonsiirto lukittu (käyttäjiltä)', + unlocked: 'Tiedostonsiirto vapautettu (käyttäjiltä)', + notif_locked: 'tiedostonsiirto lukittu', + notif_unlocked: 'tiedostonsiirto vapautettu', + }, } export const setting = { diff --git a/client/src/locale/fr-fr.ts b/client/src/locale/fr-fr.ts index 67d49eaa..1d32ce17 100644 --- a/client/src/locale/fr-fr.ts +++ b/client/src/locale/fr-fr.ts @@ -2,8 +2,7 @@ export const logout = 'Se déconnecter' export const unsupported = 'ce navigateur ne prend pas en charge WebRTC' export const admin_loggedin = "Vous êtes connecté en tant qu'admin" export const you = 'Vous' -// TODO -//export const somebody = 'Somebody' +export const somebody = 'Quelqu\'un' // TODO: vérifier la traduction export const send_a_message = 'Envoyer un message' export const side = { @@ -19,8 +18,7 @@ export const connect = { password: 'Mot de passe', connect: 'Connexion', error: 'Erreur de connexion', - // TODO - //empty_displayname: 'Display Name cannot be empty.', + empty_displayname: 'Le nom d\'affichage ne peut pas être vide.', // TODO: vérifier la traduction } export const context = { @@ -52,21 +50,19 @@ export const controls = { request: 'Demander le contrôle', lock: 'Vérouiller le contrôle', unlock: 'Débloquer le contrôle', - // TODO - // has: 'You have control', - // hasnot: 'You do not have control', + has: 'Vous avez le contrôle', // TODO: vérifier la traduction + hasnot: 'Vous n\'avez pas le contrôle', // TODO: vérifier la traduction } export const locks = { - // TODO - //control: { - // lock: 'Lock Controls (for users)', - // unlock: 'Unlock Controls (for users)', - // locked: 'Controls Locked (for users)', - // unlocked: 'Controls Unlocked (for users)', - // notif_locked: 'locked controls for users', - // notif_unlocked: 'unlocked controls for users', - //}, + control: { + lock: 'Verrouiller les contrôles (pour les utilisateurs)', + unlock: 'Déverrouiller les contrôles (pour les utilisateurs)', + locked: 'Contrôles verrouillés (pour les utilisateurs)', + unlocked: 'Contrôles déverrouillés (pour les utilisateurs)', + notif_locked: 'contrôles verrouillés pour les utilisateurs', + notif_unlocked: 'contrôles déverrouillés pour les utilisateurs', + }, login: { lock: 'Vérouiller la salle (pour les utilisateurs)', unlock: 'Dévérouiller la salle (pour les utilisateurs)', @@ -75,36 +71,32 @@ export const locks = { notif_locked: 'a vérouillé la salle', notif_unlocked: 'a dévérouillé la salle', }, - // TODO - //file_transfer: { - // lock: 'Lock File Transfer (for users)', - // unlock: 'Unlock File Transfer (for users)', - // locked: 'File Transfer Locked (for users)', - // unlocked: 'File Transfer Unlocked (for users)', - // notif_locked: 'locked file transfer', - // notif_unlocked: 'unlocked file transfer', - //}, + file_transfer: { + lock: 'Verrouiller le transfert de fichiers (pour les utilisateurs)', + unlock: 'Déverrouiller le transfert de fichiers (pour les utilisateurs)', + locked: 'Transfert de fichiers verrouillé (pour les utilisateurs)', + unlocked: 'Transfert de fichiers déverrouillé (pour les utilisateurs)', + notif_locked: 'transfert de fichiers verrouillé', + notif_unlocked: 'transfert de fichiers déverrouillé', + }, } export const setting = { - scroll: 'Sensibilité de défilement (scroll)', - scroll_invert: 'Inverser le défilement (scroll)', - autoplay: 'Jouer automatiquement la vidéo', - ignore_emotes: 'Ignorer les Emotes', - chat_sound: 'Jouer le son du tchat', - keyboard_layout: 'Langue du clavier', - // TODO - //broadcast_title: 'Live Broadcast', + scroll: 'Sensibilité de défilement', + scroll_invert: 'Inverser le défilement', + autoplay: 'Lecture automatique de la vidéo', + ignore_emotes: 'Ignorer les émoticônes', + chat_sound: 'Son du chat', + keyboard_layout: 'Disposition du clavier', + broadcast_title: 'Diffusion en direct', } export const connection = { logged_out: 'Vous avez été déconnecté.', - // TODO - //reconnecting: 'Reconnecting', + reconnecting: 'Reconnexion...', connected: 'Connecté', disconnected: 'Déconnecté', - // TODO - //kicked: 'You have been removed from this room.', + kicked: 'Vous avez été expulsé de cette salle.', button_confirm: 'OK', } @@ -130,6 +122,6 @@ export const notifications = { export const files = { downloads: 'Téléchargements', - uploads: 'Télécharger', - upload_here: 'Cliquez ou faites glisser les fichiers ici pour les télécharger', + uploads: 'Envois', + upload_here: 'Cliquez ou faites glisser les fichiers ici pour les envoyer', } diff --git a/client/src/locale/ja-jp.ts b/client/src/locale/ja-jp.ts index d0289c25..e2b31a35 100644 --- a/client/src/locale/ja-jp.ts +++ b/client/src/locale/ja-jp.ts @@ -50,8 +50,8 @@ export const controls = { request: 'コントロールを要求', lock: 'コントロールをロック', unlock: 'コントロールのロックを解除', - has: 'あなたにコントロールがあります', - hasnot: 'あなたにはコントロールがありません', + has: 'あなたはコントロールを持っています', // TODO: 翻訳確認 + hasnot: 'あなたはコントロールを持っていません', // TODO: 翻訳確認 } export const locks = { diff --git a/client/src/locale/ko-kr.ts b/client/src/locale/ko-kr.ts index d4fd19f4..71b7ab50 100644 --- a/client/src/locale/ko-kr.ts +++ b/client/src/locale/ko-kr.ts @@ -50,6 +50,8 @@ export const controls = { request: '조작 권한 요청', lock: '조작 잠그기', unlock: '조작 잠금 해제하기', + has: '당신은 제어권을 가지고 있습니다', // TODO: 번역 확인 + hasnot: '당신은 제어권이 없습니다', // TODO: 번역 확인 } export const locks = { @@ -69,15 +71,14 @@ export const locks = { notif_locked: '방이 잠겼습니다', notif_unlocked: '방 잠금이 해제됐습니다', }, - // TODO - //file_transfer: { - // lock: 'Lock File Transfer (for users)', - // unlock: 'Unlock File Transfer (for users)', - // locked: 'File Transfer Locked (for users)', - // unlocked: 'File Transfer Unlocked (for users)', - // notif_locked: 'locked file transfer', - // notif_unlocked: 'unlocked file transfer', - //}, + file_transfer: { + lock: '파일 전송 잠그기 (사용자)', + unlock: '파일 전송 잠금 해제하기 (사용자)', + locked: '파일 전송이 잠겼습니다 (사용자)', + unlocked: '파일 전송 잠금이 해제됐습니다 (사용자)', + notif_locked: '파일 전송이 잠겼습니다', + notif_unlocked: '파일 전송 잠금이 해제됐습니다', + }, } export const setting = { @@ -122,5 +123,5 @@ export const notifications = { export const files = { downloads: '다운로드', uploads: '업로드', - upload_here: '업로드할 파일을 여기로 클릭하거나 드래그하세요.', + upload_here: '업로드할 파일을 여기로 클릭하거나 드래그하세요', } diff --git a/client/src/locale/nb-no.ts b/client/src/locale/nb-no.ts index ec3c9699..b5c70f35 100644 --- a/client/src/locale/nb-no.ts +++ b/client/src/locale/nb-no.ts @@ -2,8 +2,7 @@ export const logout = 'logg ut' export const unsupported = 'Denne nettleseren støtter ikke WebRTC' export const admin_loggedin = 'Du er innlogget som administrator' export const you = 'Deg' -// TODO -//export const somebody = 'Somebody' +export const somebody = 'Noen' export const send_a_message = 'Send en melding' export const side = { @@ -19,8 +18,7 @@ export const connect = { password: 'Passord', connect: 'Koble til', error: 'Innloggingsfeil', - // TODO - //empty_displayname: 'Display Name cannot be empty.', + empty_displayname: 'Visningsnavn kan ikke være tomt.', } export const context = { @@ -38,9 +36,9 @@ export const context = { kick_text: 'Vil du kaste ut {name}?', ban_title: 'Bannlys {name}?', ban_text: 'Vil du bannlyse {name}? Du vil måtte starte tjeneren på ny for å omgjøre dette.', - mute_title: 'Mute {name}?', + mute_title: 'Forstum {name}?', mute_text: 'Vil du forstumme {name}?', - unmute_title: 'Unmute {name}?', + unmute_title: 'Opphev forstummelse {name}?', unmute_text: 'Vil du oppheve forstummelsen av {name}?', button_yes: 'Ja', button_cancel: 'Avbryt', @@ -52,38 +50,35 @@ export const controls = { request: 'Forespør kontroll', lock: 'Lås kontrollen', unlock: 'Lås opp kontrollen', - // TODO - //has: 'You have control', - //hasnot: 'You do not have control', + has: 'Du har kontrollen', + hasnot: 'Du har ikke kontrollen', } export const locks = { - // TODO - //control: { - // lock: 'Lock Controls (for users)', - // unlock: 'Unlock Controls (for users)', - // locked: 'Controls Locked (for users)', - // unlocked: 'Controls Unlocked (for users)', - // notif_locked: 'locked controls for users', - // notif_unlocked: 'unlocked controls for users', - //}, + control: { + lock: 'Lås kontroller (for brukere)', + unlock: 'Lås opp kontroller (for brukere)', + locked: 'Kontroller låst (for brukere)', + unlocked: 'Kontroller opplåst (for brukere)', + notif_locked: 'låste kontroller for brukere', + notif_unlocked: 'låste opp kontroller for brukere', + }, login: { - lock: 'Lås rommet (for brukere)', + lock: 'Lås rom (for brukere)', unlock: 'Lås opp rommet (for brukere)', locked: 'Rom låst (for brukere)', unlocked: 'Rom opplåst (for brukere)', notif_locked: 'låste rommet', notif_unlocked: 'låste opp rommet', }, - // TODO - //file_transfer: { - // lock: 'Lock File Transfer (for users)', - // unlock: 'Unlock File Transfer (for users)', - // locked: 'File Transfer Locked (for users)', - // unlocked: 'File Transfer Unlocked (for users)', - // notif_locked: 'locked file transfer', - // notif_unlocked: 'unlocked file transfer', - //}, + file_transfer: { + lock: 'Lås filoverføring (for brukere)', + unlock: 'Lås opp filoverføring (for brukere)', + locked: 'Filoverføring låst (for brukere)', + unlocked: 'Filoverføring opplåst (for brukere)', + notif_locked: 'låste filoverføring', + notif_unlocked: 'låste opp filoverføring', + }, } export const setting = { @@ -93,18 +88,15 @@ export const setting = { ignore_emotes: 'Ignorer smilefjes', chat_sound: 'Sludringslyd', keyboard_layout: 'Tastaturoppsett', - // TODO - //broadcast_title: 'Live Broadcast', + broadcast_title: 'Direktesending', } export const connection = { logged_out: 'Du har blitt utlogget.', - // TODO - //reconnecting: 'Reconnecting', + reconnecting: 'Kobler til igjen...', connected: 'Tilkoblet', disconnected: 'Frakoblet', - // TODO - //kicked: 'You have been removed from this room.', + kicked: 'Du har blitt fjernet fra dette rommet.', button_confirm: 'OK', } @@ -129,7 +121,7 @@ export const notifications = { } export const files = { - downloads: 'Overførsler', - uploads: 'Overfør', - upload_here: 'Klik eller træk filer her for at uploade', + downloads: 'Nedlastinger', + uploads: 'Opplastinger', + upload_here: 'Klikk eller dra filer hit for å laste opp', } diff --git a/client/src/locale/ru-ru.ts b/client/src/locale/ru-ru.ts index cfb3a634..f4e15f97 100644 --- a/client/src/locale/ru-ru.ts +++ b/client/src/locale/ru-ru.ts @@ -71,15 +71,14 @@ export const locks = { notif_locked: 'комната закрыта', notif_unlocked: 'комната открыта', }, - // TODO - //file_transfer: { - // lock: 'Lock File Transfer (for users)', - // unlock: 'Unlock File Transfer (for users)', - // locked: 'File Transfer Locked (for users)', - // unlocked: 'File Transfer Unlocked (for users)', - // notif_locked: 'locked file transfer', - // notif_unlocked: 'unlocked file transfer', - //}, + file_transfer: { + lock: 'Заблокировать передачу файлов (для пользователей)', + unlock: 'Разблокировать передачу файлов (для пользователей)', + locked: 'Передача файлов заблокирована (для пользователей)', + unlocked: 'Передача файлов разблокирована (для пользователей)', + notif_locked: 'заблокирована передача файлов', + notif_unlocked: 'разблокирована передача файлов', + }, } export const setting = { diff --git a/client/src/locale/sk-sk.ts b/client/src/locale/sk-sk.ts index 5176daee..c5e23654 100644 --- a/client/src/locale/sk-sk.ts +++ b/client/src/locale/sk-sk.ts @@ -2,6 +2,7 @@ export const logout = 'odhlásiť sa' export const unsupported = 'tento prehliadač nepodporuje webrtc' export const admin_loggedin = 'Ste prihlásení/á ako administrátor' // export const you = '' // Incorrect in some translations! Cannot be used! +export const somebody = 'Niekto' // TODO: skontrolovať preklad // TODO //export const somebody = 'Somebody' export const send_a_message = 'Odoslať správu' @@ -52,6 +53,8 @@ export const controls = { request: 'Požiadať o ovládanie', lock: 'Zamknúť ovládanie', unlock: 'Odomknúť ovládanie', + has: 'Máte ovládanie', // TODO: skontrolovať preklad + hasnot: 'Nemáte ovládanie', // TODO: skontrolovať preklad // TODO //has: 'You have control', //hasnot: 'You do not have control', @@ -74,15 +77,14 @@ export const locks = { notif_locked: 'miestnosť bola zamknutá', notif_unlocked: 'miestnosť bola odomknutá', }, - // TODO - //file_transfer: { - // lock: 'Lock File Transfer (for users)', - // unlock: 'Unlock File Transfer (for users)', - // locked: 'File Transfer Locked (for users)', - // unlocked: 'File Transfer Unlocked (for users)', - // notif_locked: 'locked file transfer', - // notif_unlocked: 'unlocked file transfer', - //}, + file_transfer: { + lock: 'Zakázať prenos súborov (pre používateľov)', + unlock: 'Povoliť prenos súborov (pre používateľov)', + locked: 'Prenos súborov je zakázaný (pre používateľov)', + unlocked: 'Prenos súborov je povolený (pre používateľov)', + notif_locked: 'zakázal/a prenos súborov', + notif_unlocked: 'povolil/a prenos súborov', + }, } export const setting = { diff --git a/client/src/locale/sv-se.ts b/client/src/locale/sv-se.ts index f65cd4d5..2a25f906 100644 --- a/client/src/locale/sv-se.ts +++ b/client/src/locale/sv-se.ts @@ -2,8 +2,7 @@ export const logout = 'logga ut' export const unsupported = 'denna webbläsare har inte stöd för webrtc' export const admin_loggedin = 'Du är inloggad som en administratör' export const you = 'Du' -// TODO -//export const somebody = 'Somebody' +export const somebody = 'Någon' // TODO: kontrollera översättning export const send_a_message = 'Skicka ett meddelande' export const side = { @@ -19,8 +18,7 @@ export const connect = { password: 'Lösenord', connect: 'Anslut', error: 'Inloggningsfel', - // TODO - //empty_displayname: 'Display Name cannot be empty.', + empty_displayname: 'Visningsnamn kan inte vara tomt.', // TODO: kontrollera översättning } export const context = { @@ -52,21 +50,19 @@ export const controls = { request: 'Fråga om kontroll', lock: 'Lås kontrollen', unlock: 'Lås upp kontrollen', - // TODO - //has: 'You have control', - //hasnot: 'You do not have control', + has: 'Du har kontrollen', // TODO: kontrollera översättning + hasnot: 'Du har inte kontrollen', // TODO: kontrollera översättning } export const locks = { - // TODO - //control: { - // lock: 'Lock Controls (for users)', - // unlock: 'Unlock Controls (for users)', - // locked: 'Controls Locked (for users)', - // unlocked: 'Controls Unlocked (for users)', - // notif_locked: 'locked controls for users', - // notif_unlocked: 'unlocked controls for users', - //}, + control: { + lock: 'Lås kontroller (för användare)', + unlock: 'Lås upp kontroller (för användare)', + locked: 'Kontroller låsta (för användare)', + unlocked: 'Kontroller upplåsta (för användare)', + notif_locked: 'låste kontroller för användare', + notif_unlocked: 'låste upp kontroller för användare', + }, login: { lock: 'Lås rum (för användare)', unlock: 'Lås upp rummet (för användare)', @@ -75,37 +71,33 @@ export const locks = { notif_locked: 'låste rummet', notif_unlocked: 'låste upp rummet', }, - // TODO - //file_transfer: { - // lock: 'Lock File Transfer (for users)', - // unlock: 'Unlock File Transfer (for users)', - // locked: 'File Transfer Locked (for users)', - // unlocked: 'File Transfer Unlocked (for users)', - // notif_locked: 'locked file transfer', - // notif_unlocked: 'unlocked file transfer', - //}, + file_transfer: { + lock: 'Lås filöverföring (för användare)', + unlock: 'Lås upp filöverföring (för användare)', + locked: 'Filöverföring låst (för användare)', + unlocked: 'Filöverföring upplåst (för användare)', + notif_locked: 'låste filöverföring', + notif_unlocked: 'låste upp filöverföring', + }, } export const setting = { scroll: 'Scrollkänslighet', - scroll_invert: 'Vänd Scrollen', - autoplay: 'Automatisk uppspelning av Video', - ignore_emotes: 'Ignorera Emotes', - chat_sound: 'Spela Chatt Ljud', + scroll_invert: 'Vänd scrollen', + autoplay: 'Automatisk uppspelning av video', + ignore_emotes: 'Ignorera emojis', + chat_sound: 'Spela chattljud', keyboard_layout: 'Tangentbordslayout', - // TODO - //broadcast_title: 'Live Broadcast', + broadcast_title: 'Livesändning', } export const connection = { - logged_out: 'Du har blivit utloggad!', - // TODO - //reconnecting: 'Reconnecting', - connected: 'Du har loggats in', - disconnected: 'Du har blivit frånkopplad', - // TODO - //kicked: 'You have been removed from this room.', - button_confirm: 'Ok', + logged_out: 'Du har blivit utloggad.', + reconnecting: 'Återansluter...', + connected: 'Ansluten', + disconnected: 'Frånkopplad', + kicked: 'Du har blivit borttagen från detta rum.', + button_confirm: 'OK', } export const notifications = { diff --git a/client/src/locale/zh-cn.ts b/client/src/locale/zh-cn.ts index 7737f1d3..7bcc0549 100644 --- a/client/src/locale/zh-cn.ts +++ b/client/src/locale/zh-cn.ts @@ -1,6 +1,6 @@ export const logout = '登出' export const unsupported = '你的浏览器不支持 WebRTC' -export const admin_loggedin = '您以管理钻身份登陆' +export const admin_loggedin = '您以管理员身份登录' export const you = '你' export const somebody = '某人' export const send_a_message = '发送消息' @@ -13,7 +13,7 @@ export const side = { export const connect = { login_title: '登录', - invitation_title: '你已被邀请到这个房间', + invitation_title: '你已被邀请加入此房间', displayname: '您的姓名', password: '密码', connect: '连接', @@ -27,19 +27,19 @@ export const context = { mute: '静音', unmute: '取消静音', release: '强制释放控制', - take: '牵制控制', - give: '给予控制', + take: '强制接管控制', + give: '移交控制', kick: '踢出', - ban: '禁止 IP', + ban: '封禁 IP', confirm: { kick_title: '踢出 {name}?', - kick_text: '你确定你要替 {name}?', - ban_title: '禁止 {name}?', - ban_text: '你是否想禁止 {name}? 你将需要重新启动服务器来撤销这一做法.', + kick_text: '你确定要踢出 {name} 吗?', + ban_title: '封禁 {name}?', + ban_text: '你确定要封禁 {name} 吗?如需解除封禁需重启服务。', mute_title: '静音 {name}?', - mute_text: '你确定你要精印吗 {name}?', + mute_text: '你确定要将 {name} 静音吗?', unmute_title: '取消静音 {name}?', - unmute_text: '你想去下静音吗 {name}?', + unmute_text: '你确定要取消 {name} 的静音吗?', button_yes: '是', button_cancel: '取消', }, @@ -50,46 +50,45 @@ export const controls = { request: '请求控制', lock: '锁定控制', unlock: '解锁控制', - has: '你有控制', - hasnot: '你没有控制', + has: '你拥有控制权', + hasnot: '你没有控制权', } export const locks = { control: { - lock: '对所有用户进行锁定控制', - unlock: '对所有用户进行解锁控制', - locked: '锁定的控制装置', - unlocked: '解锁的控制装置', - notif_locked: '为用户锁定控制', - notif_unlocked: '为用户解锁控制', + lock: '锁定所有用户的控制', + unlock: '解锁所有用户的控制', + locked: '控制已锁定', + unlocked: '控制已解锁', + notif_locked: '已为用户锁定控制', + notif_unlocked: '已为用户解锁控制', }, login: { - lock: '所有用户的锁定室', - unlock: '所有用户的解锁室', - locked: '为所有用户锁定的房间', - unlocked: '为所有用户解锁的房间', - notif_locked: '锁上房间', - notif_unlocked: '解锁房间', + lock: '锁定所有用户的房间', + unlock: '解锁所有用户的房间', + locked: '房间已为所有用户锁定', + unlocked: '房间已为所有用户解锁', + notif_locked: '房间已锁定', + notif_unlocked: '房间已解锁', + }, + file_transfer: { + lock: '锁定文件传输(对用户)', + unlock: '解锁文件传输(对用户)', + locked: '文件传输已锁定(对用户)', + unlocked: '文件传输已解锁(对用户)', + notif_locked: '已锁定文件传输', + notif_unlocked: '已解锁文件传输', }, - // TODO - //file_transfer: { - // lock: 'Lock File Transfer (for users)', - // unlock: 'Unlock File Transfer (for users)', - // locked: 'File Transfer Locked (for users)', - // unlocked: 'File Transfer Unlocked (for users)', - // notif_locked: 'locked file transfer', - // notif_unlocked: 'unlocked file transfer', - //}, } export const setting = { - scroll: '滚动敏感度', - scroll_invert: '反转滚动敏感度', + scroll: '滚动灵敏度', + scroll_invert: '反转滚动方向', autoplay: '自动播放视频', ignore_emotes: '忽略表情符号', - chat_sound: '播放聊天声音', + chat_sound: '播放聊天提示音', keyboard_layout: '键盘布局', - broadcast_title: '现场流媒体', + broadcast_title: '直播流', } export const connection = { @@ -98,31 +97,31 @@ export const connection = { connected: '已连接', disconnected: '已断开', kicked: '你已被踢出', - button_confirm: '好的', + button_confirm: '确定', } export const notifications = { connected: '{name} 已连接', disconnected: '{name} 已断开', - controls_taken: '{name} 采取了控制', - controls_taken_force: '被迫接受控制', - controls_taken_steal: '掌握控制权 从 {name}', - controls_released: '{name} 释放控制', - controls_released_force: '强制解除控制', - controls_released_steal: '强制解除控制 从 {name}', - controls_given: '将控制权交给 {name}', + controls_taken: '{name} 获得了控制权', + controls_taken_force: '强制获得控制权', + controls_taken_steal: '从 {name} 夺取了控制权', + controls_released: '{name} 释放了控制权', + controls_released_force: '强制释放控制权', + controls_released_steal: '从 {name} 强制释放控制权', + controls_given: '将控制权交给了 {name}', controls_has: '{name} 拥有控制权', - controls_has_alt: '但我让那个人知道你想要它', - controls_requesting: '{name} 正在请求控制', - resolution: '将分辨率改为 {width}x{height}@{rate}', - banned: '被禁止 {name}', - kicked: '被踢的 {name}', - muted: '鸟粪 {name}', - unmuted: '取消静音 {name}', + controls_has_alt: '但我已通知对方你想要控制权', + controls_requesting: '{name} 正在请求控制权', + resolution: '分辨率已更改为 {width}x{height}@{rate}', + banned: '{name} 已被封禁', + kicked: '{name} 已被踢出', + muted: '{name} 已被静音', + unmuted: '{name} 已取消静音', } export const files = { downloads: '下载', uploads: '上传', - upload_here: '点击或拖动文件到这里来上传', + upload_here: '点击或拖动文件到此处上传', }