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
This commit is contained in:
Dark 2026-02-18 00:08:50 +08:00 committed by GitHub
parent bc19ab866f
commit 6c743c9c73
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
11 changed files with 242 additions and 272 deletions

View file

@ -50,6 +50,8 @@ export const controls = {
request: 'Steuerung anfordern', request: 'Steuerung anfordern',
lock: 'Steuerung sperren', lock: 'Steuerung sperren',
unlock: 'Steuerung entsperren', unlock: 'Steuerung entsperren',
has: 'Du hast die Kontrolle', // TODO: prüfen Übersetzung
hasnot: 'Du hast keine Kontrolle', // TODO: prüfen Übersetzung
} }
export const locks = { export const locks = {

View file

@ -2,8 +2,7 @@ export const logout = 'salir'
export const unsupported = 'este navegador no soporta webrtc' export const unsupported = 'este navegador no soporta webrtc'
export const admin_loggedin = 'Registrado como admin' export const admin_loggedin = 'Registrado como admin'
export const you = 'Tú' export const you = 'Tú'
// TODO export const somebody = 'Alguien'
//export const somebody = 'Somebody'
export const send_a_message = 'Enviar un mensaje' export const send_a_message = 'Enviar un mensaje'
export const side = { export const side = {
@ -19,8 +18,7 @@ export const connect = {
password: 'Contraseña', password: 'Contraseña',
connect: 'Conectar', connect: 'Conectar',
error: 'Error de login', error: 'Error de login',
// TODO empty_displayname: 'El nombre para mostrar no puede estar vacío.',
//empty_displayname: 'Display Name cannot be empty.',
} }
export const context = { export const context = {
@ -37,7 +35,7 @@ export const context = {
kick_title: 'Echar a {name}?', kick_title: 'Echar a {name}?',
kick_text: 'Seguro que quiere echar a {name}?', kick_text: 'Seguro que quiere echar a {name}?',
ban_title: 'Bloquear 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_title: 'Silenciar a {name}?',
mute_text: 'Seguro que quieres silenciar a {name}?', mute_text: 'Seguro que quieres silenciar a {name}?',
unmute_title: 'Dejar de silenciar a {name}?', unmute_title: 'Dejar de silenciar a {name}?',
@ -48,25 +46,23 @@ export const context = {
} }
export const controls = { export const controls = {
release: 'Controles liberador', release: 'Liberar controles',
request: 'Controles solicitados', request: 'Solicitar controles',
lock: 'Controles bloqueados', lock: 'Bloquear controles',
unlock: 'Controles desbloqueados', unlock: 'Desbloquear controles',
// TODO has: 'Tienes el control',
//has: 'You have control', hasnot: 'No tienes el control',
//hasnot: 'You do not have control',
} }
export const locks = { export const locks = {
// TODO control: {
//control: { lock: 'Bloquear controles (para usuarios)',
// lock: 'Lock Controls (for users)', unlock: 'Desbloquear controles (para usuarios)',
// unlock: 'Unlock Controls (for users)', locked: 'Controles bloqueados (para usuarios)',
// locked: 'Controls Locked (for users)', unlocked: 'Controles desbloqueados (para usuarios)',
// unlocked: 'Controls Unlocked (for users)', notif_locked: 'controles bloqueados para usuarios',
// notif_locked: 'locked controls for users', notif_unlocked: 'controles desbloqueados para usuarios',
// notif_unlocked: 'unlocked controls for users', },
//},
login: { login: {
lock: 'Bloquear sala (para usuarios)', lock: 'Bloquear sala (para usuarios)',
unlock: 'Desbloquear sala (para usuarios)', unlock: 'Desbloquear sala (para usuarios)',
@ -75,61 +71,57 @@ export const locks = {
notif_locked: 'bloqueó la sala', notif_locked: 'bloqueó la sala',
notif_unlocked: 'desbloqueó la sala', notif_unlocked: 'desbloqueó la sala',
}, },
// TODO file_transfer: {
//file_transfer: { lock: 'Bloquear transferencia de archivos (para usuarios)',
// lock: 'Lock File Transfer (for users)', unlock: 'Desbloquear transferencia de archivos (para usuarios)',
// unlock: 'Unlock File Transfer (for users)', locked: 'Transferencia de archivos bloqueada (para usuarios)',
// locked: 'File Transfer Locked (for users)', unlocked: 'Transferencia de archivos desbloqueada (para usuarios)',
// unlocked: 'File Transfer Unlocked (for users)', notif_locked: 'transferencia de archivos bloqueada',
// notif_locked: 'locked file transfer', notif_unlocked: 'transferencia de archivos desbloqueada',
// notif_unlocked: 'unlocked file transfer', },
//},
} }
export const setting = { export const setting = {
scroll: 'Sensibilidad del Scroll', scroll: 'Sensibilidad del scroll',
scroll_invert: 'Invertir Scroll', scroll_invert: 'Invertir scroll',
autoplay: 'Auto Reproducir Video', autoplay: 'Reproducir video automáticamente',
ignore_emotes: 'Ignorar Emotes', ignore_emotes: 'Ignorar emoticonos',
chat_sound: 'Reproducir Sonidos Chat', chat_sound: 'Reproducir sonido del chat',
keyboard_layout: 'Keyboard Layout', keyboard_layout: 'Diseño del teclado',
// TODO broadcast_title: 'Transmisión en vivo',
//broadcast_title: 'Live Broadcast',
} }
export const connection = { export const connection = {
logged_out: 'Has salido!', logged_out: 'Has sido desconectado.',
// TODO reconnecting: 'Reconectando...',
//reconnecting: 'Reconnecting', connected: 'Conectado',
connected: 'Connectado correctamente', disconnected: 'Desconectado',
disconnected: 'Has sido desconectado', kicked: 'Has sido expulsado de esta sala.',
// TODO button_confirm: 'OK',
//kicked: 'You have been removed from this room.',
button_confirm: 'De acuerdo',
} }
export const notifications = { export const notifications = {
connected: '{name} se ha conectado', connected: '{name} se conectó',
disconnected: '{name} se ha desconnectado', disconnected: '{name} se desconectó',
controls_taken: '{name} tiene los controles', controls_taken: '{name} tomó los controles',
controls_taken_force: 'controles confiscados', controls_taken_force: 'tomó los controles por la fuerza',
controls_taken_steal: 'cogió los controles de {name}', controls_taken_steal: 'tomó los controles de {name}',
controls_released: '{name} ha liberado los controles', controls_released: '{name} liberó los controles',
controls_released_force: 'controles liberados', controls_released_force: 'liberó los controles por la fuerza',
controls_released_steal: 'controles liberados de {name}', controls_released_steal: 'liberó los controles de {name}',
controls_given: 'controles asignados a {name}', controls_given: 'dio los controles a {name}',
controls_has: '{name} tiene los controles', controls_has: '{name} tiene los controles',
controls_has_alt: 'Pero le diré que quieres los controles', controls_has_alt: 'Pero le hice saber a la persona que los querías',
controls_requesting: '{name} quiere los controles', controls_requesting: '{name} está solicitando los controles',
resolution: 'resolución cambiada a {width}x{height}@{rate}', resolution: 'cambió la resolución a {width}x{height}@{rate}',
banned: '{name} bloqueado', banned: 'bloqueó a {name}',
kicked: '{name} expulsado', kicked: 'expulsó a {name}',
muted: '{name} silenciado', muted: 'silenció a {name}',
unmuted: '{name} no silenciado', unmuted: 'quitó el silencio a {name}',
} }
export const files = { export const files = {
downloads: 'Descargas', downloads: 'Descargas',
uploads: 'Cargar', uploads: 'Subidas',
upload_here: 'Haga clic o arrastre los archivos aquí para cargarlos', upload_here: 'Haz clic o arrastra archivos aquí para subirlos',
} }

View file

@ -2,7 +2,7 @@ export const logout = 'kirjaudu ulos'
export const unsupported = 'Tämä nettiselain ei tue WebRTC:tä' export const unsupported = 'Tämä nettiselain ei tue WebRTC:tä'
export const admin_loggedin = 'Sinä olet kirjautunut valvojana' export const admin_loggedin = 'Sinä olet kirjautunut valvojana'
export const you = 'Sinä' 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 send_a_message = 'Lähetä viesti'
export const side = { export const side = {
@ -71,15 +71,14 @@ export const locks = {
notif_locked: 'lukittu huone', notif_locked: 'lukittu huone',
notif_unlocked: 'vapautettu huone', notif_unlocked: 'vapautettu huone',
}, },
// TODO file_transfer: {
//file_transfer: { lock: 'Lukitse tiedostonsiirto (käyttäjiltä)',
// lock: 'Lock File Transfer (for users)', unlock: 'Vapauta tiedostonsiirto (käyttäjiltä)',
// unlock: 'Unlock File Transfer (for users)', locked: 'Tiedostonsiirto lukittu (käyttäjiltä)',
// locked: 'File Transfer Locked (for users)', unlocked: 'Tiedostonsiirto vapautettu (käyttäjiltä)',
// unlocked: 'File Transfer Unlocked (for users)', notif_locked: 'tiedostonsiirto lukittu',
// notif_locked: 'locked file transfer', notif_unlocked: 'tiedostonsiirto vapautettu',
// notif_unlocked: 'unlocked file transfer', },
//},
} }
export const setting = { export const setting = {

View file

@ -2,8 +2,7 @@ export const logout = 'Se déconnecter'
export const unsupported = 'ce navigateur ne prend pas en charge WebRTC' export const unsupported = 'ce navigateur ne prend pas en charge WebRTC'
export const admin_loggedin = "Vous êtes connecté en tant qu'admin" export const admin_loggedin = "Vous êtes connecté en tant qu'admin"
export const you = 'Vous' export const you = 'Vous'
// TODO export const somebody = 'Quelqu\'un' // TODO: vérifier la traduction
//export const somebody = 'Somebody'
export const send_a_message = 'Envoyer un message' export const send_a_message = 'Envoyer un message'
export const side = { export const side = {
@ -19,8 +18,7 @@ export const connect = {
password: 'Mot de passe', password: 'Mot de passe',
connect: 'Connexion', connect: 'Connexion',
error: 'Erreur de connexion', error: 'Erreur de connexion',
// TODO empty_displayname: 'Le nom d\'affichage ne peut pas être vide.', // TODO: vérifier la traduction
//empty_displayname: 'Display Name cannot be empty.',
} }
export const context = { export const context = {
@ -52,21 +50,19 @@ export const controls = {
request: 'Demander le contrôle', request: 'Demander le contrôle',
lock: 'Vérouiller le contrôle', lock: 'Vérouiller le contrôle',
unlock: 'Débloquer le contrôle', unlock: 'Débloquer le contrôle',
// TODO has: 'Vous avez le contrôle', // TODO: vérifier la traduction
// has: 'You have control', hasnot: 'Vous n\'avez pas le contrôle', // TODO: vérifier la traduction
// hasnot: 'You do not have control',
} }
export const locks = { export const locks = {
// TODO control: {
//control: { lock: 'Verrouiller les contrôles (pour les utilisateurs)',
// lock: 'Lock Controls (for users)', unlock: 'Déverrouiller les contrôles (pour les utilisateurs)',
// unlock: 'Unlock Controls (for users)', locked: 'Contrôles verrouillés (pour les utilisateurs)',
// locked: 'Controls Locked (for users)', unlocked: 'Contrôles déverrouillés (pour les utilisateurs)',
// unlocked: 'Controls Unlocked (for users)', notif_locked: 'contrôles verrouillés pour les utilisateurs',
// notif_locked: 'locked controls for users', notif_unlocked: 'contrôles déverrouillés pour les utilisateurs',
// notif_unlocked: 'unlocked controls for users', },
//},
login: { login: {
lock: 'Vérouiller la salle (pour les utilisateurs)', lock: 'Vérouiller la salle (pour les utilisateurs)',
unlock: 'Dé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_locked: 'a vérouillé la salle',
notif_unlocked: 'a dévérouillé la salle', notif_unlocked: 'a dévérouillé la salle',
}, },
// TODO file_transfer: {
//file_transfer: { lock: 'Verrouiller le transfert de fichiers (pour les utilisateurs)',
// lock: 'Lock File Transfer (for users)', unlock: 'Déverrouiller le transfert de fichiers (pour les utilisateurs)',
// unlock: 'Unlock File Transfer (for users)', locked: 'Transfert de fichiers verrouillé (pour les utilisateurs)',
// locked: 'File Transfer Locked (for users)', unlocked: 'Transfert de fichiers déverrouillé (pour les utilisateurs)',
// unlocked: 'File Transfer Unlocked (for users)', notif_locked: 'transfert de fichiers verrouillé',
// notif_locked: 'locked file transfer', notif_unlocked: 'transfert de fichiers déverrouillé',
// notif_unlocked: 'unlocked file transfer', },
//},
} }
export const setting = { export const setting = {
scroll: 'Sensibilité de défilement (scroll)', scroll: 'Sensibilité de défilement',
scroll_invert: 'Inverser le défilement (scroll)', scroll_invert: 'Inverser le défilement',
autoplay: 'Jouer automatiquement la vidéo', autoplay: 'Lecture automatique de la vidéo',
ignore_emotes: 'Ignorer les Emotes', ignore_emotes: 'Ignorer les émoticônes',
chat_sound: 'Jouer le son du tchat', chat_sound: 'Son du chat',
keyboard_layout: 'Langue du clavier', keyboard_layout: 'Disposition du clavier',
// TODO broadcast_title: 'Diffusion en direct',
//broadcast_title: 'Live Broadcast',
} }
export const connection = { export const connection = {
logged_out: 'Vous avez été déconnecté.', logged_out: 'Vous avez été déconnecté.',
// TODO reconnecting: 'Reconnexion...',
//reconnecting: 'Reconnecting',
connected: 'Connecté', connected: 'Connecté',
disconnected: 'Déconnecté', disconnected: 'Déconnecté',
// TODO kicked: 'Vous avez été expulsé de cette salle.',
//kicked: 'You have been removed from this room.',
button_confirm: 'OK', button_confirm: 'OK',
} }
@ -130,6 +122,6 @@ export const notifications = {
export const files = { export const files = {
downloads: 'Téléchargements', downloads: 'Téléchargements',
uploads: 'Télécharger', uploads: 'Envois',
upload_here: 'Cliquez ou faites glisser les fichiers ici pour les télécharger', upload_here: 'Cliquez ou faites glisser les fichiers ici pour les envoyer',
} }

View file

@ -50,8 +50,8 @@ export const controls = {
request: 'コントロールを要求', request: 'コントロールを要求',
lock: 'コントロールをロック', lock: 'コントロールをロック',
unlock: 'コントロールのロックを解除', unlock: 'コントロールのロックを解除',
has: 'あなたにコントロールがあります', has: 'あなたはコントロールを持っています', // TODO: 翻訳確認
hasnot: 'あなたにはコントロールがありません', hasnot: 'あなたはコントロールを持っていません', // TODO: 翻訳確認
} }
export const locks = { export const locks = {

View file

@ -50,6 +50,8 @@ export const controls = {
request: '조작 권한 요청', request: '조작 권한 요청',
lock: '조작 잠그기', lock: '조작 잠그기',
unlock: '조작 잠금 해제하기', unlock: '조작 잠금 해제하기',
has: '당신은 제어권을 가지고 있습니다', // TODO: 번역 확인
hasnot: '당신은 제어권이 없습니다', // TODO: 번역 확인
} }
export const locks = { export const locks = {
@ -69,15 +71,14 @@ export const locks = {
notif_locked: '방이 잠겼습니다', notif_locked: '방이 잠겼습니다',
notif_unlocked: '방 잠금이 해제됐습니다', notif_unlocked: '방 잠금이 해제됐습니다',
}, },
// TODO file_transfer: {
//file_transfer: { lock: '파일 전송 잠그기 (사용자)',
// lock: 'Lock File Transfer (for users)', unlock: '파일 전송 잠금 해제하기 (사용자)',
// unlock: 'Unlock File Transfer (for users)', locked: '파일 전송이 잠겼습니다 (사용자)',
// locked: 'File Transfer Locked (for users)', unlocked: '파일 전송 잠금이 해제됐습니다 (사용자)',
// unlocked: 'File Transfer Unlocked (for users)', notif_locked: '파일 전송이 잠겼습니다',
// notif_locked: 'locked file transfer', notif_unlocked: '파일 전송 잠금이 해제됐습니다',
// notif_unlocked: 'unlocked file transfer', },
//},
} }
export const setting = { export const setting = {
@ -122,5 +123,5 @@ export const notifications = {
export const files = { export const files = {
downloads: '다운로드', downloads: '다운로드',
uploads: '업로드', uploads: '업로드',
upload_here: '업로드할 파일을 여기로 클릭하거나 드래그하세요.', upload_here: '업로드할 파일을 여기로 클릭하거나 드래그하세요',
} }

View file

@ -2,8 +2,7 @@ export const logout = 'logg ut'
export const unsupported = 'Denne nettleseren støtter ikke WebRTC' export const unsupported = 'Denne nettleseren støtter ikke WebRTC'
export const admin_loggedin = 'Du er innlogget som administrator' export const admin_loggedin = 'Du er innlogget som administrator'
export const you = 'Deg' export const you = 'Deg'
// TODO export const somebody = 'Noen'
//export const somebody = 'Somebody'
export const send_a_message = 'Send en melding' export const send_a_message = 'Send en melding'
export const side = { export const side = {
@ -19,8 +18,7 @@ export const connect = {
password: 'Passord', password: 'Passord',
connect: 'Koble til', connect: 'Koble til',
error: 'Innloggingsfeil', error: 'Innloggingsfeil',
// TODO empty_displayname: 'Visningsnavn kan ikke være tomt.',
//empty_displayname: 'Display Name cannot be empty.',
} }
export const context = { export const context = {
@ -38,9 +36,9 @@ export const context = {
kick_text: 'Vil du kaste ut {name}?', kick_text: 'Vil du kaste ut {name}?',
ban_title: 'Bannlys {name}?', ban_title: 'Bannlys {name}?',
ban_text: 'Vil du bannlyse {name}? Du vil måtte starte tjeneren på ny for å omgjøre dette.', 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}?', mute_text: 'Vil du forstumme {name}?',
unmute_title: 'Unmute {name}?', unmute_title: 'Opphev forstummelse {name}?',
unmute_text: 'Vil du oppheve forstummelsen av {name}?', unmute_text: 'Vil du oppheve forstummelsen av {name}?',
button_yes: 'Ja', button_yes: 'Ja',
button_cancel: 'Avbryt', button_cancel: 'Avbryt',
@ -52,38 +50,35 @@ export const controls = {
request: 'Forespør kontroll', request: 'Forespør kontroll',
lock: 'Lås kontrollen', lock: 'Lås kontrollen',
unlock: 'Lås opp kontrollen', unlock: 'Lås opp kontrollen',
// TODO has: 'Du har kontrollen',
//has: 'You have control', hasnot: 'Du har ikke kontrollen',
//hasnot: 'You do not have control',
} }
export const locks = { export const locks = {
// TODO control: {
//control: { lock: 'Lås kontroller (for brukere)',
// lock: 'Lock Controls (for users)', unlock: 'Lås opp kontroller (for brukere)',
// unlock: 'Unlock Controls (for users)', locked: 'Kontroller låst (for brukere)',
// locked: 'Controls Locked (for users)', unlocked: 'Kontroller opplåst (for brukere)',
// unlocked: 'Controls Unlocked (for users)', notif_locked: 'låste kontroller for brukere',
// notif_locked: 'locked controls for users', notif_unlocked: 'låste opp kontroller for brukere',
// notif_unlocked: 'unlocked controls for users', },
//},
login: { login: {
lock: 'Lås rommet (for brukere)', lock: 'Lås rom (for brukere)',
unlock: 'Lås opp rommet (for brukere)', unlock: 'Lås opp rommet (for brukere)',
locked: 'Rom låst (for brukere)', locked: 'Rom låst (for brukere)',
unlocked: 'Rom opplåst (for brukere)', unlocked: 'Rom opplåst (for brukere)',
notif_locked: 'låste rommet', notif_locked: 'låste rommet',
notif_unlocked: 'låste opp rommet', notif_unlocked: 'låste opp rommet',
}, },
// TODO file_transfer: {
//file_transfer: { lock: 'Lås filoverføring (for brukere)',
// lock: 'Lock File Transfer (for users)', unlock: 'Lås opp filoverføring (for brukere)',
// unlock: 'Unlock File Transfer (for users)', locked: 'Filoverføring låst (for brukere)',
// locked: 'File Transfer Locked (for users)', unlocked: 'Filoverføring opplåst (for brukere)',
// unlocked: 'File Transfer Unlocked (for users)', notif_locked: 'låste filoverføring',
// notif_locked: 'locked file transfer', notif_unlocked: 'låste opp filoverføring',
// notif_unlocked: 'unlocked file transfer', },
//},
} }
export const setting = { export const setting = {
@ -93,18 +88,15 @@ export const setting = {
ignore_emotes: 'Ignorer smilefjes', ignore_emotes: 'Ignorer smilefjes',
chat_sound: 'Sludringslyd', chat_sound: 'Sludringslyd',
keyboard_layout: 'Tastaturoppsett', keyboard_layout: 'Tastaturoppsett',
// TODO broadcast_title: 'Direktesending',
//broadcast_title: 'Live Broadcast',
} }
export const connection = { export const connection = {
logged_out: 'Du har blitt utlogget.', logged_out: 'Du har blitt utlogget.',
// TODO reconnecting: 'Kobler til igjen...',
//reconnecting: 'Reconnecting',
connected: 'Tilkoblet', connected: 'Tilkoblet',
disconnected: 'Frakoblet', disconnected: 'Frakoblet',
// TODO kicked: 'Du har blitt fjernet fra dette rommet.',
//kicked: 'You have been removed from this room.',
button_confirm: 'OK', button_confirm: 'OK',
} }
@ -129,7 +121,7 @@ export const notifications = {
} }
export const files = { export const files = {
downloads: 'Overførsler', downloads: 'Nedlastinger',
uploads: 'Overfør', uploads: 'Opplastinger',
upload_here: 'Klik eller træk filer her for at uploade', upload_here: 'Klikk eller dra filer hit for å laste opp',
} }

View file

@ -71,15 +71,14 @@ export const locks = {
notif_locked: 'комната закрыта', notif_locked: 'комната закрыта',
notif_unlocked: 'комната открыта', notif_unlocked: 'комната открыта',
}, },
// TODO file_transfer: {
//file_transfer: { lock: 'Заблокировать передачу файлов (для пользователей)',
// lock: 'Lock File Transfer (for users)', unlock: 'Разблокировать передачу файлов (для пользователей)',
// unlock: 'Unlock File Transfer (for users)', locked: 'Передача файлов заблокирована (для пользователей)',
// locked: 'File Transfer Locked (for users)', unlocked: 'Передача файлов разблокирована (для пользователей)',
// unlocked: 'File Transfer Unlocked (for users)', notif_locked: 'заблокирована передача файлов',
// notif_locked: 'locked file transfer', notif_unlocked: 'разблокирована передача файлов',
// notif_unlocked: 'unlocked file transfer', },
//},
} }
export const setting = { export const setting = {

View file

@ -2,6 +2,7 @@ export const logout = 'odhlásiť sa'
export const unsupported = 'tento prehliadač nepodporuje webrtc' export const unsupported = 'tento prehliadač nepodporuje webrtc'
export const admin_loggedin = 'Ste prihlásení/á ako administrátor' export const admin_loggedin = 'Ste prihlásení/á ako administrátor'
// export const you = '' // Incorrect in some translations! Cannot be used! // export const you = '' // Incorrect in some translations! Cannot be used!
export const somebody = 'Niekto' // TODO: skontrolovať preklad
// TODO // TODO
//export const somebody = 'Somebody' //export const somebody = 'Somebody'
export const send_a_message = 'Odoslať správu' export const send_a_message = 'Odoslať správu'
@ -52,6 +53,8 @@ export const controls = {
request: 'Požiadať o ovládanie', request: 'Požiadať o ovládanie',
lock: 'Zamknúť ovládanie', lock: 'Zamknúť ovládanie',
unlock: 'Odomknúť ovládanie', unlock: 'Odomknúť ovládanie',
has: 'Máte ovládanie', // TODO: skontrolovať preklad
hasnot: 'Nemáte ovládanie', // TODO: skontrolovať preklad
// TODO // TODO
//has: 'You have control', //has: 'You have control',
//hasnot: 'You do not have control', //hasnot: 'You do not have control',
@ -74,15 +77,14 @@ export const locks = {
notif_locked: 'miestnosť bola zamknutá', notif_locked: 'miestnosť bola zamknutá',
notif_unlocked: 'miestnosť bola odomknutá', notif_unlocked: 'miestnosť bola odomknutá',
}, },
// TODO file_transfer: {
//file_transfer: { lock: 'Zakázať prenos súborov (pre používateľov)',
// lock: 'Lock File Transfer (for users)', unlock: 'Povoliť prenos súborov (pre používateľov)',
// unlock: 'Unlock File Transfer (for users)', locked: 'Prenos súborov je zakázaný (pre používateľov)',
// locked: 'File Transfer Locked (for users)', unlocked: 'Prenos súborov je povolený (pre používateľov)',
// unlocked: 'File Transfer Unlocked (for users)', notif_locked: 'zakázal/a prenos súborov',
// notif_locked: 'locked file transfer', notif_unlocked: 'povolil/a prenos súborov',
// notif_unlocked: 'unlocked file transfer', },
//},
} }
export const setting = { export const setting = {

View file

@ -2,8 +2,7 @@ export const logout = 'logga ut'
export const unsupported = 'denna webbläsare har inte stöd för webrtc' 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 admin_loggedin = 'Du är inloggad som en administratör'
export const you = 'Du' export const you = 'Du'
// TODO export const somebody = 'Någon' // TODO: kontrollera översättning
//export const somebody = 'Somebody'
export const send_a_message = 'Skicka ett meddelande' export const send_a_message = 'Skicka ett meddelande'
export const side = { export const side = {
@ -19,8 +18,7 @@ export const connect = {
password: 'Lösenord', password: 'Lösenord',
connect: 'Anslut', connect: 'Anslut',
error: 'Inloggningsfel', error: 'Inloggningsfel',
// TODO empty_displayname: 'Visningsnamn kan inte vara tomt.', // TODO: kontrollera översättning
//empty_displayname: 'Display Name cannot be empty.',
} }
export const context = { export const context = {
@ -52,21 +50,19 @@ export const controls = {
request: 'Fråga om kontroll', request: 'Fråga om kontroll',
lock: 'Lås kontrollen', lock: 'Lås kontrollen',
unlock: 'Lås upp kontrollen', unlock: 'Lås upp kontrollen',
// TODO has: 'Du har kontrollen', // TODO: kontrollera översättning
//has: 'You have control', hasnot: 'Du har inte kontrollen', // TODO: kontrollera översättning
//hasnot: 'You do not have control',
} }
export const locks = { export const locks = {
// TODO control: {
//control: { lock: 'Lås kontroller (för användare)',
// lock: 'Lock Controls (for users)', unlock: 'Lås upp kontroller (för användare)',
// unlock: 'Unlock Controls (for users)', locked: 'Kontroller låsta (för användare)',
// locked: 'Controls Locked (for users)', unlocked: 'Kontroller upplåsta (för användare)',
// unlocked: 'Controls Unlocked (for users)', notif_locked: 'låste kontroller för användare',
// notif_locked: 'locked controls for users', notif_unlocked: 'låste upp kontroller för användare',
// notif_unlocked: 'unlocked controls for users', },
//},
login: { login: {
lock: 'Lås rum (för användare)', lock: 'Lås rum (för användare)',
unlock: 'Lås upp rummet (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_locked: 'låste rummet',
notif_unlocked: 'låste upp rummet', notif_unlocked: 'låste upp rummet',
}, },
// TODO file_transfer: {
//file_transfer: { lock: 'Lås filöverföring (för användare)',
// lock: 'Lock File Transfer (for users)', unlock: 'Lås upp filöverföring (för användare)',
// unlock: 'Unlock File Transfer (for users)', locked: 'Filöverföring låst (för användare)',
// locked: 'File Transfer Locked (for users)', unlocked: 'Filöverföring upplåst (för användare)',
// unlocked: 'File Transfer Unlocked (for users)', notif_locked: 'låste filöverföring',
// notif_locked: 'locked file transfer', notif_unlocked: 'låste upp filöverföring',
// notif_unlocked: 'unlocked file transfer', },
//},
} }
export const setting = { export const setting = {
scroll: 'Scrollkänslighet', scroll: 'Scrollkänslighet',
scroll_invert: 'Vänd Scrollen', scroll_invert: 'Vänd scrollen',
autoplay: 'Automatisk uppspelning av Video', autoplay: 'Automatisk uppspelning av video',
ignore_emotes: 'Ignorera Emotes', ignore_emotes: 'Ignorera emojis',
chat_sound: 'Spela Chatt Ljud', chat_sound: 'Spela chattljud',
keyboard_layout: 'Tangentbordslayout', keyboard_layout: 'Tangentbordslayout',
// TODO broadcast_title: 'Livesändning',
//broadcast_title: 'Live Broadcast',
} }
export const connection = { export const connection = {
logged_out: 'Du har blivit utloggad!', logged_out: 'Du har blivit utloggad.',
// TODO reconnecting: 'Återansluter...',
//reconnecting: 'Reconnecting', connected: 'Ansluten',
connected: 'Du har loggats in', disconnected: 'Frånkopplad',
disconnected: 'Du har blivit frånkopplad', kicked: 'Du har blivit borttagen från detta rum.',
// TODO button_confirm: 'OK',
//kicked: 'You have been removed from this room.',
button_confirm: 'Ok',
} }
export const notifications = { export const notifications = {

View file

@ -1,6 +1,6 @@
export const logout = '登出' export const logout = '登出'
export const unsupported = '你的浏览器不支持 WebRTC' export const unsupported = '你的浏览器不支持 WebRTC'
export const admin_loggedin = '您以管理钻身份登陆' export const admin_loggedin = '您以管理员身份登录'
export const you = '你' export const you = '你'
export const somebody = '某人' export const somebody = '某人'
export const send_a_message = '发送消息' export const send_a_message = '发送消息'
@ -13,7 +13,7 @@ export const side = {
export const connect = { export const connect = {
login_title: '登录', login_title: '登录',
invitation_title: '你已被邀请到这个房间', invitation_title: '你已被邀请加入此房间',
displayname: '您的姓名', displayname: '您的姓名',
password: '密码', password: '密码',
connect: '连接', connect: '连接',
@ -27,19 +27,19 @@ export const context = {
mute: '静音', mute: '静音',
unmute: '取消静音', unmute: '取消静音',
release: '强制释放控制', release: '强制释放控制',
take: '牵制控制', take: '强制接管控制',
give: '给予控制', give: '移交控制',
kick: '踢出', kick: '踢出',
ban: ' IP', ban: '禁 IP',
confirm: { confirm: {
kick_title: '踢出 {name}?', kick_title: '踢出 {name}?',
kick_text: '你确定你要替 {name}?', kick_text: '你确定要踢出 {name} 吗?',
ban_title: ' {name}?', ban_title: '禁 {name}?',
ban_text: '你是否想禁止 {name}? 你将需要重新启动服务器来撤销这一做法.', ban_text: '你确定要封禁 {name} 吗?如需解除封禁需重启服务。',
mute_title: '静音 {name}?', mute_title: '静音 {name}?',
mute_text: '你确定你要精印吗 {name}?', mute_text: '你确定要将 {name} 静音吗?',
unmute_title: '取消静音 {name}?', unmute_title: '取消静音 {name}?',
unmute_text: '你想去下静音吗 {name}?', unmute_text: '你确定要取消 {name} 的静音吗?',
button_yes: '是', button_yes: '是',
button_cancel: '取消', button_cancel: '取消',
}, },
@ -50,46 +50,45 @@ export const controls = {
request: '请求控制', request: '请求控制',
lock: '锁定控制', lock: '锁定控制',
unlock: '解锁控制', unlock: '解锁控制',
has: '你有控制', has: '你有控制',
hasnot: '你没有控制', hasnot: '你没有控制',
} }
export const locks = { export const locks = {
control: { control: {
lock: '对所有用户进行锁定控制', lock: '锁定所有用户的控制',
unlock: '对所有用户进行解锁控制', unlock: '解锁所有用户的控制',
locked: '锁定的控制装置', locked: '控制已锁定',
unlocked: '解锁的控制装置', unlocked: '控制已解锁',
notif_locked: '为用户锁定控制', notif_locked: '为用户锁定控制',
notif_unlocked: '为用户解锁控制', notif_unlocked: '为用户解锁控制',
}, },
login: { login: {
lock: '所有用户的锁定室', lock: '锁定所有用户的房间',
unlock: '所有用户的解锁室', unlock: '解锁所有用户的房间',
locked: '为所有用户锁定的房间', locked: '房间已为所有用户锁定',
unlocked: '为所有用户解锁的房间', unlocked: '房间已为所有用户解锁',
notif_locked: '锁上房间', notif_locked: '房间已锁定',
notif_unlocked: '解锁房间', 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 = { export const setting = {
scroll: '滚动度', scroll: '滚动灵敏度',
scroll_invert: '反转滚动敏感度', scroll_invert: '反转滚动方向',
autoplay: '自动播放视频', autoplay: '自动播放视频',
ignore_emotes: '忽略表情符号', ignore_emotes: '忽略表情符号',
chat_sound: '播放聊天音', chat_sound: '播放聊天提示音',
keyboard_layout: '键盘布局', keyboard_layout: '键盘布局',
broadcast_title: '现场流媒体', broadcast_title: '直播流',
} }
export const connection = { export const connection = {
@ -98,31 +97,31 @@ export const connection = {
connected: '已连接', connected: '已连接',
disconnected: '已断开', disconnected: '已断开',
kicked: '你已被踢出', kicked: '你已被踢出',
button_confirm: '好的', button_confirm: '确定',
} }
export const notifications = { export const notifications = {
connected: '{name} 已连接', connected: '{name} 已连接',
disconnected: '{name} 已断开', disconnected: '{name} 已断开',
controls_taken: '{name} 采取了控制', controls_taken: '{name} 获得了控制权',
controls_taken_force: '被迫接受控制', controls_taken_force: '强制获得控制权',
controls_taken_steal: '掌握控制权 从 {name}', controls_taken_steal: '从 {name} 夺取了控制权',
controls_released: '{name} 释放控制', controls_released: '{name} 释放控制',
controls_released_force: '强制解除控制', controls_released_force: '强制释放控制权',
controls_released_steal: '强制解除控制 从 {name}', controls_released_steal: '从 {name} 强制释放控制权',
controls_given: '将控制权交给 {name}', controls_given: '将控制权交给 {name}',
controls_has: '{name} 拥有控制权', controls_has: '{name} 拥有控制权',
controls_has_alt: '但我让那个人知道你想要它', controls_has_alt: '但我已通知对方你想要控制权',
controls_requesting: '{name} 正在请求控制', controls_requesting: '{name} 正在请求控制',
resolution: '分辨率改为 {width}x{height}@{rate}', resolution: '分辨率已更改为 {width}x{height}@{rate}',
banned: '被禁止 {name}', banned: '{name} 已被封禁',
kicked: '被踢的 {name}', kicked: '{name} 已被踢出',
muted: '鸟粪 {name}', muted: '{name} 已被静音',
unmuted: '取消静音 {name}', unmuted: '{name} 已取消静音',
} }
export const files = { export const files = {
downloads: '下载', downloads: '下载',
uploads: '上传', uploads: '上传',
upload_here: '点击或拖动文件到这里来上传', upload_here: '点击或拖动文件到此处上传',
} }