From aa0b94847b088c83bc3a4ea242420c3ef98c6598 Mon Sep 17 00:00:00 2001 From: David Baker Date: Fri, 1 Sep 2017 16:17:22 +0100 Subject: [PATCH 01/83] Prepare changelog for v0.10.3-rc.1 --- CHANGELOG.md | 33 +++++++++++++++++++++++++++++++++ 1 file changed, 33 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index b5e596144e..f4e9ae9a78 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,36 @@ +Changes in [0.10.3-rc.1](https://github.com/matrix-org/matrix-react-sdk/releases/tag/v0.10.3-rc.1) (2017-09-01) +=============================================================================================================== +[Full Changelog](https://github.com/matrix-org/matrix-react-sdk/compare/v0.10.2...v0.10.3-rc.1) + + * Fix room change sometimes being very slow + [\#1354](https://github.com/matrix-org/matrix-react-sdk/pull/1354) + * apply shouldHideEvent fn to onRoomTimeline for RoomStatusBar + [\#1346](https://github.com/matrix-org/matrix-react-sdk/pull/1346) + * text4event widget modified, used to show widget added each time. + [\#1345](https://github.com/matrix-org/matrix-react-sdk/pull/1345) + * separate concepts of showing and managing RRs to fix regression + [\#1352](https://github.com/matrix-org/matrix-react-sdk/pull/1352) + * Make staging widgets work with live and vice versa. + [\#1350](https://github.com/matrix-org/matrix-react-sdk/pull/1350) + * Avoid breaking /sync with uncaught exceptions + [\#1349](https://github.com/matrix-org/matrix-react-sdk/pull/1349) + * we need to pass whether it is an invite RoomSubList explicitly (i18n) + [\#1343](https://github.com/matrix-org/matrix-react-sdk/pull/1343) + * Percent encoding isn't a valid thing within _t + [\#1348](https://github.com/matrix-org/matrix-react-sdk/pull/1348) + * Fix spurious notifications + [\#1339](https://github.com/matrix-org/matrix-react-sdk/pull/1339) + * Unbreak password reset with a non-default HS + [\#1347](https://github.com/matrix-org/matrix-react-sdk/pull/1347) + * Remove unnecessary 'load' on notif audio element + [\#1341](https://github.com/matrix-org/matrix-react-sdk/pull/1341) + * _tJsx returns a React Object, the sub fn must return a React Object + [\#1340](https://github.com/matrix-org/matrix-react-sdk/pull/1340) + * Fix deprecation warning about promise.defer() + [\#1292](https://github.com/matrix-org/matrix-react-sdk/pull/1292) + * Fix click to insert completion + [\#1331](https://github.com/matrix-org/matrix-react-sdk/pull/1331) + Changes in [0.10.2](https://github.com/matrix-org/matrix-react-sdk/releases/tag/v0.10.2) (2017-08-24) ===================================================================================================== [Full Changelog](https://github.com/matrix-org/matrix-react-sdk/compare/v0.10.1...v0.10.2) From c07362d7c159c83f1ea0568765e13baa78b4cb29 Mon Sep 17 00:00:00 2001 From: David Baker Date: Fri, 1 Sep 2017 16:17:22 +0100 Subject: [PATCH 02/83] v0.10.3-rc.1 --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index cc352cb8db..0610d42c0d 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "matrix-react-sdk", - "version": "0.10.2", + "version": "0.10.3-rc.1", "description": "SDK for matrix.org using React", "author": "matrix.org", "repository": { From 76ff4b1f24ecc0efc71e4930b4341243ef28dbf1 Mon Sep 17 00:00:00 2001 From: Andrey Date: Mon, 4 Sep 2017 10:44:36 +0000 Subject: [PATCH 03/83] Translated using Weblate (Russian) Currently translated at 100.0% (972 of 972 strings) Translation: Riot Web/matrix-react-sdk Translate-URL: https://translate.riot.im/projects/riot-web/matrix-react-sdk/ru/ --- src/i18n/strings/ru.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/i18n/strings/ru.json b/src/i18n/strings/ru.json index 3ff15f4f5c..0a56f0e361 100644 --- a/src/i18n/strings/ru.json +++ b/src/i18n/strings/ru.json @@ -1012,7 +1012,7 @@ "You are a member of these groups:": "Вы являетесь членом этих групп:", "Create a group to represent your community! Define a set of rooms and your own custom homepage to mark out your space in the Matrix universe.": "Создайте группу для представления своего сообщества! Определите набор комнат и собственную домашнюю страницу, чтобы выделить свое пространство во вселенной Matrix.", "Join an existing group": "Присоединиться к существующей группе", - "To join an exisitng group you'll have to know its group identifier; this will look something like +example:matrix.org.": "Чтобы присоединиться к группе, вам нужно знать ее идентификатор; он выглядит примерно так:+пример:matrix.org.", + "To join an exisitng group you'll have to know its group identifier; this will look something like +example:matrix.org.": "Чтобы присоединиться к группе, вам нужно знать ее идентификатор; он выглядит примерно так:+example:matrix.org.", "Featured Rooms:": "Рекомендуемые комнаты:", "Error whilst fetching joined groups": "Ошибка при извлечении объединенных групп", "Featured Users:": "Избранные пользователи:", From 9de3ce67f197b9a658fffa068fddb0fdb863ec12 Mon Sep 17 00:00:00 2001 From: Krombel Date: Mon, 4 Sep 2017 12:19:37 +0000 Subject: [PATCH 04/83] Translated using Weblate (German) Currently translated at 100.0% (972 of 972 strings) Translation: Riot Web/matrix-react-sdk Translate-URL: https://translate.riot.im/projects/riot-web/matrix-react-sdk/de/ --- src/i18n/strings/de_DE.json | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/i18n/strings/de_DE.json b/src/i18n/strings/de_DE.json index 24786418a8..f40237273d 100644 --- a/src/i18n/strings/de_DE.json +++ b/src/i18n/strings/de_DE.json @@ -1022,7 +1022,7 @@ "You are a member of these groups:": "Du bist Mitglied in folgenden Gruppen:", "Create a group to represent your community! Define a set of rooms and your own custom homepage to mark out your space in the Matrix universe.": "Erstelle eine Gruppe um deine Community darzustellen! Definiere eine Menge von Räumen und deine eigene angepasste Startseite um deinen Bereich im Matrix-Universum zu markieren.", "Join an existing group": "Trete eine existierenden Gruppe bei", - "To join an exisitng group you'll have to know its group identifier; this will look something like +example:matrix.org.": "Um einer bereits vorhandenen Gruppe beitreten zu können, muss dir die Gruppen-Kennung bekannt sein. Diese sieht ungefähr so aus: '+example:matrix.org'.", + "To join an exisitng group you'll have to know its group identifier; this will look something like +example:matrix.org.": "Um einer bereits vorhandenen Gruppe beitreten zu können, muss dir die Gruppen-Kennung bekannt sein. Diese sieht aus wie +example:matrix.org.", "Featured Rooms:": "Hervorgehobene Räume:", "Error whilst fetching joined groups": "Fehler beim Laden beigetretener Gruppen", "Featured Users:": "Hervorgehobene Nutzer:", @@ -1040,5 +1040,6 @@ "NOTE: Apps are not end-to-end encrypted": "BEACHTE: Apps sind nicht Ende-zu-Ende verschlüsselt", "%(widgetName)s widget added by %(senderName)s": "Widget \"%(widgetName)s\" von %(senderName)s hinzugefügt", "%(widgetName)s widget removed by %(senderName)s": "Widget \"%(widgetName)s\" von %(senderName)s entfernt", - "Robot check is currently unavailable on desktop - please use a web browser": "In der Desktop-Version kann derzeit nicht geprüft werden, ob ein Benutzer ein Roboter ist. Bitte einen Webbrowser verwenden" + "Robot check is currently unavailable on desktop - please use a web browser": "In der Desktop-Version kann derzeit nicht geprüft werden, ob ein Benutzer ein Roboter ist. Bitte einen Webbrowser verwenden", + "%(widgetName)s widget modified by %(senderName)s": "Das Widget '%(widgetName)s' wurde von %(senderName)s bearbeitet" } From 91b547b99f45c61fce4790208527557f99a41119 Mon Sep 17 00:00:00 2001 From: Krombel Date: Mon, 4 Sep 2017 12:25:23 +0000 Subject: [PATCH 05/83] Translated using Weblate (German) Currently translated at 100.0% (972 of 972 strings) Translation: Riot Web/matrix-react-sdk Translate-URL: https://translate.riot.im/projects/riot-web/matrix-react-sdk/de/ --- src/i18n/strings/de_DE.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/i18n/strings/de_DE.json b/src/i18n/strings/de_DE.json index f40237273d..fbd1f7526d 100644 --- a/src/i18n/strings/de_DE.json +++ b/src/i18n/strings/de_DE.json @@ -293,7 +293,7 @@ "Riot was not given permission to send notifications - please try again": "Riot hat keine Berechtigung für das Senden von Benachrichtigungen erhalten - bitte erneut versuchen", "This email address is already in use": "Diese E-Mail-Adresse wird bereits verwendet", "This email address was not found": "Diese E-Mail-Adresse konnte nicht gefunden werden", - "The file '%(fileName)s' exceeds this home server's size limit for uploads": "Die Datei '%(fileName)s' überschreitet das Größen-Limit für Uploads auf diesem Homeserver", + "The file '%(fileName)s' exceeds this home server's size limit for uploads": "Die Datei '%(fileName)s' überschreitet das Größen-Limit für Uploads auf diesem Heimserver", "The file '%(fileName)s' failed to upload": "Das Hochladen der Datei '%(fileName)s' schlug fehl", "The remote side failed to pick up": "Die Gegenstelle konnte nicht abheben", "This phone number is already in use": "Diese Telefonnummer wird bereits verwendet", From 82e0e533a0cc1cdb2e5e32e37ec6689ee8a5a4a3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jerzy=20Ko=C5=82osowski?= Date: Mon, 4 Sep 2017 19:19:45 +0000 Subject: [PATCH 06/83] Translated using Weblate (Polish) Currently translated at 30.0% (292 of 972 strings) Translation: Riot Web/matrix-react-sdk Translate-URL: https://translate.riot.im/projects/riot-web/matrix-react-sdk/pl/ --- src/i18n/strings/pl.json | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) diff --git a/src/i18n/strings/pl.json b/src/i18n/strings/pl.json index 624302543d..4b7d44ea9f 100644 --- a/src/i18n/strings/pl.json +++ b/src/i18n/strings/pl.json @@ -278,5 +278,19 @@ "%(senderName)s banned %(targetName)s.": "%(senderName)s zbanował %(targetName)s.", "Ban": "Zbanuj", "Bans user with given id": "Zbanuj użytkownika o podanym id", - "Blacklisted": "Umieszczono na czarnej liście" + "Blacklisted": "Umieszczono na czarnej liście", + "Add a widget": "Dodaj widżet", + "Allow": "Zezwól", + "Missing Media Permissions, click here to request.": "Brakuje uprawnień mediów, kliknij tutaj, aby zażądać.", + "and %(count)s others....other": "i %(count)s innych...", + "and %(count)s others....one": "i jeszcze jedno...", + "Bug Report": "Raport błędu", + "Bulk Options": "Masowe opcje", + "Call Timeout": "Upłynął limit czasu połączenia", + "Can't connect to homeserver - please check your connectivity, ensure your homeserver's SSL certificate is trusted, and that a browser extension is not blocking requests.": "Nie można nawiązać połączenia z serwerem - proszę sprawdź twoje połączenie, upewnij się, że certyfikat SSL serwera jest zaufany, i że dodatki przeglądarki nie blokują żądania.", + "Can't connect to homeserver via HTTP when an HTTPS URL is in your browser bar. Either use HTTPS or enable unsafe scripts.": "Nie można nawiązać połączenia z serwerem przy użyciu HTTP podczas korzystania z HTTPS dla bieżącej strony. Użyj HTTPS lub włącz niebezpieczne skrypty.", + "Can't load user settings": "Nie można załadować ustawień użytkownika", + "Cannot add any more widgets": "Nie można dodać już więcej widżetów", + "%(senderName)s changed their display name from %(oldDisplayName)s to %(displayName)s.": "%(senderName)s zmienił swoją nazwę z %(oldDisplayName)s na %(displayName)s.", + "%(senderName)s changed their profile picture.": "%(senderName)s zmienił swoje zdjęcie profilowe." } From 1b2e33976d998e9cabda22fdc2aa7603445f8eac Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marek=20J=C4=99drzejewski?= Date: Mon, 4 Sep 2017 19:22:49 +0000 Subject: [PATCH 07/83] Translated using Weblate (Polish) Currently translated at 30.0% (292 of 972 strings) Translation: Riot Web/matrix-react-sdk Translate-URL: https://translate.riot.im/projects/riot-web/matrix-react-sdk/pl/ --- src/i18n/strings/pl.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/i18n/strings/pl.json b/src/i18n/strings/pl.json index 4b7d44ea9f..59ee35c572 100644 --- a/src/i18n/strings/pl.json +++ b/src/i18n/strings/pl.json @@ -280,7 +280,7 @@ "Bans user with given id": "Zbanuj użytkownika o podanym id", "Blacklisted": "Umieszczono na czarnej liście", "Add a widget": "Dodaj widżet", - "Allow": "Zezwól", + "Allow": "Pozwól", "Missing Media Permissions, click here to request.": "Brakuje uprawnień mediów, kliknij tutaj, aby zażądać.", "and %(count)s others....other": "i %(count)s innych...", "and %(count)s others....one": "i jeszcze jedno...", From f5f0b14da2764c044ab8ebaa6b7bfd4dd936448b Mon Sep 17 00:00:00 2001 From: Jeff Huang Date: Tue, 5 Sep 2017 02:14:54 +0000 Subject: [PATCH 08/83] Translated using Weblate (Chinese (Traditional)) Currently translated at 100.0% (972 of 972 strings) Translation: Riot Web/matrix-react-sdk Translate-URL: https://translate.riot.im/projects/riot-web/matrix-react-sdk/zh_Hant/ --- src/i18n/strings/zh_Hant.json | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/i18n/strings/zh_Hant.json b/src/i18n/strings/zh_Hant.json index 27ec122709..8b3454f952 100644 --- a/src/i18n/strings/zh_Hant.json +++ b/src/i18n/strings/zh_Hant.json @@ -968,7 +968,7 @@ "You are a member of these groups:": "您是這些群組的成員:", "Create a group to represent your community! Define a set of rooms and your own custom homepage to mark out your space in the Matrix universe.": "建立一個群組來代表您的社群!定義一組聊天室與您自己的自訂首頁來標記您在 Matrix 世界中的空間。", "Join an existing group": "加入既有的群組", - "To join an exisitng group you'll have to know its group identifier; this will look something like +example:matrix.org.": "要加入既有的群組,您將會需要知道其群組識別符;其看起來會像是 +範例:matrix.org。", + "To join an exisitng group you'll have to know its group identifier; this will look something like +example:matrix.org.": "要加入既有的群組,您將會需要知道其群組識別符;其看起來會像是 +example:matrix.org。", "Featured Rooms:": "特色聊天室:", "Error whilst fetching joined groups": "在擷取已加入的群組時發生錯誤", "Featured Users:": "特色使用者:", @@ -979,5 +979,6 @@ "Hide avatars in user and room mentions": "在使用者與聊天室提及中隱藏大頭貼", "%(widgetName)s widget added by %(senderName)s": "%(widgetName)s 由 %(senderName)s 所新增", "%(widgetName)s widget removed by %(senderName)s": "%(widgetName)s 由 %(senderName)s 所移除", - "Robot check is currently unavailable on desktop - please use a web browser": "機器人檢查目前在桌面端不可用 ── 請使用網路瀏覽器" + "Robot check is currently unavailable on desktop - please use a web browser": "機器人檢查目前在桌面端不可用 ── 請使用網路瀏覽器", + "%(widgetName)s widget modified by %(senderName)s": "%(widgetName)s 小工具已被 %(senderName)s 修改" } From ce4178f116e678756891b88ad8b19bb2a6b14295 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jerzy=20Ko=C5=82osowski?= Date: Mon, 4 Sep 2017 20:22:36 +0000 Subject: [PATCH 09/83] Translated using Weblate (Polish) Currently translated at 43.3% (421 of 972 strings) Translation: Riot Web/matrix-react-sdk Translate-URL: https://translate.riot.im/projects/riot-web/matrix-react-sdk/pl/ --- src/i18n/strings/pl.json | 131 ++++++++++++++++++++++++++++++++++++++- 1 file changed, 130 insertions(+), 1 deletion(-) diff --git a/src/i18n/strings/pl.json b/src/i18n/strings/pl.json index 59ee35c572..a2cfdaed9a 100644 --- a/src/i18n/strings/pl.json +++ b/src/i18n/strings/pl.json @@ -292,5 +292,134 @@ "Can't load user settings": "Nie można załadować ustawień użytkownika", "Cannot add any more widgets": "Nie można dodać już więcej widżetów", "%(senderName)s changed their display name from %(oldDisplayName)s to %(displayName)s.": "%(senderName)s zmienił swoją nazwę z %(oldDisplayName)s na %(displayName)s.", - "%(senderName)s changed their profile picture.": "%(senderName)s zmienił swoje zdjęcie profilowe." + "%(senderName)s changed their profile picture.": "%(senderName)s zmienił swoje zdjęcie profilowe.", + "fo": "Farerski", + "rm": "Retoromański", + "tn": "Tswana", + "%(senderName)s changed the power level of %(powerLevelDiffText)s.": "%(senderName)s zmienił poziom mocy %(powerLevelDiffText)s.", + "%(senderDisplayName)s changed the room name to %(roomName)s.": "%(senderDisplayName)s zmienił nazwę pokoju na %(roomName)s.", + "%(senderDisplayName)s removed the room name.": "%(senderDisplayName)s usunął nazwę pokoju.", + "%(senderDisplayName)s changed the topic to \"%(topic)s\".": "%(senderDisplayName)s zmienił temat na \"%(topic)s\".", + "Changes to who can read history will only apply to future messages in this room": "Zmiany w dostępie do historii będą dotyczyć tylko przyszłych wiadomości w tym pokoju", + "Changes your display nickname": "Zmień swój pseudonim", + "Changes colour scheme of current room": "Zmień schemat kolorystyczny bieżącego pokoju", + "Changing password will currently reset any end-to-end encryption keys on all devices, making encrypted chat history unreadable, unless you first export your room keys and re-import them afterwards. In future this will be improved.": "Zmiana hasła zresetuje klucze szyfrowania końcówka-do-końcówki na wszystkich urządzeniach, co spowoduje, że nie będzie się dało odczytać zaszyfrowanej historii czatu, chyba że najpierw wyeksportujesz swoje klucze i ponownie je zaimportujesz. W przyszłości będzie to poprawione.", + "Claimed Ed25519 fingerprint key": "Przedstawiony odcisk klucza Ed25519", + "Clear Cache and Reload": "Wyczyść pamięć podręczną i przeładuj", + "Clear Cache": "Wyczyść pamięć podręczną", + "Click here to join the discussion!": "Kliknij tutaj, aby dołączyć do dyskusji!", + "Click here to fix": "Kliknij tutaj, aby naprawić", + "Click to mute audio": "Kliknij, aby wyciszyć dźwięk", + "Click to mute video": "Kliknij, aby wyłączyć obraz", + "click to reveal": "kliknij, aby ujawnić", + "Click to unmute video": "Kliknij, aby włączyć obraz", + "Click to unmute audio": "Kliknij, aby włączyć dźwięk", + "Command error": "Błąd polecenia", + "Commands": "Polecenia", + "Conference call failed.": "Połączenie konferencyjne nie powiodło się.", + "Conference calling is in development and may not be reliable.": "Rozmowy konferencyjne są w trakcie opracowywania i mogą nie działać poprawnie.", + "Conference calls are not supported in encrypted rooms": "Połączenia konferencyjne nie są obsługiwane w zaszyfrowanych pokojach", + "Conference calls are not supported in this client": "Połączenia konferencyjne nie są obsługiwane w tym kliencie", + "Could not connect to the integration server": "Nie można połączyć się z serwerem integracji", + "%(count)s new messages.one": "%(count)s nowa wiadomość", + "%(count)s new messages.other": "%(count)s nowych wiadomości", + "Create a new chat or reuse an existing one": "Utwórz nowy czat lub użyj istniejącego", + "Curve25519 identity key": "Curve25519 klucz tożsamości", + "Custom": "Własny", + "Custom level": "Własny poziom", + "/ddg is not a command": "/ddg nie jest poleceniem", + "Deactivate Account": "Dezaktywuj konto", + "Deactivate my account": "Dezaktywuj moje konto", + "Decline": "Odrzuć", + "Decrypt %(text)s": "Odszyfruj %(text)s", + "Decryption error": "Błąd odszyfrowywania", + "Delete widget": "Usuń widżet", + "demote": "zdegraduj", + "Default": "Domyślny", + "Define the power level of a user": "Zdefiniuj poziom mocy użytkownika", + "Device already verified!": "Urządzenie jest już zweryfikowane!", + "Device ID": "Identyfikator urządzenia", + "Device ID:": "Identyfikator urządzenia:", + "device id: ": "identyfikator urządzenia: ", + "Device key:": "Klucz urządzenia:", + "Devices will not yet be able to decrypt history from before they joined the room": "Urządzenia nie będą mogły odszyfrowywać historii sprzed dołączenia do pokoju", + "Direct chats": "Rozmowy bezpośrednie", + "Disable Notifications": "Wyłącz powiadomienia", + "disabled": "wyłączone", + "Disable inline URL previews by default": "Domyślnie wyłącz podgląd linków", + "Disable markdown formatting": "Wyłącz formatowanie markdown", + "Disinvite": "Anuluj zaproszenie", + "Display name": "Wyświetlana nazwa", + "Displays action": "Wyświetlane akcje", + "Do you want to load widget from URL:": "Czy chcesz załadować widżet z adresu:", + "Don't send typing notifications": "Nie wysyłaj powiadomienia o pisaniu", + "Download %(text)s": "Pobrano %(text)s", + "Drop File Here": "Upuść plik tutaj", + "Drop here to tag %(section)s": "Upuść tutaj by oznaczyć %(section)s", + "Ed25519 fingerprint": "Odcisk Ed25519", + "Edit": "Edytuj", + "Email": "E-mail", + "Email address": "Adres e-mail", + "Email address (optional)": "Adres e-mail (opcjonalnie)", + "Email, name or matrix ID": "E-mail, nazwa lub matrix ID", + "Emoji": "Emoji", + "Enable automatic language detection for syntax highlighting": "Włącz automatyczne rozpoznawanie języka dla podświetlania składni", + "Enable encryption": "Włącz szyfrowanie", + "Enable Notifications": "Włącz powiadomienia", + "enabled": "włączone", + "Encrypted by a verified device": "Zaszyfrowane przez zweryfikowane urządzenie", + "Encrypted by an unverified device": "Zaszyfrowane przez niezweryfikowane urządzenie", + "Encrypted messages will not be visible on clients that do not yet implement encryption": "Szyfrowane wiadomości nie są widoczne w programach, które nie implementują szyfrowania", + "Encrypted room": "Pokój szyfrowany", + "Encryption is enabled in this room": "Szyfrowanie jest włączone w tym pokoju", + "Encryption is not enabled in this room": "Szyfrowanie nie jest włączone w tym pokoju", + "%(senderName)s ended the call.": "%(senderName)s zakończył połączenie.", + "End-to-end encryption information": "Informacje o szyfrowaniu końcówka-do-końcówki", + "End-to-end encryption is in beta and may not be reliable": "Szyfrowanie końcówka-do-końcówki jest w fazie beta i może nie być dopracowane", + "Enter Code": "Wpisz kod", + "Enter passphrase": "Wpisz frazę", + "Error decrypting attachment": "Błąd odszyfrowywania załącznika", + "Error: Problem communicating with the given homeserver.": "Błąd: wystąpił problem podczas komunikacji z podanym serwerem.", + "Event information": "Informacje zdarzenia", + "Existing Call": "Istniejące połączenie", + "Export": "Eksport", + "Export E2E room keys": "Eksportuj klucze E2E pokojów", + "Failed to ban user": "Nie udało się zbanować użytkownika", + "Failed to change power level": "Nie udało się zmienić poziomu mocy", + "Failed to delete device": "Nie udało się usunąć urządzenia", + "Failed to fetch avatar URL": "Nie udało się pobrać awatara", + "Failed to join room": "Nie udało się dołączyć do pokoju", + "Failed to kick": "Nie udało się wykopać użytkownika", + "Failed to leave room": "Nie udało się opuścić pokoju", + "Failed to load timeline position": "Nie udało się wczytać pozycji osi czasu", + "Failed to lookup current room": "Nie udało się wyszukać aktualnego pokoju", + "Failed to mute user": "Nie udało się wyciszyć użytkownika", + "Failed to register as guest:": "Nie udało się zarejestrować jako gość:", + "Failed to reject invite": "Nie udało się odrzucić zaproszenia", + "Failed to reject invitation": "Nie udało się odrzucić zaproszenia", + "Failed to save settings": "Nie udało się zapisać ustawień", + "Failed to send email": "Nie udało się wysłać wiadomości e-mail", + "Failed to send request.": "Nie udało się wysłać żądania.", + "Failed to set avatar.": "Nie udało się ustawić awataru.", + "Failed to set display name": "Nie udało się ustawić wyświetlanej nazwy", + "Failed to set up conference call": "Nie udało się ustanowić połączenia konferencyjnego", + "Failed to toggle moderator status": "Nie udało się przełączyć na stan moderatora", + "Failed to unban": "Nie udało się odbanować", + "Failed to upload file": "Nie udało się wgrać pliku", + "Failed to upload profile picture!": "Nie udało się wgrać zdjęcia profilowego!", + "Failed to verify email address: make sure you clicked the link in the email": "Nie udało się zweryfikować adresu e-mail: upewnij się że kliknąłeś w link w e-mailu", + "Failure to create room": "Nie udało się stworzyć pokoju", + "favourite": "ulubiony", + "Favourites": "Ulubione", + "Fill screen": "Wypełnij ekran", + "Filter room members": "Filtruj uczestników pokoju", + "Forget room": "Zapomnij pokój", + "Forgot your password?": "Zapomniałeś hasła?", + "For security, this session has been signed out. Please sign in again.": "Ze względów bezpieczeństwa ta sesja została wylogowana. Zaloguj się jeszcze raz.", + "For security, logging out will delete any end-to-end encryption keys from this browser. If you want to be able to decrypt your conversation history from future Riot sessions, please export your room keys for safe-keeping.": "Ze względów bezpieczeństwa, wylogowanie skasuje z tej przeglądarki wszystkie klucze szyfrowania końcówka-do-końcówki. Jeśli chcesz móc odszyfrować swoje historie konwersacji z przyszłych sesji Riot-a, proszę wyeksportuj swoje klucze pokojów do bezpiecznego miejsca.", + "Found a bug?": "Znalazłeś błąd?", + "%(userId)s from %(fromPowerLevel)s to %(toPowerLevel)s": "%(userId)s z %(fromPowerLevel)s na %(toPowerLevel)s", + "Guest access is disabled on this Home Server.": "Dostęp dla gości jest wyłączony na tym serwerze.", + "Guests can't set avatars. Please register.": "Goście nie mogą ustawić awatara. Proszę się zarejestrować.", + "Guest users can't create new rooms. Please register to create room and start a chat.": "Goście nie mogą tworzyć nowych pokoi. Proszę zarejestruj się, aby stworzyć nowy pokój." } From c67a6e9d2ec71a6bbb743e928d8a8994ee93137c Mon Sep 17 00:00:00 2001 From: David Baker Date: Tue, 5 Sep 2017 13:13:02 +0100 Subject: [PATCH 10/83] Prepare changelog for v0.10.3-rc.2 --- CHANGELOG.md | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index f4e9ae9a78..af82ef2e1f 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,14 @@ +Changes in [0.10.3-rc.2](https://github.com/matrix-org/matrix-react-sdk/releases/tag/v0.10.3-rc.2) (2017-09-05) +=============================================================================================================== +[Full Changelog](https://github.com/matrix-org/matrix-react-sdk/compare/v0.10.3-rc.1...v0.10.3-rc.2) + + * Fix plurals in translations + [\#1358](https://github.com/matrix-org/matrix-react-sdk/pull/1358) + * Fix typo + [\#1357](https://github.com/matrix-org/matrix-react-sdk/pull/1357) + * Update from Weblate. + [\#1356](https://github.com/matrix-org/matrix-react-sdk/pull/1356) + Changes in [0.10.3-rc.1](https://github.com/matrix-org/matrix-react-sdk/releases/tag/v0.10.3-rc.1) (2017-09-01) =============================================================================================================== [Full Changelog](https://github.com/matrix-org/matrix-react-sdk/compare/v0.10.2...v0.10.3-rc.1) From c75bc42585c8aa5e8e193ca7f6096d83734f921a Mon Sep 17 00:00:00 2001 From: David Baker Date: Tue, 5 Sep 2017 13:13:02 +0100 Subject: [PATCH 11/83] v0.10.3-rc.2 --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index 0610d42c0d..e1fbfb58d7 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "matrix-react-sdk", - "version": "0.10.3-rc.1", + "version": "0.10.3-rc.2", "description": "SDK for matrix.org using React", "author": "matrix.org", "repository": { From 5684b6a23c4e14ec5feda73add2b135f9fc7948a Mon Sep 17 00:00:00 2001 From: Marcel Date: Tue, 5 Sep 2017 17:35:03 +0200 Subject: [PATCH 12/83] Remove unused translation code translations --- src/i18n/strings/en_EN.json | 120 ------------------------------------ 1 file changed, 120 deletions(-) diff --git a/src/i18n/strings/en_EN.json b/src/i18n/strings/en_EN.json index 35ca698c03..1d706a135d 100644 --- a/src/i18n/strings/en_EN.json +++ b/src/i18n/strings/en_EN.json @@ -1,125 +1,5 @@ { "Add a widget": "Add a widget", - "af": "Afrikaans", - "ar-ae": "Arabic (U.A.E.)", - "ar-bh": "Arabic (Bahrain)", - "ar-dz": "Arabic (Algeria)", - "ar-eg": "Arabic (Egypt)", - "ar-iq": "Arabic (Iraq)", - "ar-jo": "Arabic (Jordan)", - "ar-kw": "Arabic (Kuwait)", - "ar-lb": "Arabic (Lebanon)", - "ar-ly": "Arabic (Libya)", - "ar-ma": "Arabic (Morocco)", - "ar-om": "Arabic (Oman)", - "ar-qa": "Arabic (Qatar)", - "ar-sa": "Arabic (Saudi Arabia)", - "ar-sy": "Arabic (Syria)", - "ar-tn": "Arabic (Tunisia)", - "ar-ye": "Arabic (Yemen)", - "be": "Belarusian", - "bg": "Bulgarian", - "ca": "Catalan", - "cs": "Czech", - "da": "Danish", - "de-at": "German (Austria)", - "de-ch": "German (Switzerland)", - "de": "German", - "de-li": "German (Liechtenstein)", - "de-lu": "German (Luxembourg)", - "el": "Greek", - "en-au": "English (Australia)", - "en-bz": "English (Belize)", - "en-ca": "English (Canada)", - "en": "English", - "en-gb": "English (United Kingdom)", - "en-ie": "English (Ireland)", - "en-jm": "English (Jamaica)", - "en-nz": "English (New Zealand)", - "en-tt": "English (Trinidad)", - "en-us": "English (United States)", - "en-za": "English (South Africa)", - "es-ar": "Spanish (Argentina)", - "es-bo": "Spanish (Bolivia)", - "es-cl": "Spanish (Chile)", - "es-co": "Spanish (Colombia)", - "es-cr": "Spanish (Costa Rica)", - "es-do": "Spanish (Dominican Republic)", - "es-ec": "Spanish (Ecuador)", - "es-gt": "Spanish (Guatemala)", - "es-hn": "Spanish (Honduras)", - "es-mx": "Spanish (Mexico)", - "es-ni": "Spanish (Nicaragua)", - "es-pa": "Spanish (Panama)", - "es-pe": "Spanish (Peru)", - "es-pr": "Spanish (Puerto Rico)", - "es-py": "Spanish (Paraguay)", - "es": "Spanish (Spain)", - "es-sv": "Spanish (El Salvador)", - "es-uy": "Spanish (Uruguay)", - "es-ve": "Spanish (Venezuela)", - "et": "Estonian", - "eu": "Basque (Basque)", - "fa": "Farsi", - "fi": "Finnish", - "fo": "Faeroese", - "fr-be": "French (Belgium)", - "fr-ca": "French (Canada)", - "fr-ch": "French (Switzerland)", - "fr": "French", - "fr-lu": "French (Luxembourg)", - "ga": "Irish", - "gd": "Gaelic (Scotland)", - "he": "Hebrew", - "hi": "Hindi", - "hr": "Croatian", - "hu": "Hungarian", - "id": "Indonesian", - "is": "Icelandic", - "it-ch": "Italian (Switzerland)", - "it": "Italian", - "ja": "Japanese", - "ji": "Yiddish", - "ko": "Korean", - "lt": "Lithuanian", - "lv": "Latvian", - "mk": "Macedonian (FYROM)", - "ms": "Malaysian", - "mt": "Maltese", - "nl-be": "Dutch (Belgium)", - "nl": "Dutch", - "no": "Norwegian", - "pl": "Polish", - "pt-br": "Brazilian Portuguese", - "pt": "Portuguese", - "rm": "Rhaeto-Romanic", - "ro-mo": "Romanian (Republic of Moldova)", - "ro": "Romanian", - "ru-mo": "Russian (Republic of Moldova)", - "ru": "Russian", - "sb": "Sorbian", - "sk": "Slovak", - "sl": "Slovenian", - "sq": "Albanian", - "sr": "Serbian", - "sv-fi": "Swedish (Finland)", - "sv": "Swedish", - "sx": "Sutu", - "sz": "Sami (Lappish)", - "th": "Thai", - "tn": "Tswana", - "tr": "Turkish", - "ts": "Tsonga", - "uk": "Ukrainian", - "ur": "Urdu", - "ve": "Venda", - "vi": "Vietnamese", - "xh": "Xhosa", - "zh-cn": "Chinese (PRC)", - "zh-hk": "Chinese (Hong Kong SAR)", - "zh-sg": "Chinese (Singapore)", - "zh-tw": "Chinese (Taiwan)", - "zu": "Zulu", "a room": "a room", "A text message has been sent to +%(msisdn)s. Please enter the verification code it contains": "A text message has been sent to +%(msisdn)s. Please enter the verification code it contains", "Accept": "Accept", From 4a362c141ad124e3e04ca1f8af93bfd6f9ccec23 Mon Sep 17 00:00:00 2001 From: MTRNord Date: Tue, 5 Sep 2017 17:54:49 +0200 Subject: [PATCH 13/83] Cleanup unused language code translations --- src/i18n/strings/ar.json | 1 - src/i18n/strings/cs.json | 119 --------------------------------- src/i18n/strings/da.json | 74 --------------------- src/i18n/strings/de_DE.json | 115 -------------------------------- src/i18n/strings/el.json | 120 --------------------------------- src/i18n/strings/en_US.json | 120 --------------------------------- src/i18n/strings/eo.json | 16 +---- src/i18n/strings/es.json | 120 --------------------------------- src/i18n/strings/eu.json | 121 ---------------------------------- src/i18n/strings/fr.json | 120 --------------------------------- src/i18n/strings/he.json | 22 +------ src/i18n/strings/hu.json | 117 -------------------------------- src/i18n/strings/it.json | 115 -------------------------------- src/i18n/strings/ja.json | 120 --------------------------------- src/i18n/strings/ko.json | 118 --------------------------------- src/i18n/strings/lv.json | 120 --------------------------------- src/i18n/strings/ml.json | 5 +- src/i18n/strings/nl.json | 121 ---------------------------------- src/i18n/strings/pl.json | 117 -------------------------------- src/i18n/strings/pt.json | 114 -------------------------------- src/i18n/strings/pt_BR.json | 118 --------------------------------- src/i18n/strings/ru.json | 120 --------------------------------- src/i18n/strings/sv.json | 120 --------------------------------- src/i18n/strings/te.json | 117 -------------------------------- src/i18n/strings/th.json | 117 -------------------------------- src/i18n/strings/tr.json | 120 --------------------------------- src/i18n/strings/uk.json | 120 --------------------------------- src/i18n/strings/zh_Hans.json | 120 --------------------------------- src/i18n/strings/zh_Hant.json | 120 --------------------------------- 29 files changed, 3 insertions(+), 2964 deletions(-) diff --git a/src/i18n/strings/ar.json b/src/i18n/strings/ar.json index c1aba2edeb..8718e842a7 100644 --- a/src/i18n/strings/ar.json +++ b/src/i18n/strings/ar.json @@ -1,5 +1,4 @@ { - "ar-iq": "العربية", "Continue": "استمر", "Username available": "اسم المستخدم متاح", "Username not available": "الإسم المستخدم غير موجود", diff --git a/src/i18n/strings/cs.json b/src/i18n/strings/cs.json index c592e14076..797b045386 100644 --- a/src/i18n/strings/cs.json +++ b/src/i18n/strings/cs.json @@ -75,125 +75,6 @@ "to demote": "upozadíte", "Drop here %(toAction)s": "Přetažením sem %(toAction)s", "Add a widget": "Přidat widget", - "af": "Afrikánština", - "ar-ae": "Arabština (SAE)", - "ar-bh": "Arabština (Bahrajn)", - "ar-dz": "Arabština (Alžírsko)", - "ar-eg": "Arabština (Egypt)", - "ar-iq": "Arabština (Irák)", - "ar-jo": "Arabština (Jordánsko)", - "ar-kw": "Arabština (Kuvajt)", - "ar-lb": "Arabština (Libanon)", - "ar-ly": "Arabština (Libye)", - "ar-ma": "Arabština (Maroko)", - "ar-om": "Arabština (Omán)", - "ar-qa": "Arabština (Katar)", - "ar-sa": "Arabština (Saúdská Arábie)", - "ar-sy": "Arabština (Sýrie)", - "ar-tn": "Arabština (Tunisko)", - "ar-ye": "Arabština (Jemen)", - "be": "Běloruština", - "bg": "Bulharština", - "ca": "Katalánština", - "cs": "Čeština", - "da": "Dánština", - "de-at": "Němčina (Rakousko)", - "de-ch": "Němčina (Švýcarsko)", - "de": "Němčina", - "de-li": "Němčina (Lichtenštejnsko)", - "de-lu": "Němčina (Lucembursko)", - "el": "Řečtina", - "en-au": "Angličtina (Austrálie)", - "en-bz": "Angličtina (Belize)", - "en-ca": "Angličtina (Kanada)", - "en": "Angličtina", - "en-gb": "Angličtina (Spojené království)", - "en-ie": "Angličtina (Irsko)", - "en-jm": "Angličtina (Jamajka)", - "en-nz": "Angličtina (Nový Zéland)", - "en-tt": "Angličtina (Trinidad)", - "en-us": "Angličtina (Spojené státy)", - "en-za": "Angličtina (Jihoafrická republika)", - "es-ar": "Španělština (Argentina)", - "es-bo": "Španělština (Bolívie)", - "es-cl": "Španělština (Chile)", - "es-co": "Španělština (Kolumbie)", - "es-cr": "Španělština (Kostarika)", - "es-do": "Španělština (Dominikánská republika)", - "es-ec": "Španělština (Ekvádor)", - "es-gt": "Španělština (Guatemala)", - "es-hn": "Španělština (Honduras)", - "es-mx": "Španělština (Mexiko)", - "es-ni": "Španělština (Nikaragua)", - "es-pa": "Španělština (Panama)", - "es-pe": "Španělština (Peru)", - "es-pr": "Španělština (Portoriko)", - "es-py": "Španělština (Paraguay)", - "es": "Španělština (Španělsko)", - "es-sv": "Španělština (Salvador)", - "es-uy": "Španělština (Uruguay)", - "es-ve": "Španělština (Venezuela)", - "et": "Estonština", - "eu": "Baskičtina (Baskicko)", - "fa": "Perština", - "fi": "Finština", - "fo": "Faerština", - "fr-be": "Francouzština (Belgie)", - "fr-ca": "Francouzština (Kanada)", - "fr-ch": "Francouzština (Švýcarsko)", - "fr": "Francouzština", - "fr-lu": "Francouzština (Lucembursko)", - "ga": "Irština", - "gd": "Gaelština (Skotsko)", - "he": "Hebrejština", - "hi": "Hindština", - "hr": "Chorvatština", - "hu": "Maďarština", - "id": "Indonéština", - "is": "Islandština", - "it-ch": "Italština (Švýcarsko)", - "it": "Italština", - "ja": "Japonština", - "ji": "Jidiš", - "ko": "Korejština", - "lt": "Litevština", - "lv": "Lotyština", - "mk": "Makedonština (Makedonie)", - "ms": "Malajština", - "mt": "Maltština", - "nl-be": "Nizozemština (Belgie)", - "nl": "Nizozemština", - "no": "Norština", - "pl": "Polština", - "pt-br": "Brazilská portugalština", - "pt": "Portugalština", - "rm": "Rétorománština", - "ro-mo": "Rumunština (Moldavsko)", - "ro": "Rumunština", - "ru-mo": "Ruština (Moldavsko)", - "ru": "Ruština", - "sb": "Lužická srbština", - "sk": "Slovenština", - "sl": "Slovinština", - "sq": "Albánština", - "sr": "Srbština", - "sv-fi": "Švédština (Finsko)", - "sv": "Švédština", - "sz": "Sámština (Laponsko)", - "th": "Thajština", - "tr": "Turečtina", - "uk": "Ukrajinština", - "ur": "Urdština", - "vi": "Vietnamština", - "zh-cn": "Čínština (ČLR)", - "zh-hk": "Čínština (Hongkong)", - "xh": "Xhoština", - "ve": "Luvendština", - "ts": "Tsonga", - "tn": "Setswanština", - "zh-sg": "Čínština (Singapur)", - "zh-tw": "Čínština (Tchaj-wan)", - "zu": "Zuluština", "a room": "místnost", "Accept": "Přijmout", "%(targetName)s accepted an invitation.": "%(targetName)s přijal/a pozvání.", diff --git a/src/i18n/strings/da.json b/src/i18n/strings/da.json index dec3219da9..11d7bffdd3 100644 --- a/src/i18n/strings/da.json +++ b/src/i18n/strings/da.json @@ -137,80 +137,6 @@ "%(names)s and one other are typing": "%(names)s og den anden skriver", "%(names)s and %(count)s others are typing": "%(names)s og %(count)s andre skriver", "%(senderName)s answered the call.": "%(senderName)s besvarede opkaldet.", - "af": "Afrikaans", - "ar-eg": "Arabisk (Egypten)", - "ar-ma": "Arabisk (Marokko)", - "ar-sa": "Arabisk (Saudiarabien", - "ar-sy": "Arabisk (Syrien)", - "be": "Hviderussisk", - "bg": "Bulgarisk", - "ca": "Catalansk", - "cs": "Tjekkisk", - "de-at": "Tysk (Østrig)", - "de-ch": "Tysk (Schweiz)", - "el": "Græsk", - "en-au": "Engelsk (Australien)", - "en-ca": "Engelsk (Canada)", - "en-ie": "Engelsk (Irland)", - "en-nz": "Engelsk (New Zealand)", - "en-us": "Engelsk (USA)", - "en-za": "Engelsk (Sydafrika)", - "es-ar": "Spansk (Argentina)", - "es-bo": "Spansk (Bolivia)", - "es-cl": "Spansk (Chile)", - "es-ec": "Spansk (Ecuador)", - "es-hn": "Spansk (Honduras)", - "es-mx": "Spansk (Mexico)", - "es-ni": "Spansk (Nicaragua)", - "es-py": "Spansk (Paraguay)", - "es": "Spansk (Spanien)", - "es-uy": "Spansk (Uruguay)", - "es-ve": "Spansk (Venezuela)", - "et": "Estisk", - "fa": "Farsi", - "fi": "Finsk", - "fr-be": "Fransk (Belgien)", - "fr-ca": "Fransk (Canada)", - "fr-ch": "Fransk (Schweiz)", - "fr": "Fransk", - "ga": "Irsk", - "he": "Hebraisk", - "hi": "Hindi", - "hr": "Kroatisk", - "hu": "Ungarsk", - "id": "Indonesisk", - "is": "Islandsk", - "it": "Italiensk", - "ja": "Japansk", - "ji": "Jiddisch", - "lt": "Litauisk", - "lv": "Lettisk", - "ms": "Malaysisk", - "mt": "Maltesisk", - "nl": "Hollandsk", - "no": "Norsk", - "pl": "Polsk", - "pt": "Portugisisk", - "ro": "Rumænsk", - "sb": "Sorbisk", - "sk": "Slovakisk", - "sl": "Slovensk", - "sq": "Albansk", - "sr": "Serbisk", - "sv": "Svensk", - "th": "Thai", - "tn": "Tswana", - "tr": "Tyrkisk", - "ts": "Tsonga", - "uk": "Ukrainsk", - "ur": "Urdu", - "ve": "Venda", - "vi": "Vietnamesisk", - "xh": "Xhosa", - "zh-cn": "Kinesisk (Folkerepublikken Kina)", - "zh-sg": "Kinesisk (Singapore)", - "zh-tw": "Kinesisk (Taiwan)", - "zu": "Zulu", "Add a widget": "Tilføj en widget", "ar-ae": "Arabisk (U.A.E.)", "ar-bh": "Arabisk (Bahrain)", diff --git a/src/i18n/strings/de_DE.json b/src/i18n/strings/de_DE.json index e4a3d335a3..241cce3135 100644 --- a/src/i18n/strings/de_DE.json +++ b/src/i18n/strings/de_DE.json @@ -427,121 +427,6 @@ "click to reveal": "anzeigen", "To remove other users' messages": "Um Nachrichten anderer Nutzer zu verbergen", "You are trying to access %(roomName)s.": "Du versuchst, auf den Raum \"%(roomName)s\" zuzugreifen.", - "af": "Afrikaans", - "ar-ae": "Arabisch (VAE)", - "ar-bh": "Arabisch (Bahrain)", - "ar-dz": "Arabisch (Algerien)", - "ar-eg": "Arabisch (Ägypten)", - "ar-iq": "Arabisch (Irak)", - "ar-jo": "Arabisch (Jordanien)", - "ar-kw": "Arabisch (Kuwait)", - "ar-lb": "Arabisch (Libanon)", - "ar-ly": "Arabisch (Lybien)", - "ar-ma": "Arabisch (Marokko)", - "ar-om": "Arabisch (Oman)", - "ar-qa": "Arabisch (Katar)", - "ar-sa": "Arabisch (Saudi Arabien)", - "ar-sy": "Arabisch (Syrien)", - "ar-tn": "Arabisch (Tunesien)", - "ar-ye": "Arabisch (Jemen)", - "be": "Weißrussisch", - "bg": "Bulgarisch", - "cs": "Tschechisch", - "de-at": "Deutsch (Österreich)", - "de-ch": "Deutsch (Schweiz)", - "de-li": "Deutsch (Liechtenstein)", - "de-lu": "Deutsch (Luxemburg)", - "el": "Neugriechisch", - "en-au": "Englisch (Australien)", - "en-bz": "Englisch (Belize)", - "en-ca": "Englisch (Kanada)", - "en-gb": "Englisch (Vereinigtes Königreich)", - "en-ie": "Englisch (Irland)", - "en-jm": "Englisch (Jamaika)", - "en-nz": "Englisch (Neuseeland)", - "en-tt": "Englisch (Trinidad)", - "en-us": "Englisch (Vereinigte Staaten)", - "en-za": "Englisch (Südafrika)", - "es-ar": "Spanisch (Argentinien)", - "es-bo": "Spanisch (Bolivien)", - "es-cl": "Spanisch (Chile)", - "es-co": "Spanisch (Kolumbien)", - "es-cr": "Spanisch (Costa Rica)", - "es-do": "Spanisch (Dominikanische Republik)", - "es-ec": "Spanisch (Ecuador)", - "es-gt": "Spanisch (Guatemala)", - "es-hn": "Spanisch (Honduras)", - "es-mx": "Spanisch (Mexiko)", - "es-ni": "Spanisch (Nicaragua)", - "es-pa": "Spanisch (Panama)", - "es-pe": "Spanisch (Peru)", - "es-pr": "Spanisch (Puerto Rico)", - "es-py": "Spanisch (Paraguay)", - "es": "Spanisch (Spanien)", - "es-sv": "Spanisch (El Salvador)", - "es-uy": "Spanisch (Uruguay)", - "es-ve": "Spanisch (Venezuela)", - "et": "Estländisch", - "eu": "Baskisch (Baskenland)", - "fa": "Persisch (Farsi)", - "fr-be": "Französisch (Belgien)", - "fr-ca": "Französisch (Kanada)", - "fr-ch": "Französisch (Schweiz)", - "fr": "Französisch", - "fr-lu": "Französisch (Luxemburg)", - "gd": "Gälisch (Schottland)", - "he": "Hebräisch", - "hr": "Kroatisch", - "hu": "Ungarisch", - "id": "Indonesisch", - "is": "Isländisch", - "it-ch": "Italienisch (Schweiz)", - "it": "Italienisch", - "ja": "Japanisch", - "ji": "Jiddisch", - "ko": "Koreanisch", - "lt": "Litauisch", - "lv": "Lettisch", - "mk": "Mazedonisch (FYROM)", - "ms": "Malaysisch", - "mt": "Maltesisch", - "nl-be": "Niederländisch (Belgien)", - "nl": "Niederländisch", - "no": "Norwegisch", - "pl": "Polnisch", - "pt": "Portugiesisch", - "rm": "Rätoromanisch", - "ro-mo": "Rumänisch (Republik Moldau/Moldawien)", - "ro": "Rumänisch", - "ru-mo": "Russisch (Republik Moldau/Moldawien)", - "sb": "Sorbisch", - "sk": "Slowakisch", - "sl": "Slowenisch", - "sq": "Albanisch", - "sr": "Serbisch", - "sv-fi": "Schwedisch (Finnland)", - "sv": "Schwedisch", - "sx": "Sutu", - "sz": "Samisch (Lappisch)", - "th": "Thailändisch", - "tn": "Setswana", - "tr": "Türkisch", - "ts": "Tsonga", - "uk": "Ukrainisch", - "ur": "Urdu", - "ve": "Tshivenda", - "vi": "Vietnamesisch", - "zh-cn": "Chinesisch (Volksrepublik China)", - "zh-hk": "Chinesisch (Hong Kong SAR)", - "zh-sg": "Chinesisch (Singapur)", - "zh-tw": "Chinesisch (Taiwan)", - "zu": "Zulu", - "ca": "Katalanisch", - "fi": "Finnisch", - "fo": "Färöisch", - "ga": "Irisch", - "hi": "Hindi", - "xh": "Xhosa", "Monday": "Montag", "Tuesday": "Dienstag", "Wednesday": "Mittwoch", diff --git a/src/i18n/strings/el.json b/src/i18n/strings/el.json index 1211aab6ad..9b127f3c4f 100644 --- a/src/i18n/strings/el.json +++ b/src/i18n/strings/el.json @@ -1,5 +1,4 @@ { - "af": "Αφρικάνικα", "Error": "Σφάλμα", "Failed to forget room %(errCode)s": "Δεν ήταν δυνατή η διαγραφή του δωματίου (%(errCode)s)", "Failed to join the room": "Δεν ήταν δυνατή η σύνδεση στο δωμάτιο", @@ -12,22 +11,6 @@ "Settings": "Ρυθμίσεις", "unknown error code": "άγνωστος κωδικός σφάλματος", "Sunday": "Κυριακή", - "ar-ae": "Αραβικά (Η.Α.Ε)", - "ar-bh": "Αραβικά (Μπαχρέιν)", - "ar-dz": "Αραβικά (Αλγερία)", - "ar-eg": "Αραβικά (Αίγυπτος)", - "ar-iq": "Αραβικά (Ιράκ)", - "ar-jo": "Αραβικά (Ιορδανία)", - "ar-kw": "Αραβικά (Κουβέιτ)", - "ar-lb": "Αραβικά (Λίβανος)", - "ar-ly": "Αραβικά (Λιβύη)", - "ar-ma": "Αραβικά (Μαρόκο)", - "ar-om": "Αραβικά (Ομάν)", - "ar-qa": "Αραβικά (Κατάρ)", - "ar-sa": "Αραβικά (Σαουδική Αραβία)", - "ar-sy": "Αραβικά (Συρία)", - "ar-tn": "Αραβικά (Τυνισία)", - "ar-ye": "Αραβικά (Υεμένη)", "accept": "αποδοχή", "%(targetName)s accepted an invitation.": "%(targetName)s δέχτηκε την πρόσκληση.", "%(targetName)s accepted the invitation for %(displayName)s.": "%(targetName)s δέχτηκες την πρόσκληση για %(displayName)s.", @@ -64,109 +47,6 @@ "Anyone who knows the room's link, apart from guests": "Oποιοσδήποτε", "all room members, from the point they joined": "όλα τα μέλη, από τη στιγμή που συνδέθηκαν", "%(items)s and %(lastItem)s": "%(items)s %(lastItem)s", - "be": "Λευκορώσικα", - "bg": "Βουλγάρικα", - "ca": "Καταλανικά", - "cs": "Τσέχικα", - "da": "Δανέζικα", - "de-at": "Γερμανικά (Αυστρία)", - "de-ch": "Γερμανικά (Ελβετία)", - "de": "Γερμανικά", - "de-li": "Γερμανικά (Λιχτενστάιν)", - "de-lu": "Γερμανικά (Λουξεμβούργο)", - "el": "Ελληνικά", - "en-au": "Αγγλικά (Αυστραλία)", - "en-bz": "Αγγλικά (Μπελίζε)", - "en-ca": "Αγγλικά (Καναδάς)", - "en": "Αγγλικά", - "en-gb": "Αγγλικά (Ηνωμένο Βασίλειο)", - "en-ie": "Αγγλικά (Ιρλανδία)", - "en-jm": "Αγγλικά (Τζαμάικα)", - "en-nz": "Αγγλικά (Νέα Ζηλανδία)", - "en-tt": "Αγγλικά (Τρινιντάντ)", - "en-us": "Αγγλικά (Ηνωμένες Πολιτείες)", - "en-za": "Αγγλικά (Νότια Αφρική)", - "es-ar": "Ισπανικά (Αργεντινή)", - "es-bo": "Ισπανικά (Βολιβία)", - "es-cl": "Ισπανικά (Χιλή)", - "es-co": "Ισπανικά (Κολομβία)", - "es-cr": "Ισπανικά (Κόστα Ρίκα)", - "es-do": "Ισπανικά (Δομινικανή Δημοκρατία)", - "es-ec": "Ισπανικά (Ισημερινός)", - "es-gt": "Ισπανικά (Γουατεμάλα)", - "es-hn": "Ισπανικά (Ονδούρα)", - "es-mx": "Ισπανικά (Μεξικό)", - "es-ni": "Ισπανικά (Νικαράγουα)", - "es-pa": "Ισπανικά (Παναμάς)", - "es-pe": "Ισπανικά (Περού)", - "es-pr": "Ισπανικά (Πουέρτο Ρίκο)", - "es-py": "Ισπανικά (Παραγουάη)", - "es": "Ισπανικά (Ισπανία)", - "es-sv": "Ισπανικά (Ελ Σαλβαδόρ)", - "es-uy": "Ισπανικά (Ουρουγουάη)", - "es-ve": "Ισπανικά (Βενεζουέλα)", - "et": "Εσθονικά", - "eu": "Βασκική (Βασκική)", - "fa": "Φάρσι", - "fi": "Φινλανδικά", - "fo": "Φαρόε", - "fr-be": "Γαλλικά (Βέλγιο)", - "fr-ca": "Γαλλικά (Καναδάς)", - "fr-ch": "Γαλλικά (Ελβετία)", - "fr": "Γαλλικά", - "fr-lu": "Γαλλικά (Λουξεμβούργο)", - "ga": "Ιρλανδικά", - "gd": "Γαελική (Σκωτία)", - "he": "Εβραϊκά", - "hi": "Χίντι", - "hr": "Κροατικά", - "hu": "Ουγγρικά", - "is": "Ισλανδικά", - "it-ch": "Ιταλικά (Ελβετία)", - "it": "Ιταλικά", - "ja": "Ιαπωνικά", - "ji": "Γίντις", - "ko": "Κορεάτικα", - "lt": "Λιθουανικά", - "mk": "Μακεδονική (ΠΓΔΜ)", - "ms": "Μαλαισίας", - "mt": "Μαλτέζικα", - "nl-be": "Ολλανδικά (Βέλγιο)", - "nl": "Ολλανδικά", - "no": "Νορβηγικά", - "pl": "Πολωνέζικα", - "pt-br": "Πορτογαλικά Βραζιλίας", - "pt": "Πορτογαλικά", - "rm": "Ραιτορωμαϊκά", - "ro-mo": "Ρουμάνικα (Δημοκρατία της Μολδαβίας)", - "ro": "Ρουμάνικα", - "ru-mo": "Ρώσικα (Δημοκρατία της Μολδαβίας)", - "ru": "Ρώσικα", - "sb": "Σορβικά", - "sk": "Σλοβάκικα", - "sl": "Σλοβενικά", - "sq": "Αλβανικά", - "sr": "Σερβικά", - "sv-fi": "Σουηδικά (Φινλανδία)", - "sv": "Σουηδικά", - "sx": "Σούτου", - "sz": "Σάμη (Λαπωνικά)", - "th": "Ταϊλανδέζικα", - "tn": "Τσουάνα", - "tr": "Τουρκικά", - "ts": "Τσονγκά", - "uk": "Ουκρανικά", - "ur": "Ουρντού", - "ve": "Venda", - "vi": "Βιετναμέζικα", - "xh": "Ξόσα", - "zh-cn": "Κινέζικα (ΛΔΚ)", - "zh-hk": "Κινέζικα (ΕΔΠ Χονγκ Κονγκ)", - "zh-sg": "Κινέζικα (Σιγκαπούρη)", - "zh-tw": "Κινέζικα (Ταϊβάν)", - "zu": "Ζουλού", - "id": "Ινδονησιακά", - "lv": "Λετονικά", "A text message has been sent to +%(msisdn)s. Please enter the verification code it contains": "Ένα μήνυμα στάλθηκε στο +%(msisdn)s. Παρακαλώ γράψε τον κωδικό επαλήθευσης που περιέχει", "Access Token:": "Κωδικός πρόσβασης:", "Always show message timestamps": "Εμφάνιση πάντα της ένδειξης ώρας στα μηνύματα", diff --git a/src/i18n/strings/en_US.json b/src/i18n/strings/en_US.json index bb6a6e8c9b..3e08c386f8 100644 --- a/src/i18n/strings/en_US.json +++ b/src/i18n/strings/en_US.json @@ -1,125 +1,5 @@ { "Add a widget": "Add a widget", - "af": "Afrikaans", - "ar-ae": "Arabic (U.A.E.)", - "ar-bh": "Arabic (Bahrain)", - "ar-dz": "Arabic (Algeria)", - "ar-eg": "Arabic (Egypt)", - "ar-iq": "Arabic (Iraq)", - "ar-jo": "Arabic (Jordan)", - "ar-kw": "Arabic (Kuwait)", - "ar-lb": "Arabic (Lebanon)", - "ar-ly": "Arabic (Libya)", - "ar-ma": "Arabic (Morocco)", - "ar-om": "Arabic (Oman)", - "ar-qa": "Arabic (Qatar)", - "ar-sa": "Arabic (Saudi Arabia)", - "ar-sy": "Arabic (Syria)", - "ar-tn": "Arabic (Tunisia)", - "ar-ye": "Arabic (Yemen)", - "be": "Belarusian", - "bg": "Bulgarian", - "ca": "Catalan", - "cs": "Czech", - "da": "Danish", - "de-at": "German (Austria)", - "de-ch": "German (Switzerland)", - "de": "German", - "de-li": "German (Liechtenstein)", - "de-lu": "German (Luxembourg)", - "el": "Greek", - "en-au": "English (Australia)", - "en-bz": "English (Belize)", - "en-ca": "English (Canada)", - "en": "English", - "en-gb": "English (United Kingdom)", - "en-ie": "English (Ireland)", - "en-jm": "English (Jamaica)", - "en-nz": "English (New Zealand)", - "en-tt": "English (Trinidad)", - "en-us": "English (United States)", - "en-za": "English (South Africa)", - "es-ar": "Spanish (Argentina)", - "es-bo": "Spanish (Bolivia)", - "es-cl": "Spanish (Chile)", - "es-co": "Spanish (Colombia)", - "es-cr": "Spanish (Costa Rica)", - "es-do": "Spanish (Dominican Republic)", - "es-ec": "Spanish (Ecuador)", - "es-gt": "Spanish (Guatemala)", - "es-hn": "Spanish (Honduras)", - "es-mx": "Spanish (Mexico)", - "es-ni": "Spanish (Nicaragua)", - "es-pa": "Spanish (Panama)", - "es-pe": "Spanish (Peru)", - "es-pr": "Spanish (Puerto Rico)", - "es-py": "Spanish (Paraguay)", - "es": "Spanish (Spain)", - "es-sv": "Spanish (El Salvador)", - "es-uy": "Spanish (Uruguay)", - "es-ve": "Spanish (Venezuela)", - "et": "Estonian", - "eu": "Basque (Basque)", - "fa": "Farsi", - "fi": "Finnish", - "fo": "Faeroese", - "fr-be": "French (Belgium)", - "fr-ca": "French (Canada)", - "fr-ch": "French (Switzerland)", - "fr": "French", - "fr-lu": "French (Luxembourg)", - "ga": "Irish", - "gd": "Gaelic (Scotland)", - "he": "Hebrew", - "hi": "Hindi", - "hr": "Croatian", - "hu": "Hungarian", - "id": "Indonesian", - "is": "Icelandic", - "it-ch": "Italian (Switzerland)", - "it": "Italian", - "ja": "Japanese", - "ji": "Yiddish", - "ko": "Korean", - "lt": "Lithuanian", - "lv": "Latvian", - "mk": "Macedonian (FYROM)", - "ms": "Malaysian", - "mt": "Maltese", - "nl-be": "Dutch (Belgium)", - "nl": "Dutch", - "no": "Norwegian", - "pl": "Polish", - "pt-br": "Brazilian Portuguese", - "pt": "Portuguese", - "rm": "Rhaeto-Romanic", - "ro-mo": "Romanian (Republic of Moldova)", - "ro": "Romanian", - "ru-mo": "Russian (Republic of Moldova)", - "ru": "Russian", - "sb": "Sorbian", - "sk": "Slovak", - "sl": "Slovenian", - "sq": "Albanian", - "sr": "Serbian", - "sv-fi": "Swedish (Finland)", - "sv": "Swedish", - "sx": "Sutu", - "sz": "Sami (Lappish)", - "th": "Thai", - "tn": "Tswana", - "tr": "Turkish", - "ts": "Tsonga", - "uk": "Ukrainian", - "ur": "Urdu", - "ve": "Venda", - "vi": "Vietnamese", - "xh": "Xhosa", - "zh-cn": "Chinese (PRC)", - "zh-hk": "Chinese (Hong Kong SAR)", - "zh-sg": "Chinese (Singapore)", - "zh-tw": "Chinese (Taiwan)", - "zu": "Zulu", "AM": "AM", "PM": "PM", "A text message has been sent to +%(msisdn)s. Please enter the verification code it contains": "A text message has been sent to +%(msisdn)s. Please enter the verification code it contains", diff --git a/src/i18n/strings/eo.json b/src/i18n/strings/eo.json index 91cd6c3450..0967ef424b 100644 --- a/src/i18n/strings/eo.json +++ b/src/i18n/strings/eo.json @@ -1,15 +1 @@ -{ - "ar-ae": "la araba (Unuiĝintaj Arabaj Emirlandoj)", - "ar-bh": "la araba (Bareijno)", - "ar-dz": "la araba (Alĝerio)", - "ar-eg": "la araba (Egiptio)", - "ar-iq": "la araba (Irako)", - "ar-jo": "la araba (Jordanio)", - "ar-kw": "la araba (Kuvayto)", - "ar-lb": "la araba (Libano)", - "ar-ly": "la araba (Libio)", - "ar-ma": "la araba (Maroko)", - "ar-om": "la araba (Omano)", - "ar-qa": "la araba (Kataro)", - "ar-sa": "la araba (Sauda Arabio)" -} +{} diff --git a/src/i18n/strings/es.json b/src/i18n/strings/es.json index 499da6e819..ecadaa31d7 100644 --- a/src/i18n/strings/es.json +++ b/src/i18n/strings/es.json @@ -1,124 +1,4 @@ { - "af": "Afrikáans", - "ar-ae": "Árabe (Emiratos Árabes Unidos)", - "ar-bh": "Árabe (Baréin)", - "ar-dz": "Árabe (Argelia)", - "ar-eg": "Árabe (Egipto)", - "ar-iq": "Árabe (Irak)", - "ar-jo": "Árabe (Jordania)", - "ar-kw": "Árabe (Kuwait)", - "ar-lb": "Árabe (Líbano)", - "ar-ly": "Árabe (Libia)", - "ar-ma": "Árabe (Marruecos)", - "ar-om": "Árabe (Omán)", - "ar-qa": "Árabe (Catar)", - "ar-sa": "Árabe (Arabia Saudita)", - "ar-sy": "Árabe (Siria)", - "ar-tn": "Árabe (Túnez)", - "ar-ye": "Árabe (Yemen)", - "be": "Bielorrusia", - "bg": "Bulgaria", - "ca": "Catalán", - "cs": "Checo", - "da": "Danés", - "de-at": "Alemán (Austria)", - "de-ch": "Alemán (Suiza)", - "de": "Alemán", - "de-li": "Alemán (Liechtenstein)", - "de-lu": "Alemán (Luxemburgo)", - "el": "Griego", - "en-au": "Inglés (Australia)", - "en-bz": "Inglés (Belice)", - "en-ca": "Inglés (Canadá)", - "en": "Inglés", - "en-gb": "Inglés (Reino Unido)", - "en-ie": "Inglés (Irlanda)", - "en-jm": "Inglés (Jamaica)", - "en-nz": "Inglés (Nueva Zelanda)", - "en-tt": "Inglés (Trinidad y Tobago)", - "en-us": "Inglés (Estados Unidos)", - "en-za": "Inglés (Sudáfrica)", - "es-ar": "Español (Argentina)", - "es-bo": "Español (Bolivia)", - "es-cl": "Español (Chile)", - "es-co": "Español (Colombia)", - "es-cr": "Español (Costa Rica)", - "es-do": "Español (República Dominicana)", - "es-ec": "Español (Ecuador)", - "es-gt": "Español (Guatemala)", - "es-hn": "Español (Honduras)", - "es-mx": "Español (México)", - "es-ni": "Español (Nicaragua)", - "es-pa": "Español (Panamá)", - "es-pe": "Español (Perú)", - "es-pr": "Español (Puerto Rico)", - "es-py": "Español (Paraguay)", - "es": "Español (España)", - "es-sv": "Español (El Salvador)", - "es-uy": "Español (Uruguay)", - "es-ve": "Español (Venezuela)", - "et": "Estonio", - "eu": "Vasco", - "fa": "Persa", - "fi": "Finés", - "fo": "Feroés", - "fr-be": "Francés (Bélgica)", - "fr-ca": "Francés (Canadá)", - "fr-ch": "Francés (Suiza)", - "fr": "Francés", - "fr-lu": "Francés (Luxemburgo)", - "ga": "Irlandés", - "gd": "Gaélico (Escocia)", - "he": "Hebreo", - "hi": "Hindi", - "hr": "Croata", - "hu": "Húngaro", - "id": "Indonesio", - "is": "Islandés", - "it-ch": "Italiano (Suiza)", - "it": "Italiano", - "ja": "Japonés", - "ji": "Yidis", - "ko": "Coreano", - "lt": "Lituano", - "lv": "Letón", - "mk": "Macedonio", - "ms": "Malayo", - "mt": "Maltés", - "nl-be": "Holandés (Bélgica)", - "nl": "Holandés", - "no": "Noruego", - "pl": "Polaco", - "pt-br": "Portugués (Brasil)", - "pt": "Portugués", - "rm": "Retorrománico", - "ro-mo": "Rumano (República de Moldavia)", - "ro": "Rumano", - "ru-mo": "Ruso (República de Moldavia)", - "ru": "Ruso", - "sb": "Sorbio", - "sk": "Eslovaco", - "sl": "Esloveno", - "sq": "Albanés", - "sr": "Serbio", - "sv-fi": "Sueco (Finlandia)", - "sv": "Sueco", - "sx": "Sotho", - "sz": "Sami (Lapón)", - "th": "Tailandés", - "tn": "Setsuana", - "tr": "Turco", - "ts": "Songa", - "uk": "Ucraniano", - "ur": "Urdú", - "ve": "Venda", - "vi": "Vietnamita", - "xh": "Josa", - "zh-cn": "Chino Mandarín", - "zh-hk": "Chino (Hong Kong RAE)", - "zh-sg": "Chino (Singapur)", - "zh-tw": "Chino (Taiwanés)", - "zu": "Zulú", "A text message has been sent to +%(msisdn)s. Please enter the verification code it contains": "Un mensaje de texto ha sido enviado a +%(msisdn)s. Por favor ingrese el código de verificación que lo contiene", "accept": "Aceptar", "%(targetName)s accepted an invitation.": "%(targetName)s ha aceptado una invitación.", diff --git a/src/i18n/strings/eu.json b/src/i18n/strings/eu.json index aa9857c3dd..3a17e46c98 100644 --- a/src/i18n/strings/eu.json +++ b/src/i18n/strings/eu.json @@ -1,125 +1,4 @@ { - "af": "Afrikaans", - "ar-ae": "Arabiera (Arabiar Emirerri Batuak)", - "ar-bh": "Arabiera (Bahrain)", - "ar-dz": "Arabiera (Algeria)", - "ar-eg": "Arabiera (Egipto)", - "ar-iq": "Arabiera (Irak)", - "ar-jo": "Arabiera (Jordania)", - "ar-kw": "Arabiera (Kuwait)", - "ar-lb": "Arabiera (Libano)", - "ar-ly": "Arabiera (Libia)", - "ar-ma": "Arabiera (Maroko)", - "ar-om": "Arabiera (Oman)", - "ar-qa": "Arabiera (Qatar)", - "ar-sa": "Arabiera (Saudi Arabia)", - "Cancel": "Utzi", - "ar-sy": "Arabiera (Siria)", - "ar-tn": "Arabiera (Tunisia)", - "ar-ye": "Arabiera (Yemen)", - "be": "Bielorrusiera", - "bg": "Bulgariera", - "ca": "Katalana", - "cs": "Txekiera", - "da": "Daniera", - "de-at": "Alemana (Austria)", - "de-ch": "Alemana (Suitza)", - "de": "Alemana", - "de-li": "Alemana (Liechtenstein)", - "de-lu": "Alemana (Luxenburgo)", - "el": "Greziera", - "en-au": "Ingelesa (Australia)", - "en-bz": "Ingelesa (Belize)", - "en-ca": "Ingelesa (Kanada)", - "en": "Ingelesa", - "en-gb": "Ingelesa (Erresuma batua)", - "en-ie": "Ingelesa (Irlanda)", - "en-jm": "Ingelesa (Jamaika)", - "en-nz": "Ingelesa (Zeelanda Berria)", - "en-tt": "Ingelesa (Trinidad)", - "en-us": "Ingelesa (Estatu Batuak)", - "en-za": "Ingelesa (Hego Afrika)", - "es-ar": "Espainiera (Argentina)", - "es-bo": "Espainiera (Bolivia)", - "es-cl": "Espainiera (Txile)", - "es-co": "Espainiera (Kolonbia)", - "es-cr": "Espainiera (Costa Rica)", - "es-do": "Espainiera (Dominikar Errepublika)", - "es-ec": "Espainiera (Ekuador)", - "es-gt": "Espainiera (Guatemala)", - "es-hn": "Espainiera (Honduras)", - "es-mx": "Espainiera (Mexiko)", - "es-ni": "Espainiera (Nikaragua)", - "es-pa": "Espainiera (Panama)", - "es-pe": "Espainiera (Peru)", - "es-pr": "Espainiera (Puerto Rico)", - "es-py": "Espainiera (Paraguay)", - "es": "Espainiera (Espainia)", - "es-sv": "Espainiera (El Salvador)", - "es-uy": "Espainiera (Uruguai)", - "es-ve": "Espainiera (Venezuela)", - "et": "Estoniera", - "eu": "Euskara", - "fa": "Farsiera", - "fi": "Finlandiera", - "fo": "Faroera", - "fr-be": "Frantsesa (Belgika)", - "fr-ca": "Frantsesa (Kanada)", - "fr-ch": "Frantsesa (Suitza)", - "fr": "Frantsesa", - "fr-lu": "Frantsesa (Luxenburgo)", - "ga": "Irlandera", - "gd": "Gaelikoa (Eskozia)", - "he": "Hebreera", - "hi": "Hindi", - "hr": "Kroaziera", - "hu": "Hungariera", - "id": "Indonesiera", - "is": "Islandiera", - "it-ch": "Italiera (Suitza)", - "it": "Italiera", - "ja": "Japoniera", - "ji": "Yiddish", - "ko": "Korearra", - "lt": "Lituaniera", - "lv": "Letoniera", - "mk": "Mazedoniera (FYROM)", - "ms": "Malaysiera", - "mt": "Maltera", - "nl-be": "Nederlandera (Belgika)", - "nl": "Nederlandera", - "no": "Norvegiera", - "pl": "Poloniera", - "pt-br": "Brasilgo portugalera", - "pt": "Portugalera", - "rm": "Erretorromaniera", - "ro-mo": "Errumaniera (Moldavia)", - "ro": "Errumaniera", - "ru-mo": "Errusiera (Moldavia)", - "ru": "Errusiera", - "sb": "Sorbiera", - "sk": "Eslovakiera", - "sl": "Esloveniera", - "sq": "Albaniera", - "sr": "Serbiera", - "sv-fi": "Suediera (Finlandia)", - "sv": "Suediera", - "sx": "Sutu", - "sz": "Sami (Laponiera)", - "th": "Thailandiera", - "tn": "Tswanera", - "tr": "Turkiera", - "ts": "Tsonga", - "uk": "Ukrainera", - "ur": "Urdu", - "ve": "Vendera", - "vi": "Vietnamera", - "xh": "Xhosera", - "zh-cn": "Txinera (PRC)", - "zh-hk": "Txinera (Hong Kong)", - "zh-sg": "Txinera (Singapur)", - "zh-tw": "Txinera (Taiwan)", - "zu": "Zulu", "a room": "gela bat", "A text message has been sent to +%(msisdn)s. Please enter the verification code it contains": "Mezu bat bidali da +%(msisdn)s zenbakira. Sartu hemen mezuko egiaztaketa kodea", "Accept": "Onartu", diff --git a/src/i18n/strings/fr.json b/src/i18n/strings/fr.json index f6da302fad..0dd2a6fcbb 100644 --- a/src/i18n/strings/fr.json +++ b/src/i18n/strings/fr.json @@ -1,124 +1,4 @@ { - "af": "Afrikaans", - "ar-ae": "Arabic (U.A.E.)", - "ar-bh": "Arabic (Bahrain)", - "ar-dz": "Arabic (Algeria)", - "ar-eg": "Arabic (Egypt)", - "ar-iq": "Arabic (Iraq)", - "ar-jo": "Arabic (Jordan)", - "ar-kw": "Arabic (Kuwait)", - "ar-lb": "Arabic (Lebanon)", - "ar-ly": "Arabic (Libya)", - "ar-ma": "Arabic (Morocco)", - "ar-om": "Arabic (Oman)", - "ar-qa": "Arabic (Qatar)", - "ar-sa": "Arabic (Saudi Arabia)", - "ar-sy": "Arabic (Syria)", - "ar-tn": "Arabic (Tunisia)", - "ar-ye": "Arabic (Yemen)", - "be": "Belarusian", - "bg": "Bulgarian", - "ca": "Catalan", - "cs": "Czech", - "da": "Danish", - "de-at": "German (Austria)", - "de-ch": "German (Switzerland)", - "de": "German", - "de-li": "German (Liechtenstein)", - "de-lu": "German (Luxembourg)", - "el": "Greek", - "en-au": "English (Australia)", - "en-bz": "English (Belize)", - "en-ca": "English (Canada)", - "en": "English", - "en-gb": "English (United Kingdom)", - "en-ie": "English (Ireland)", - "en-jm": "English (Jamaica)", - "en-nz": "English (New Zealand)", - "en-tt": "English (Trinidad)", - "en-us": "English (United States)", - "en-za": "English (South Africa)", - "es-ar": "Spanish (Argentina)", - "es-bo": "Spanish (Bolivia)", - "es-cl": "Spanish (Chile)", - "es-co": "Spanish (Colombia)", - "es-cr": "Spanish (Costa Rica)", - "es-do": "Spanish (Dominican Republic)", - "es-ec": "Spanish (Ecuador)", - "es-gt": "Spanish (Guatemala)", - "es-hn": "Spanish (Honduras)", - "es-mx": "Spanish (Mexico)", - "es-ni": "Spanish (Nicaragua)", - "es-pa": "Spanish (Panama)", - "es-pe": "Spanish (Peru)", - "es-pr": "Spanish (Puerto Rico)", - "es-py": "Spanish (Paraguay)", - "es": "Spanish (Spain)", - "es-sv": "Spanish (El Salvador)", - "es-uy": "Spanish (Uruguay)", - "es-ve": "Spanish (Venezuela)", - "et": "Estonian", - "eu": "Basque (Basque)", - "fa": "Farsi", - "fi": "Finnish", - "fo": "Faeroese", - "fr-be": "French (Belgium)", - "fr-ca": "French (Canada)", - "fr-ch": "French (Switzerland)", - "fr": "French", - "fr-lu": "French (Luxembourg)", - "ga": "Irish", - "gd": "Gaelic (Scotland)", - "he": "Hebrew", - "hi": "Hindi", - "hr": "Croatian", - "hu": "Hungarian", - "id": "Indonesian", - "is": "Icelandic", - "it-ch": "Italian (Switzerland)", - "it": "Italian", - "ja": "Japanese", - "ji": "Yiddish", - "ko": "Coréen", - "lt": "Lithuanian", - "lv": "Latvian", - "mk": "Macedonian (FYROM)", - "ms": "Malaysian", - "mt": "Maltese", - "nl-be": "Dutch (Belgium)", - "nl": "Dutch", - "no": "Norwegian", - "pl": "Polish", - "pt-br": "Brazilian Portuguese", - "pt": "Portuguese", - "rm": "Rhaeto-Romanic", - "ro-mo": "Romanian (Republic of Moldova)", - "ro": "Romanian", - "ru-mo": "Russian (Republic of Moldova)", - "ru": "Russian", - "sb": "Sorbian", - "sk": "Slovak", - "sl": "Slovenian", - "sq": "Albanian", - "sr": "Serbe", - "sv-fi": "Swedish (Finland)", - "sv": "Swedish", - "sx": "Sutu", - "sz": "Sami (Lappish)", - "th": "Thai", - "tn": "Tswana", - "tr": "Turkish", - "ts": "Tsonga", - "uk": "Ukrainian", - "ur": "Urdu", - "ve": "Venda", - "vi": "Vietnamese", - "xh": "Xhosa", - "zh-cn": "Chinese (PRC)", - "zh-hk": "Chinese (Hong Kong SAR)", - "zh-sg": "Chinese (Singapore)", - "zh-tw": "Chinese (Taiwan)", - "zu": "Zulu", "anyone": "n'importe qui", "Direct Chat": "Discussion directe", "Direct chats": "Conversations directes", diff --git a/src/i18n/strings/he.json b/src/i18n/strings/he.json index 2d9daecc49..0967ef424b 100644 --- a/src/i18n/strings/he.json +++ b/src/i18n/strings/he.json @@ -1,21 +1 @@ -{ - "ar-ae": "ערבית (U.A.E)", - "ar-bh": "ערבית (בחריין)", - "ar-dz": "ערבית (אלג'יריה)", - "ar-eg": "ערבית (מצריים)", - "ar-iq": "ערבית (עיראק)", - "ar-jo": "ערבית (ירדן)", - "af": "אפריקאית", - "ar-kw": "ערבית (כווית)", - "ar-lb": "ערבית (לבנון)", - "ar-ly": "ערבית (לוב)", - "ar-ma": "ערבית (מרוקו)", - "ar-om": "ערבית (אומן)", - "ar-qa": "ערבית (קטאר)", - "ar-sa": "ערבית (ערב הסעודית)", - "ar-sy": "ערבית (סוריה)", - "ar-tn": "ערבית (תוניסיה)", - "ar-ye": "ערבית (תימן)", - "be": "בלארוסית", - "bg": "בולגרית" -} +{} diff --git a/src/i18n/strings/hu.json b/src/i18n/strings/hu.json index eea96f9ea3..4809cb6559 100644 --- a/src/i18n/strings/hu.json +++ b/src/i18n/strings/hu.json @@ -25,123 +25,6 @@ "Thursday": "Csütörtök", "Friday": "Péntek", "Saturday": "Szombat", - "af": "Afrikaans", - "ar-ae": "Arabic (U.A.E.)", - "ar-bh": "Arab (Bahrain)", - "ar-dz": "Arab (Algeria)", - "ar-eg": "Arab (Egypt)", - "ar-iq": "Arab (Iraq)", - "ar-jo": "Arab (Jordan)", - "ar-kw": "Arab (Kuwait)", - "ar-lb": "Arab (Lebanon)", - "ar-ly": "Arab (Libya)", - "ar-ma": "Arab (Morocco)", - "ar-om": "Arab (Oman)", - "ar-qa": "Arab (Qatar)", - "ar-sa": "Arab (Saudi Arabia)", - "ar-sy": "Arab (Syria)", - "ar-tn": "Arab (Tunisia)", - "ar-ye": "Arab (Yemen)", - "be": "Belorusz", - "bg": "Bolgár", - "ca": "Katalán", - "cs": "Cseh", - "da": "Dán", - "de-at": "Német (Osztrák)", - "de-ch": "Német (Svájci)", - "de": "Német", - "de-li": "Német (Lichtenstein)", - "de-lu": "Német (Luxemburg)", - "el": "Görög", - "en-au": "Angol (Ausztrál)", - "en-bz": "Angol (Belize)", - "en-ca": "Angol (Kanada)", - "en": "Angol", - "en-gb": "Angol (Egyesült Királyság)", - "en-ie": "Angol (Ír)", - "en-jm": "Angol (Jamaika)", - "en-nz": "Angol (Új-Zéland)", - "en-tt": "Angol (Trinidad)", - "en-us": "Angol (Egyesült Államok)", - "en-za": "Angol (Dél-Afrika)", - "es-ar": "Spanyol (Argentína)", - "es-bo": "Spanyol (Bolívia)", - "es-cl": "Spanyol (Chile)", - "es-co": "Spanyol (Kolumbia)", - "es-cr": "Spanyol (Costa Rica)", - "es-do": "Spanyol (Dominikai Köztársaság)", - "es-ec": "Spanyol (Ecuador)", - "es-gt": "Spanyol (Guatemala)", - "es-hn": "Spanyol (Honduras)", - "es-mx": "Spanyol (Mexikó)", - "es-ni": "Spanyol (Nicaragua)", - "es-pa": "Spanyol (Panama)", - "es-pe": "Spanyol (Peru)", - "es-pr": "Spanyol (Puerto Rico)", - "es-py": "Spanyol (Paraguay)", - "es": "Spanyol (Spanyol)", - "es-sv": "Spanyol (El Salvador)", - "es-uy": "Spanyol (Uruguay)", - "es-ve": "Spanyol (Venezuela)", - "et": "Észt", - "eu": "Baszk (Baszk)", - "fa": "Perzsa", - "fi": "Finn", - "fo": "Feröer", - "fr-be": "Francia (Belgium)", - "fr-ca": "Francia (Kanada)", - "fr-ch": "Francia (Svájc)", - "fr": "Francia", - "fr-lu": "Francia (Luxemburg)", - "ga": "Ír", - "gd": "Gall (Skót)", - "he": "Héber", - "hi": "Hindu", - "hr": "Horvát", - "hu": "Magyar", - "id": "Indonéz", - "is": "Izland", - "it-ch": "Olasz (Svájc)", - "it": "Olasz", - "ja": "Japán", - "ji": "Jiddis", - "ko": "Korea", - "lt": "Litván", - "lv": "Lett", - "mk": "Macedónia (FYROM)", - "ms": "Maláj", - "mt": "Málta", - "nl-be": "Holland (Belgium)", - "nl": "Holland", - "no": "Norvég", - "pl": "Lengyel", - "pt-br": "Portugál (Brazil)", - "pt": "Portugál", - "ro-mo": "Román (Moldova)", - "ro": "Román", - "ru-mo": "Orosz (Moldova)", - "ru": "Orosz", - "sk": "Szlovák", - "sl": "Szlovén", - "sq": "Albán", - "sr": "Szerb", - "sv-fi": "Svéd (Finn)", - "sv": "Svéd", - "sx": "Sutu", - "sz": "Sami (Lapp)", - "th": "Thai", - "tr": "Török", - "ts": "Tsonga", - "uk": "Ukrán", - "ur": "Urdu", - "ve": "Venda", - "vi": "Vietnám", - "xh": "Xhosa", - "zh-cn": "Kína (PRC)", - "zh-hk": "Kína (Hong Kong SAR)", - "zh-sg": "Kína (Szingapúr)", - "zh-tw": "Kína (Tajvan)", - "zu": "Zulu", "A registered account is required for this action": "Regisztrált fiókra van szükség ehhez a művelethez", "a room": "egy szoba", "A text message has been sent to +%(msisdn)s. Please enter the verification code it contains": "Elküldtük a szöveges üzenetet ide: +%(msisdn)s. Kérlek add meg az ellenőrző kódot ami benne van", diff --git a/src/i18n/strings/it.json b/src/i18n/strings/it.json index 71b2f145a6..67df5bc332 100644 --- a/src/i18n/strings/it.json +++ b/src/i18n/strings/it.json @@ -20,10 +20,6 @@ "Error": "Errore", "Failed to join the room": "Impossibile entrare nella stanza", "Favourite": "Preferito", - "ar-ae": "Arabo (U.A.E.)", - "ar-bh": "Arabo (Bahrain)", - "ar-dz": "Arabo (Algeria)", - "ar-eg": "Arabo (Egitto)", "Sunday": "Domenica", "Monday": "Lunedì", "Tuesday": "Martedì", @@ -36,117 +32,6 @@ "Drop here %(toAction)s": "Rilascia qui %(toAction)s", "Failed to change password. Is your password correct?": "Modifica password fallita. La tua password è corretta?", "Continue": "Continua", - "ar-iq": "Arabo (Iraq)", - "ar-jo": "Arabo (Giordania)", - "ar-kw": "Arabo (Kuwait)", - "ar-lb": "Arabo (Libano)", - "ar-ly": "Arabo (Libia)", - "ar-ma": "Arabo (Marocco)", - "ar-om": "Arabo (Oman)", - "ar-qa": "Arabo (Qatar)", - "ar-sa": "Arabo (Arabia Saudita)", - "ar-sy": "Arabo (Siria)", - "ar-tn": "Arabo (Tunisia)", - "ar-ye": "Arabo (Yemen)", - "be": "Bielorusso", - "bg": "Bulgaro", - "ca": "Catalano", - "da": "Danese", - "de-at": "Tedesco (Austria)", - "de-ch": "Tedesco (Svizzera)", - "de": "Tedesco", - "de-li": "Tedesco (Liechtenstein)", - "de-lu": "Tedesco (Lussemburgo)", - "el": "Greco", - "en-au": "Inglese (Australia)", - "en-bz": "Inglese (Belize)", - "en-ca": "Inglese (Canada)", - "en": "Inglese", - "en-gb": "Inglese (Regno Unito)", - "en-ie": "Inglese (Irlanda)", - "en-jm": "Inglese (Jamaica)", - "en-nz": "Inglese (Nuova Zelanda)", - "en-tt": "Inglese (Trinidad)", - "en-us": "Inglese (Stati Uniti)", - "en-za": "Inglese (Sud Africa)", - "es-ar": "Spagnolo (Argentina)", - "es-bo": "Spagnolo (Bolivia)", - "es-cl": "Spagnolo (Cile)", - "es-co": "Spagnolo (Colombia)", - "es-cr": "Spagnolo (Costa Rica)", - "es-do": "Spagnolo (Repubblica Dominicana)", - "es-ec": "Spagnolo (Ecuador)", - "es-gt": "Spagnolo (Guatemala)", - "es-hn": "Spagnolo (Honduras)", - "es-mx": "Spagnolo (Messico)", - "es-ni": "Spagnolo (Nicaragua)", - "es-pa": "Spagnolo (Panama)", - "es-pe": "Spagnolo (Perù)", - "es-pr": "Spagnolo (Porto Rico)", - "es-py": "Spagnolo (Paraguay)", - "es": "Spagnolo (Spagna)", - "es-sv": "Spagnolo (El Salvador)", - "es-uy": "Spagnolo (Uruguay)", - "es-ve": "Spagnolo (Venezuela)", - "et": "Estone", - "eu": "Basco (Basco)", - "fa": "Farsi", - "fi": "Finlandese", - "fo": "Faeroese", - "fr-be": "Francese (Belgio)", - "fr-ca": "Francese (Canada)", - "fr-ch": "Francese (Svizzera)", - "fr": "Francese", - "fr-lu": "Francese (Lussemburgo)", - "ga": "Irlandese", - "gd": "Gaelico (Scozia)", - "he": "Ebraico", - "hi": "Hindi", - "hr": "Croato", - "hu": "Ungherese", - "id": "Indonesiano", - "is": "Islandese", - "it-ch": "Italiano (Svizzera)", - "it": "Italiano", - "ja": "Giapponese", - "ji": "Yiddish", - "ko": "Coreano", - "lt": "Lituano", - "lv": "Lettone", - "mk": "Macedone (FYROM)", - "ms": "Malese", - "mt": "Maltese", - "nl-be": "Olandese (Belgio)", - "nl": "Olandese", - "no": "Norvegese", - "pl": "Polacco", - "pt-br": "Portoghese Brasiliano", - "pt": "Portoghese", - "rm": "Romancio", - "ro-mo": "Rumeno (Repubblica di Moldavia)", - "ro": "Rumeno", - "ru-mo": "Russo (Repubblica di Moldavia)", - "ru": "Russo", - "sk": "Slovacco", - "sl": "Sloveno", - "sq": "Albanese", - "sr": "Serbo", - "sv-fi": "Svedese (Finlandia)", - "sv": "Svedese", - "sx": "Sutu", - "th": "Tailandese", - "tn": "Tswana", - "tr": "Turco", - "ts": "Tsonga", - "uk": "Ucraino", - "ur": "Urdu", - "vi": "Vietnamese", - "xh": "Xhosa", - "zh-cn": "Cinese (PRC)", - "zh-hk": "Cinese (Honk Kong SAR)", - "zh-sg": "Cinese (Singapore)", - "zh-tw": "Cinese (Taiwan)", - "zu": "Zulu", "a room": "una stanza", "%(targetName)s accepted an invitation.": "%(targetName)s ha accettato un invito.", "%(targetName)s accepted the invitation for %(displayName)s.": "%(targetName)s ha accettato l'invito per %(displayName)s.", diff --git a/src/i18n/strings/ja.json b/src/i18n/strings/ja.json index f0be3024a5..37eb3cfa5c 100644 --- a/src/i18n/strings/ja.json +++ b/src/i18n/strings/ja.json @@ -1,5 +1,4 @@ { - "ja": "日本語", "Anyone": "誰でも", "Anyone who knows the room's link, apart from guests": "誰でも部屋に参加できる (ゲストユーザは不可)", "Anyone who knows the room's link, including guests": "誰でも部屋に参加できる (ゲストユーザも可能)", @@ -63,125 +62,6 @@ "Riot collects anonymous analytics to allow us to improve the application.": "Riotはアプリケーションを改善するために匿名の分析情報を収集しています。", "Start chatting": "対話開始", "Start Chatting": "対話開始", - "af": "アフリカーンス語", - "be": "ベラルーシ語", - "bg": "ブルガリア語", - "ca": "カタルーニャ語", - "cs": "チェコ語", - "da": "デンマーク語", - "de-at": "ドイツ語(オーストリア)", - "de-ch": "ドイツ語(スイス)", - "de": "ドイツ語", - "de-li": "ドイツ語(リヒテンシュタイン)", - "de-lu": "ドイツ語(ルクセンブルク)", - "el": "ギリシア語", - "en-au": "英語(オーストラリア)", - "en-bz": "英語(ベリーズ)", - "en-ca": "英語(カナダ)", - "en": "英語", - "en-gb": "英語(イギリス)", - "en-ie": "英語(アイルランド)", - "en-jm": "英語(ジャマイカ)", - "en-nz": "英語 (ニュージーランド)", - "en-tt": "英語 (トリニダード)", - "ar-ae": "アラビア語 (アラブ首長国連邦)", - "ar-bh": "アラビア語 (バーレーン)", - "ar-dz": "アラビア語 (アルジェリア)", - "ar-eg": "アラビア語 (エジプト)", - "ar-iq": "アラビア語 (イラク)", - "ar-jo": "アラビア語 (ヨルダン)", - "ar-kw": "アラビア語 (クウェート)", - "ar-lb": "アラビア語 (レバノン)", - "ar-ly": "アラビア語 (リビア)", - "ar-ma": "アラビア語 (モロッコ)", - "ar-om": "アラビア語 (オマーン)", - "ar-qa": "アラビア語 (カタール)", - "ar-sa": "アラビア語 (サウジアラビア)", - "ar-sy": "アラビア語 (シリア)", - "ar-tn": "アラビア語 (チュニジア)", - "ar-ye": "アラビア語 (イエメン)", - "en-us": "英語 (アメリカ合衆国)", - "en-za": "英語 (南アフリカ)", - "es-ar": "スペイン語 (アルゼンチン)", - "es-bo": "スペイン語 (ボリビア)", - "es-cl": "スペイン語 (チリ)", - "es-co": "スペイン語 (コロンビア)", - "es-cr": "スペイン語 (コスタリカ)", - "es-do": "スペイン語 (ドミニカ共和国)", - "es-ec": "スペイン語 (エクアドル)", - "es-gt": "スペイン語 (グアテマラ)", - "es-hn": "スペイン語 (ホンジュラス)", - "es-mx": "スペイン語 (メキシコ)", - "es-ni": "スペイン語 (ニカラグア)", - "es-pa": "スペイン語 (パナマ)", - "es-pe": "スペイン語 (ペルー)", - "es-pr": "スペイン語 (プエルトリコ)", - "es-py": "スペイン語 (パラグアイ)", - "es": "スペイン語 (スペイン)", - "es-sv": "スペイン語 (エルサルバドル)", - "es-uy": "スペイン語 (ウルグアイ)", - "es-ve": "スペイン語 (ベネズエラ)", - "et": "エストニア語", - "eu": "バスク語", - "fa": "ペルシャ語", - "fi": "フィンランド語", - "fo": "フェロー語", - "fr-be": "フランス語 (ベルギー)", - "fr-ca": "フランス語 (カナダ)", - "fr-ch": "フランス語 (スイス)", - "fr": "フランス語 (フランス)", - "fr-lu": "フランス語 (ルクセンブルグ)", - "ga": "アイルランド語", - "gd": "ゲール語 (スコットランド)", - "he": "ヘブライ語", - "hi": "ヒンズー語", - "hr": "クロアチア語", - "hu": "ハンガリー語", - "id": "インドネシア語", - "is": "アイスランド語", - "it-ch": "イタリア語 (スイス)", - "it": "イタリア語 (イタリア)", - "ji": "イディッシュ語", - "ko": "韓国語", - "lt": "リトアニア語", - "lv": "ラトビア語", - "mk": "マケドニア語 (FYROM)", - "ms": "マレー語", - "mt": "マルタ語", - "nl-be": "オランダ語 (ベルギー)", - "nl": "オランダ語", - "no": "ノルウェー語 (ブークモール)", - "pl": "ポーランド語", - "pt-br": "ポルトガル語 (ブラジル)", - "pt": "ポルトガル語 (ポルトガル)", - "rm": "レトロマン語", - "ro-mo": "ルーマニア語 (モルドバ)", - "ro": "ルーマニア語", - "ru-mo": "ロシア語 (モルドバ)", - "ru": "ロシア語", - "sb": "ソルビア語", - "sk": "スロバキア語", - "sl": "スロベニア語", - "sq": "アルバニア語", - "sr": "セルビア語", - "sv-fi": "スウェーデン語 (フィンランド)", - "sv": "スウェーデン語", - "sx": "ソト語", - "sz": "サーミ語 (ラップ語)", - "th": "タイ語", - "tn": "ツワナ語", - "tr": "トルコ語", - "ts": "ツォンガ語", - "uk": "ウクライナ語", - "ur": "ウルドゥー語", - "ve": "ヴェンダ語", - "vi": "ベトナム語", - "xh": "コーサ語", - "zh-cn": "中国語 (中華人民共和国)", - "zh-hk": "中国語 (香港)", - "zh-sg": "中国語 (シンガポール)", - "zh-tw": "中国語 (台湾)", - "zu": "ズールー語", "Add": "追加", "No Microphones detected": "マイクが見つかりません", "No Webcams detected": "カメラが見つかりません", diff --git a/src/i18n/strings/ko.json b/src/i18n/strings/ko.json index e5faf01da7..89de8eae1f 100644 --- a/src/i18n/strings/ko.json +++ b/src/i18n/strings/ko.json @@ -1,32 +1,4 @@ { - "af": "아프리칸스어", - "ar-ae": "아랍어 (아랍 에미리트 연방)", - "ar-bh": "아랍어 (바레인)", - "ar-dz": "아랍어 (알제리)", - "ar-eg": "아랍어 (이집트)", - "ar-iq": "아랍어 (이라크)", - "ar-jo": "아랍어 (요르단)", - "ar-kw": "아랍어 (쿠웨이트)", - "ar-lb": "아랍어 (레바논)", - "ar-ly": "아랍어 (리비아)", - "ar-ma": "아랍어 (모로코)", - "ar-om": "아랍어 (오만)", - "ar-qa": "아랍어 (카타르)", - "ar-sa": "아랍어 (사우디아라비아)", - "ar-sy": "아랍어 (시리아)", - "ar-tn": "아랍어 (튀니지)", - "ar-ye": "아랍어 (예멘)", - "be": "벨라루스어", - "bg": "불가리아어", - "ca": "카탈로니아어", - "cs": "체코어", - "da": "덴마크어", - "de-at": "독일어 (오스트리아)", - "de-ch": "독일어 (스위스)", - "de": "독일어", - "de-li": "독일어 (리히텐슈타인)", - "de-lu": "독일어 (룩셈부르크)", - "el": "그리스어", "Cancel": "취소", "Close": "닫기", "Create new room": "새 방 만들기", @@ -54,96 +26,6 @@ "OK": "알았어요", "Welcome page": "환영 화면", "Continue": "게속하기", - "en-au": "영어 (호주)", - "en-bz": "영어 (벨리즈)", - "en-ca": "영어 (캐나다)", - "en": "영어", - "en-gb": "영어 (영국)", - "en-ie": "영어 (아일랜드)", - "en-jm": "영어 (자메이카)", - "en-nz": "영어 (뉴질랜드)", - "en-tt": "영어 (트리니다드토바고)", - "en-us": "영어 (미국)", - "en-za": "영어 (남아프리카)", - "es-ar": "스페인어 (아르헨티나)", - "es-bo": "스페인어 (볼리비아)", - "es-cl": "스페인어 (칠레)", - "es-co": "스페인어 (콜롬비아)", - "es-cr": "스페인어 (코스타리카)", - "es-do": "스페인어 (도미니카 공화국)", - "es-ec": "스페인어 (에콰도르)", - "es-gt": "스페인어 (과테말라)", - "es-hn": "스페인어 (온두라스)", - "es-mx": "스페인어 (멕시코)", - "es-ni": "스페인어 (니카라과)", - "es-pa": "스페인어 (파나마)", - "es-pe": "스페인어 (페루)", - "es-pr": "스페인어 (푸에르토리코)", - "es-py": "스페인어 (파라과이)", - "es": "스페인어 (스페인)", - "es-sv": "스페인어 (엘살바도르)", - "es-uy": "스페인어 (우루과이)", - "es-ve": "스페인어 (베네수엘라)", - "et": "에스토니아어", - "eu": "바스크어 (바스크)", - "fa": "페르시아어", - "fi": "핀란드어", - "fo": "페로스어", - "fr-be": "프랑스어 (벨기에)", - "fr-ca": "프랑스어 (캐나다)", - "fr-ch": "프랑스어 (스위스)", - "fr": "프랑스어", - "fr-lu": "프랑스어 (룩셈부르크)", - "ga": "아일랜드어", - "gd": "게일어 (스코틀랜드)", - "he": "히브리어", - "hi": "힌디어", - "hr": "크로아티아어", - "hu": "헝가리어", - "id": "인도네시아어", - "is": "아이슬란드어", - "it-ch": "이탈리아어 (스위스)", - "it": "이탈리아어", - "ja": "일본어", - "ji": "이디시어", - "ko": "한국어", - "lt": "리투아니아어", - "lv": "라트비아어", - "mk": "마케도니아어 (마케도니아 공화국)", - "ms": "말레이시아어", - "mt": "몰타어", - "nl-be": "네덜란드어 (벨기에)", - "nl": "네덜란드어", - "no": "노르웨이어", - "pl": "폴란드어", - "pt-br": "브라질 포르투갈어", - "pt": "포르투갈어", - "rm": "레토로만어", - "ro-mo": "루마니아어 (몰도바 공화국)", - "ro": "루마니아어", - "ru-mo": "러시아어 (몰도바 공확국)", - "ru": "러시아어", - "sb": "소르비아어", - "sk": "슬로바키아어", - "sr": "세르비아어", - "sv-fi": "스웨덴어 (핀란드)", - "sv": "스웨덴어", - "sx": "수투어", - "sz": "라플란드어 (라플란드)", - "th": "태국", - "tn": "츠와나어", - "tr": "터키어", - "ts": "총가어", - "uk": "우크라이나어", - "ur": "우르두어", - "ve": "벤다어", - "vi": "베트남어", - "xh": "코사어", - "zh-cn": "중국어 (중국)", - "zh-hk": "중국어 (홍콩)", - "zh-sg": "중국어 (싱가포르)", - "zh-tw": "중국어 (대만)", - "zu": "줄루어", "a room": "방", "Accept": "수락", "Account": "계정", diff --git a/src/i18n/strings/lv.json b/src/i18n/strings/lv.json index 041403b32f..9599d2e2d1 100644 --- a/src/i18n/strings/lv.json +++ b/src/i18n/strings/lv.json @@ -1,124 +1,4 @@ { - "af": "Afrikandu", - "ar-ae": "Arābu (A.A.E.)", - "ar-bh": "Arābu (Bahraina)", - "ar-dz": "Arābu (Alžīrija)", - "ar-eg": "Arābu (Ēģipte)", - "ar-iq": "Arābu (Irāka)", - "ar-jo": "Arābu (Jordāna)", - "ar-kw": "Arābu (Kuveita)", - "ar-lb": "Arābu (Lebanēna)", - "ar-ly": "Arābu (Lībija)", - "ar-ma": "Arābu (Maroka)", - "ar-om": "Arābu (Omāna)", - "ar-qa": "Arābu (Kvatara)", - "ar-sa": "Arābu (Saūda Arābija)", - "ar-sy": "Arābu (Sīrija)", - "ar-tn": "Arābu (Tunisija)", - "ar-ye": "Arābu (Jemena)", - "be": "Baltkrievu", - "bg": "Bulgāru", - "ca": "Katalāņu", - "cs": "Čehu", - "da": "Dāņu", - "de-at": "Vācu (Austrija)", - "de-ch": "Vācu (Šveice)", - "de": "Vācu", - "de-li": "Vācu (Lihtenšteina)", - "de-lu": "Vācu (Luksemburga)", - "el": "Grieķu", - "en-au": "Angļu (Austrālija)", - "en-bz": "Angļu (Beliza)", - "en-ca": "Angļu (Kanāda)", - "en": "Angļu", - "en-gb": "Angļu (Apvienotā Karaliste)", - "en-ie": "Angļu (Īrija)", - "en-jm": "Angļu (Jamaika)", - "en-nz": "Angļu (Jaunzēlande)", - "en-tt": "Angļu (Trinidāda)", - "en-us": "Angļu (ASV)", - "en-za": "Angļu (Dienvidāfrika)", - "es-ar": "Spāņu (Argentīna)", - "es-bo": "Spāņu (Bolīvija)", - "es-cl": "Spāņu (Čīle)", - "es-co": "Spāņu (Kolumbija)", - "es-cr": "Spāņu (Kostarika)", - "es-do": "Spāņu (Dominikānas Republika)", - "es-ec": "Spāņu (Ekvadora)", - "es-gt": "Spāņu (Gvatemala)", - "es-hn": "Spāņu (Hondurasa)", - "es-mx": "Spāņu (Meksika)", - "es-ni": "Spāņu (Nikaragva)", - "es-pa": "Spāņu (Panama)", - "es-pe": "Spāņu (Peru)", - "es-pr": "Spāņu (Puertoriko)", - "es-py": "Spāņu (Paragvaja)", - "es": "Spāņu (Spānija)", - "es-sv": "Spāņu (Salvadora)", - "es-uy": "Spāņu (Urugvaja)", - "es-ve": "Spāņu (Venecuēla)", - "et": "Igauņu", - "eu": "Basku (Basku Zeme)", - "fa": "Farsi", - "fi": "Somu", - "fo": "Fēriešu", - "fr-be": "Franču (Beļģija)", - "fr-ca": "Franču (Kanāda)", - "fr-ch": "Franču (Šveice)", - "fr": "Franču", - "fr-lu": "Franču (Luksemburga)", - "ga": "Īru", - "gd": "Gallu (Skotija)", - "he": "Ebreju", - "hi": "Hindi", - "hr": "Kroātu", - "hu": "Ungāru", - "id": "Indonēziešu", - "is": "Islandiešu", - "it-ch": "Itāļu (Šveice)", - "it": "Itāļu", - "ja": "Japāņu", - "ji": "Jidišs", - "ko": "Korejiešu", - "lt": "Lietuviešu", - "lv": "Latviešu", - "mk": "Maķedoniešu (FYROM)", - "ms": "Malaiziešu", - "mt": "Maltiešu", - "nl-be": "Nīderlandiešu (Beļģija)", - "nl": "Nīderlandiešu", - "no": "Norvēģu", - "pl": "Poļu", - "pt-br": "Brazīlijas portugāļu", - "pt": "Portugāļu", - "rm": "Retoromāņu", - "ro-mo": "Rumāņu (Moldovas Republika)", - "ro": "Rumāņu", - "ru-mo": "Krievu (Moldovas Republika)", - "ru": "Krievu", - "sb": "Sorbu", - "sk": "Slovāku", - "sl": "Slovēņu", - "sq": "Albāniešu", - "sr": "Serbu", - "sv-fi": "Zviedru (Somija)", - "sv": "Zviedru", - "sx": "Sutu", - "sz": "Sāmu (Lapu)", - "th": "Taju", - "tn": "Cvanu", - "tr": "Turku", - "ts": "Congu", - "uk": "Ukraiņu", - "ur": "Urdu", - "ve": "Vendu", - "vi": "Vjetnamiešu", - "xh": "Khosu", - "zh-cn": "Ķīniešu (ĶTR)", - "zh-hk": "Ķīniešu (Honkongas SAR)", - "zh-sg": "Ķīniešu (Singapūra)", - "zh-tw": "Ķīniešu (Taivāna)", - "zu": "Zulu", "a room": "istaba", "A text message has been sent to +%(msisdn)s. Please enter the verification code it contains": "Teksta ziņa tika nosūtīta +%(msisdn)s. Lūdzu ievadi tajā atrodamo verifikācijas kodu", "Accept": "Apstiprināt", diff --git a/src/i18n/strings/ml.json b/src/i18n/strings/ml.json index 97c9edd749..9f10cd25b7 100644 --- a/src/i18n/strings/ml.json +++ b/src/i18n/strings/ml.json @@ -33,8 +33,5 @@ "Failed to change password. Is your password correct?": "രഹസ്യവാക്ക് മാറ്റാന്‍ സാധിച്ചില്ല. രഹസ്യവാക്ക് ശരിയാണോ ?", "Continue": "മുന്നോട്ട്", "Microphone": "മൈക്രോഫോൺ", - "Camera": "ക്യാമറ", - "af": "ആഫ്രിക്കാൻസ്", - "ar-ae": "അറബി (യു.എ.ഇ.)", - "ar-bh": "അറബി (ബഹറിൻ)" + "Camera": "ക്യാമറ" } diff --git a/src/i18n/strings/nl.json b/src/i18n/strings/nl.json index ebb1c42056..bc92d7bcad 100644 --- a/src/i18n/strings/nl.json +++ b/src/i18n/strings/nl.json @@ -1,125 +1,4 @@ { - "af": "Afrikaans", - "ar-ae": "Arabisch (U.A.E.)", - "Direct Chat": "Privégesprek", - "ar-bh": "Arabisch (Bahrain)", - "ar-dz": "Arabisch (Algerije)", - "ar-eg": "Arabisch (Egypte)", - "ar-iq": "Arabisch (Irak)", - "ar-jo": "Arabisch (Jordanië)", - "ar-kw": "Arabisch (Koeweit)", - "ar-lb": "Arabisch (Libanon)", - "ar-ly": "Arabisch (Libië)", - "ar-ma": "Arabisch (Marokko)", - "ar-om": "Arabisch (Oman)", - "ar-qa": "Arabisch (Katar)", - "ar-sa": "Arabisch (Saoedi-Arabië)", - "ar-sy": "Arabisch (Syrië)", - "ar-tn": "Arabisch (Tunesië)", - "ar-ye": "Arabisch (Jemen)", - "be": "Wit-Russisch", - "bg": "Bulgaars", - "ca": "Catalaans", - "cs": "Tsjechisch", - "da": "Deens", - "de-at": "Duits (Oostenrijk)", - "de-ch": "Duits (Zwitserland)", - "de": "Duits", - "de-li": "Duits (Liechtenstein)", - "de-lu": "Duits (Luxemburg)", - "el": "Grieks", - "en-au": "Engels (Australië)", - "en-bz": "Engels (Belize)", - "en-ca": "Engels (Canada)", - "en": "Engels", - "en-gb": "Engels (Verenigd Koningkrijk)", - "en-ie": "Engels (Ierland)", - "en-jm": "Engels (Jamaica)", - "en-nz": "Engels (Nieuw Zeeland)", - "en-tt": "Engels (Trinidad)", - "en-us": "Engels (Verenigde Staten)", - "en-za": "Engels (Zuid-Afrika)", - "es-ar": "Spaans (Argentinië)", - "es-bo": "Spaans (Bolivië)", - "es-cl": "Spaans (Chili)", - "es-co": "Spaans (Colombia)", - "es-cr": "Spaans (Costa Rica)", - "es-do": "Spaans (Dominicaanse Republiek)", - "es-ec": "Spaans (Ecuador)", - "es-gt": "Spaans (Guatemala)", - "es-hn": "Spaans (Honduras)", - "es-mx": "Spaans (Mexico)", - "es-ni": "Spaans (Nicaragua)", - "es-pa": "Spaans (Panama)", - "es-pe": "Spaans (Peru)", - "es-pr": "Spaans (Puerto Rico)", - "es-py": "Spaans (Paraguay)", - "es": "Spaans (Spanje)", - "es-sv": "Spaans (El Salvador)", - "es-uy": "Spaans (Uruguay)", - "es-ve": "Spaans (Venezuela)", - "et": "Estlands", - "eu": "Baskisch (Bask)", - "fa": "Perzisch (Farsi)", - "fi": "Fins", - "fo": "Faeroesisch", - "fr-be": "Frans (België)", - "fr-ca": "Frans (Canada)", - "fr-ch": "Frans (Zwitserland)", - "fr": "Frans", - "fr-lu": "Frans (Luxemburg)", - "ga": "Iers", - "gd": "Keltisch (Schotland)", - "he": "Hebreeuws", - "hi": "Hindi", - "hr": "Kroatisch", - "hu": "Hongaars", - "id": "Indonesisch", - "is": "IJslands", - "it-ch": "Italiaans (Zwitserland)", - "it": "Italiaans", - "ja": "Japans", - "ji": "Jiddisch", - "ko": "Koreaans", - "lt": "Litouws", - "lv": "Lets", - "mk": "Macedonië (FYROM)", - "ms": "Maleisisch", - "mt": "Maltees", - "nl-be": "Nederlands (België)", - "nl": "Nederlands", - "no": "Noors", - "pl": "Pools", - "pt-br": "Braziliaans Portugees", - "pt": "Portugees", - "rm": "Rhetoromaans", - "ro-mo": "Roemeens (Moldavië)", - "ro": "Roemeens", - "ru-mo": "Russisch (Moldavië)", - "ru": "Russisch", - "sb": "Sorbisch", - "sk": "Slovaaks", - "sl": "Sloveens", - "sq": "Albanees", - "sr": "Servisch", - "sv-fi": "Zweeds (Finland)", - "sv": "Zweeds", - "sx": "Sutu", - "sz": "Sami (Lapland)", - "th": "Thais", - "tn": "Tswana", - "tr": "Turks", - "ts": "Tsonga", - "uk": "Oekraïens", - "ur": "Urdu", - "ve": "Venda", - "vi": "Vietnamees", - "xh": "Xhosa", - "zh-cn": "Chinees (PRC)", - "zh-hk": "Chinees (Hong Kong SAR)", - "zh-sg": "Chinees (Singapore)", - "zh-tw": "Chinees (Taiwan)", - "zu": "Zulu", "A text message has been sent to +%(msisdn)s. Please enter the verification code it contains": "Voer alsjeblieft de verificatiecode in die is verstuurd naar +%(msisdn)s", "accept": "accepteer", "%(targetName)s accepted an invitation.": "%(targetName)s heeft een uitnodiging geaccepteerd.", diff --git a/src/i18n/strings/pl.json b/src/i18n/strings/pl.json index 624302543d..724fa24564 100644 --- a/src/i18n/strings/pl.json +++ b/src/i18n/strings/pl.json @@ -72,21 +72,6 @@ "Usage": "Użycie", "Upload file": "Prześlij plik", "Unban": "Odbanuj", - "en": "Angielski", - "fi": "Fiński", - "fr": "Francuski", - "he": "Hebrajski", - "hu": "Węgierski", - "it": "Włoski", - "ja": "Japoński", - "no": "Norweski", - "pl": "Polski", - "ru": "Rosyjski", - "sq": "Albański", - "sr": "Serbski", - "th": "Tajski", - "uk": "Ukraiński", - "vi": "Wietnamski", "Accept": "Akceptuj", "Account": "Konto", "Add": "Dodaj", @@ -129,109 +114,7 @@ "Please Register": "Proszę się zarejestrować", "powered by Matrix": "napędzany przez Matrix", "Failed to change password. Is your password correct?": "Zmiana hasła nie powiodła się. Czy Twoje hasło jest poprawne?", - "be": "Białoruski", - "bg": "Bułgarski", - "cs": "Czeski", - "da": "Duński", - "de": "Niemiecki", - "el": "Grecki", - "et": "Estoński", - "ga": "Irlandzki", - "hr": "Chorwacki", - "is": "Islandzki", - "hi": "Hindi", - "lt": "Litewski", - "lv": "Łotewski", - "nl": "Holenderski", - "pt": "Portugalski", - "sl": "Słoweński", - "sk": "Słowacki", - "sv": "Szwedzki", - "tr": "Turecki", "Add a topic": "Dodaj temat", - "af": "Afrikaans", - "ar-ae": "Arabski (ZEA)", - "ar-bh": "Arabski (Bahrajn)", - "ar-dz": "Arabski (Algieria)", - "ar-eg": "Arabski (Egipt)", - "ar-iq": "Arabski (Irak)", - "ar-jo": "Arabski (Jordania)", - "ar-kw": "Arabski (Kuwejt)", - "ar-lb": "Arabski (Liban)", - "ar-ly": "Arabski (Libia)", - "ar-ma": "Arabski (Maroko)", - "ar-om": "Arabski (Oman)", - "ar-qa": "Arabski (Katar)", - "ar-sa": "Arabski (Arabia Saudyjska)", - "ar-sy": "Arabski (Syria)", - "ar-tn": "Arabski (Tunezja)", - "ar-ye": "Arabski (Jemen)", - "ca": "Kataloński", - "de-at": "Niemiecki (Austria)", - "de-ch": "Niemiecki (Szwajcaria)", - "de-li": "Niemiecki (Liechtenstein)", - "de-lu": "Niemiecki (Luksemburg)", - "en-au": "Angielski (Australia)", - "en-bz": "Angielski (Belize)", - "en-ca": "Angielski (Kanada)", - "en-gb": "Angielski (Wielka Brytania)", - "en-ie": "Angielski (Irlandia)", - "en-jm": "Angielski (Jamajka)", - "en-nz": "Angielski (Nowa Zelandia)", - "en-tt": "Angielski (Trynidad)", - "en-us": "Angielski (Stany Zjednoczone)", - "en-za": "Angielski (Afryka Południowa)", - "es-ar": "Hiszpański (Argentyna)", - "es-bo": "Hiszpański (Boliwia)", - "es-cl": "Hiszpański (Chile)", - "es-co": "Hiszpański (Kolumbia)", - "es-cr": "Hiszpański (Kostaryka)", - "es-do": "Hiszpański (Dominikana)", - "es-ec": "Hiszpański (Ekwador)", - "es-gt": "Hiszpański (Gwatemala)", - "es-hn": "Hiszpański (Honduras)", - "es-mx": "Hiszpański (Meksyk)", - "es-ni": "Hiszpański (Nikaragua)", - "es-pa": "Hiszpański (Panama)", - "es-pe": "Hiszpański (Peru)", - "es-pr": "Hiszpański (Portoryko)", - "es-py": "Hiszpański (Paragwaj)", - "es": "Hiszpański (Hiszpania)", - "es-sv": "Hiszpański (Salwador)", - "es-uy": "Hiszpański (Urugwaj)", - "es-ve": "Hiszpański (Wenezuela)", - "eu": "Baskijski", - "fa": "Perski", - "fr-be": "Francuski (Belgia)", - "fr-ca": "Francuski (Kanada)", - "fr-ch": "Francuski (Szwajcaria)", - "fr-lu": "Francuski (Luksemburg)", - "gd": "Gaelicki (Szkocja)", - "id": "Indonezyjski", - "it-ch": "Włoski (Szwajcaria)", - "ji": "Jidysz", - "ko": "Koreański", - "mk": "Macedoński (BJRM)", - "ms": "Malezyjski", - "mt": "Maltański", - "nl-be": "Holenderski (Belgia)", - "pt-br": "Portugalski (Brazylia)", - "ro-mo": "Rumuński (Republika Mołdawii)", - "ro": "Rumuński", - "ru-mo": "Rosyjski (Republika Mołdawii)", - "sb": "Łużycki", - "sv-fi": "Szwedzki (Finlandia)", - "sx": "Sutu", - "sz": "Sami (Lapoński)", - "ts": "Tsonga", - "ur": "Urdu", - "ve": "Venda", - "xh": "Xhosa", - "zh-cn": "Chiński (ChRL)", - "zh-hk": "Chiński (Hongkong)", - "zh-sg": "Chiński (Singapur)", - "zh-tw": "Chiński (Tajwan)", - "zu": "Zuluski", "a room": "pokój", "A text message has been sent to +%(msisdn)s. Please enter the verification code it contains": "Wysłano wiadomość tekstową do +%(msisdn)s. Proszę wprowadzić kod w niej zawarty", "%(targetName)s accepted an invitation.": "%(targetName)s zaakceptował(a) zaproszenie.", diff --git a/src/i18n/strings/pt.json b/src/i18n/strings/pt.json index cb4ba65ec4..6342ab8f59 100644 --- a/src/i18n/strings/pt.json +++ b/src/i18n/strings/pt.json @@ -303,11 +303,6 @@ "Dec": "Dez", "%(weekDayName)s, %(monthName)s %(day)s %(time)s": "%(weekDayName)s, %(day)s de %(monthName)s às %(time)s", "%(weekDayName)s %(time)s": "%(weekDayName)s às %(time)s", - "en": "Inglês", - "pt-br": "Português do Brasil", - "de": "Alemão", - "da": "Dinamarquês", - "ru": "Russo", "%(targetName)s accepted an invitation.": "%(targetName)s aceitou um convite.", "%(targetName)s accepted the invitation for %(displayName)s.": "%(targetName)s aceitou o convite para %(displayName)s.", "all room members, from the point they are invited": "todas/os as/os integrantes da sala, a partir do momento em que foram convidadas/os", @@ -431,70 +426,10 @@ "cancel all": "cancelar todas", "now. You can also select individual messages to resend or cancel.": "agora. Você também pode escolher mensagens individuais e definir se vai reenviar ou cancelar o envio.", "Active call": "Chamada ativa", - "af": "Afrikaans", - "ar-ae": "Árabe (E.A.U.)", - "ar-bh": "Árabe (Bahrain)", - "ar-dz": "Árabe (Argélia)", "Sunday": "Domingo", "Monday": "Segunda-feira", "ar-eg": "Árabe (Egito)", "ar-tn": "Árabe (Tunísia)", - "be": "Bielorrusso", - "bg": "Búlgaro", - "ca": "Catalão", - "cs": "Checo", - "el": "Grego", - "en-au": "Inglês (Austrália)", - "en-ca": "Inglês (Canadá)", - "en-gb": "Inglês (Reino Unido)", - "en-ie": "Inglês (Irlanda)", - "en-nz": "Inglês (Nova Zelândia)", - "en-us": "Inglês (Estados Unidos)", - "es-ar": "Espanhol (Argentina)", - "es-py": "Espanhol (Paraguai)", - "es": "Espanhol (Espanha)", - "et": "Estônia", - "fa": "Farsi", - "fi": "Finlandês", - "fr-be": "Francês (Bélgica)", - "fr-ca": "Francês (Canadá)", - "fr-ch": "Francês (Suíça)", - "fr": "Francês", - "ga": "Irlandês", - "he": "Hebreu", - "hi": "Hindu", - "hr": "Croácia", - "hu": "Hungria", - "id": "Indonésio", - "is": "Islandês", - "it": "Italiano", - "ja": "Japonês", - "ji": "Ídiche", - "lt": "Lituânia", - "lv": "Letão", - "ms": "Malaio", - "mt": "Maltês", - "nl-be": "Holandês (Bélgica)", - "nl": "Holandês", - "no": "Norueguês", - "pl": "Polonês", - "pt": "Português (Portugal)", - "rm": "Romanche", - "ro": "Romeno", - "sk": "Eslovaco", - "sl": "Esloveno", - "sq": "Albanês", - "sr": "Sérvio", - "sv": "Suécia", - "th": "Tailandês", - "tn": "Tsuana", - "tr": "Turquia", - "ts": "Tsonga", - "uk": "Ucraniano", - "ur": "Urdu", - "vi": "Vietnamita", - "xh": "Xhosa", - "zu": "Zulu", "Failed to forget room %(errCode)s": "Falha ao esquecer a sala %(errCode)s", "Failed to join the room": "Falha ao entrar na sala", "Tuesday": "Terça-feira", @@ -502,56 +437,7 @@ "Thursday": "Quinta-feira", "Friday": "Sexta-feira", "Saturday": "Sábado", - "ar-iq": "Árabe (Iraque)", - "ar-jo": "Árabe (Jordânia)", - "ar-kw": "Árabe (Kuwait)", - "ar-lb": "Árabe (Líbano)", - "ar-ly": "Árabe (Líbia)", - "ar-ma": "Árabe (Marrocos)", - "ar-om": "Árabe (Omã)", - "ar-qa": "Árabe (Catar)", - "ar-sa": "Árabe (Arábia Saudita)", - "ar-sy": "Árabe (Síria)", - "ar-ye": "Árabe (Iémen)", - "de-at": "Alemão (Áustria)", - "de-ch": "Alemão (Suíça)", - "de-li": "Alemão (Liechtenstein)", - "de-lu": "Alemão (Luxemburgo)", - "en-bz": "Inglês (Belize)", - "en-jm": "Inglês (Jamaica)", - "en-tt": "Inglês (Trindade)", - "en-za": "English (África do Sul)", - "es-bo": "Espanhol (Bolívia)", - "es-cl": "Espanhol (Chile)", - "es-co": "Espanhol (Colômbia)", - "es-cr": "Espanhol (Costa Rica)", - "es-do": "Espanhol (República Dominicana)", - "es-ec": "Espanhol (Equador)", - "es-gt": "Espanhol (Guatemala)", - "es-hn": "Espanhol (Honduras)", - "es-mx": "Espanhol (México)", - "es-ni": "Espanhol (Nicarágua)", - "es-pa": "Espanhol (Panamá)", "%(oneUser)schanged their avatar": "%(oneUser)salterou sua imagem pública", - "es-pe": "Espanhol (Peru)", - "es-pr": "Espanhol (Porto Rico)", - "es-sv": "Espanhol (El Salvador)", - "es-uy": "Espanhol (Uruguai)", - "es-ve": "Espanhol (Venezuela)", - "eu": "Basco (Basco)", - "fr-lu": "Francês (Luxemburgo)", - "gd": "Galês (Escócia)", - "it-ch": "Italiano (Suíça)", - "ko": "Coreano", - "mk": "Macedônio (República da Macedônia)", - "ro-mo": "Romano (Moldávia)", - "ru-mo": "Russo (Moldávia)", - "sb": "Sorábio", - "sv-fi": "Sueco (Finlândia)", - "zh-cn": "Chinês (República Popular da China)", - "zh-hk": "Chinês (Hong Kong SAR)", - "zh-sg": "Chinês (Singapura)", - "zh-tw": "Chinês (Taiwan)", "A text message has been sent to +%(msisdn)s. Please enter the verification code it contains": "Uma mensagem de texto foi enviada para +%(msisdn)s. Gentileza entrar com o código de verificação que contém", "%(items)s and %(remaining)s others": "%(items)s e %(remaining)s outros", "%(items)s and one other": "%(items)s e um outro", diff --git a/src/i18n/strings/pt_BR.json b/src/i18n/strings/pt_BR.json index cd6230cd68..18294eae55 100644 --- a/src/i18n/strings/pt_BR.json +++ b/src/i18n/strings/pt_BR.json @@ -303,11 +303,6 @@ "Dec": "Dez", "%(weekDayName)s, %(monthName)s %(day)s %(time)s": "%(weekDayName)s, %(day)s de %(monthName)s às %(time)s", "%(weekDayName)s %(time)s": "%(weekDayName)s às %(time)s", - "en": "Inglês", - "pt-br": "Português do Brasil", - "de": "Alemão", - "da": "Dinamarquês", - "ru": "Russo", "%(targetName)s accepted an invitation.": "%(targetName)s aceitou um convite.", "%(targetName)s accepted the invitation for %(displayName)s.": "%(targetName)s aceitou o convite para %(displayName)s.", "all room members, from the point they are invited": "todas/os as/os integrantes da sala, a partir do momento em que foram convidadas/os", @@ -432,70 +427,6 @@ "cancel all": "cancelar todas", "now. You can also select individual messages to resend or cancel.": "agora. Você também pode escolher mensagens individuais e definir se vai reenviar ou cancelar o envio.", "Active call": "Chamada ativa", - "af": "Afrikaans", - "ar-ae": "Árabe (U.A.E.)", - "ar-bh": "Árabe (Bahrain)", - "ar-dz": "Árabe (Algéria)", - "Sunday": "Domingo", - "Monday": "Segunda", - "ar-eg": "Árabe (Egito)", - "ar-tn": "Árabe (Tunisia)", - "be": "Bielorusso", - "bg": "Búlgaro", - "ca": "Catalão", - "cs": "Tcheco", - "el": "Grego", - "en-au": "Inglês (Austrália)", - "en-ca": "Inglês (Canadá)", - "en-gb": "Inglês (Reino Unido)", - "en-ie": "Inglês (Irlanda)", - "en-nz": "Inglês (Nova Zelândia)", - "en-us": "Inglês (Estados Unidos)", - "es-ar": "Espanhol (Argentina)", - "es-py": "Espanhol (Paraguai)", - "es": "Espanhol (Espanha)", - "et": "Estônia", - "fa": "Farsi", - "fi": "Finlandês", - "fr-be": "Francês (Bélgica)", - "fr-ca": "Francês (Canadá)", - "fr-ch": "Francês (Suíça)", - "fr": "Francês", - "ga": "Irlandês", - "he": "Hebreu", - "hi": "Hindu", - "hr": "Croácia", - "hu": "Hungria", - "id": "Indonésio", - "is": "Islandês", - "it": "Italiano", - "ja": "Japonês", - "ji": "Ídiche", - "lt": "Lituânia", - "lv": "Letão", - "ms": "Malaio", - "mt": "Maltês", - "nl-be": "Holandês (Bélgica)", - "nl": "Holandês", - "no": "Norueguês", - "pl": "Polonês", - "pt": "Português (Portugal)", - "rm": "Romanche", - "ro": "Romeno", - "sk": "Eslovaco", - "sl": "Esloveno", - "sq": "Albanês", - "sr": "Sérvio", - "sv": "Suécia", - "th": "Tailandês", - "tn": "Tsuana", - "tr": "Turquia", - "ts": "Tsonga", - "uk": "Ucraniano", - "ur": "Urdu", - "vi": "Vietnamita", - "xh": "Xhosa", - "zu": "Zulu", "Failed to forget room %(errCode)s": "Falhou ao esquecer a sala %(errCode)s", "Failed to join the room": "Falhou ao entrar na sala", "Tuesday": "Terça", @@ -503,56 +434,7 @@ "Thursday": "Quinta", "Friday": "Sexta", "Saturday": "Sábado", - "ar-iq": "Árabe (Iraque)", - "ar-jo": "Árabe (Jordânia)", - "ar-kw": "Árabe (Kuwait)", - "ar-lb": "Árabe (Líbano)", - "ar-ly": "Árabe (Líbia)", - "ar-ma": "Árabe (Marrocos)", - "ar-om": "Árabe (Omã)", - "ar-qa": "Árabe (Catar)", - "ar-sa": "Árabe (Arábia Saudita)", - "ar-sy": "Árabe (Síria)", - "ar-ye": "Árabe (Iémen)", - "de-at": "Alemão (Austria)", - "de-ch": "Alemão (Suíça)", - "de-li": "Alemão (Liechtenstein)", - "de-lu": "Alemão (Luxemburgo)", - "en-bz": "Inglês (Belize)", - "en-jm": "Inglês (Jamaica)", - "en-tt": "English (Trindade)", - "en-za": "English (África do Sul)", - "es-bo": "Espanhol (Bolívia)", - "es-cl": "Espanhol (Chile)", - "es-co": "Espanhol (Colômbia)", - "es-cr": "Espanhol (Costa Rica)", - "es-do": "Espanhol (República Dominicana)", - "es-ec": "Espanhol (Equador)", - "es-gt": "Espanhol (Guatemala)", - "es-hn": "Espanhol (Honduras)", - "es-mx": "Espanhol (México)", - "es-ni": "Espanhol (Nicarágua)", - "es-pa": "Espanhol (Panamá)", "%(oneUser)schanged their avatar": "%(oneUser)salterou sua imagem pública", - "es-pe": "Espanhol (Peru)", - "es-pr": "Espanhol (Porto Rico)", - "es-sv": "Espanhol (El Salvador)", - "es-uy": "Espanhol (Uruguai)", - "es-ve": "Espanhol (Venezuela)", - "eu": "Basco (Basco)", - "fr-lu": "Francês (Luxemburgo)", - "gd": "Galês (Escócia)", - "it-ch": "Italiano (Suíça)", - "ko": "Coreano", - "mk": "Macedônio (República da Macedônia)", - "ro-mo": "Romano (Moldávia)", - "ru-mo": "Russo (Moldávia)", - "sb": "Sorábio", - "sv-fi": "Sueco (Finlândia)", - "zh-cn": "Chinês (República Popular da China)", - "zh-hk": "Chinês (Hong Kong SAR)", - "zh-sg": "Chinês (Singapura)", - "zh-tw": "Chinês (Taiwan)", "A text message has been sent to +%(msisdn)s. Please enter the verification code it contains": "Uma mensagem de texto foi enviada para +%(msisdn)s. Gentileza entrar com o código de verificação que contém", "%(items)s and %(remaining)s others": "%(items)s e %(remaining)s outros", "%(items)s and one other": "%(items)s e um outro", diff --git a/src/i18n/strings/ru.json b/src/i18n/strings/ru.json index 9a49fca9cb..3a1ca3f331 100644 --- a/src/i18n/strings/ru.json +++ b/src/i18n/strings/ru.json @@ -211,11 +211,6 @@ "Your password has been reset": "Ваш пароль был сброшен", "Your password was successfully changed. You will not receive push notifications on other devices until you log back in to them": "Пароль успешно изменен. До повторной авторизации вы не будете получать push-уведомления на других устройствах", "You should not yet trust it to secure data": "На сегодняшний день не следует полностью полагаться на то, что ваши данные будут надежно зашифрованы", - "en": "Английский", - "pt-br": "Португальский (Бразилия)", - "de": "Немецкий", - "da": "Датский", - "ru": "Русский", "%(targetName)s accepted an invitation.": "%(targetName)s принял приглашение.", "%(targetName)s accepted the invitation for %(displayName)s.": "%(targetName)s принял приглашение от %(displayName)s.", "Resend all": "Переслать снова всем", @@ -260,65 +255,6 @@ "Must be viewing a room": "Необходимо посмотреть комнату", "New Composer & Autocomplete": "Новый текстовый редактор и автозаполнение", "(not supported by this browser)": "(не поддерживается этим браузером)", - "af": "Африкаанс", - "ar-ae": "Арабский (ОАЭ)", - "ar-bh": "Арабский (Бахрейн)", - "ar-dz": "Арабский (Алжир)", - "ar-eg": "Арабский (Египет)", - "ar-iq": "Арабский (Ирак)", - "ar-jo": "Арабский (Иордания)", - "ar-kw": "Арабский (Кувейт)", - "ar-lb": "Арабский (Ливан)", - "ar-ly": "Арабский (Ливия)", - "ar-ma": "Арабский (Марокко)", - "ar-om": "Арабский (Оман)", - "ar-qa": "Арабский (Катар)", - "ar-sa": "Арабский (Саудовская Аравия)", - "ar-sy": "Арабский (Сирия)", - "ar-tn": "Арабский (Тунис)", - "ar-ye": "Арабский (Йемен)", - "be": "Беларуский", - "bg": "Болгарский", - "ca": "Каталанский", - "cs": "Чешский", - "de-at": "Немецкий (Австрия)", - "de-ch": "Немецкий (Швейцария)", - "de-li": "Немецкий (Лихтенштейн)", - "de-lu": "Немецкий (Люксембург)", - "el": "Греческий", - "en-au": "Английский (Австралия)", - "en-bz": "Английский (Белиз)", - "en-ca": "Английский (Канада)", - "en-gb": "Английский (Великобритания)", - "en-ie": "Английский (Ирландия)", - "en-jm": "Английский (Ямайка)", - "en-nz": "Английский (Новая Зеландия)", - "en-tt": "Английский (Тринидад)", - "en-us": "Английский (США)", - "en-za": "Английский (Южная Африка)", - "es-ar": "Испанский (Аргентина)", - "es-bo": "Испанский (Боливия)", - "es-cl": "Испанский (Чили)", - "es-co": "Испанский (Колумбия)", - "es-cr": "Испанский (Коста Рика)", - "es-do": "Испанский (Доминиканская Республика)", - "es-ec": "Испанский (Эквадор)", - "es-gt": "Испанский (Гватемала)", - "es-hn": "Испанский (Гондурас)", - "es-mx": "Испанский (Мексика)", - "es-ni": "Испанский (Никарагуа)", - "es-pa": "Испанский (Панама)", - "et": "Эстонский", - "fi": "Финский", - "fr": "Французский", - "hr": "Хорватский", - "it": "Итальянский", - "ja": "Японский", - "pl": "Польский", - "pt": "Португальский", - "ru-mo": "Русский (Республика Молдова)", - "ro": "Румынский", - "uk": "Украинский", "now. You can also select individual messages to resend or cancel.": "теперь. Вы можете также выбрать отдельные сообщения, чтобы снова послать или отменить.", "Auto-complete": "Автозаполнение", "Error changing language": "Ошибка изменения языка", @@ -341,13 +277,6 @@ "Make this room private": "Сделать эту комнату приватной", "Share message history with new users": "Разрешить доступ к истории сообщений новым пользователям", "Encrypt room": "Шифрование комнаты", - "es-pe": "Испанский (Перу)", - "hu": "Венгерский", - "nl": "Датский", - "no": "Норвежский", - "sv": "Шведский", - "th": "Тайский", - "vi": "Ветнамский", "Monday": "Понедельник", "Tuesday": "Вторник", "Wednesday": "Среда", @@ -398,55 +327,6 @@ "Usage": "Использование", "Use with caution": "Использовать с осторожностью", "VoIP is unsupported": "VoIP не поддерживается", - "es-pr": "Испанский (Пуэрто-Рико)", - "es-py": "Испанский язык (Парагвай)", - "es": "Испанский (Испания)", - "es-sv": "Испанский (Сальвадор)", - "es-uy": "Испанский (Уругвай)", - "es-ve": "Испанский (Венесуэла)", - "fa": "Фарси", - "fo": "Фарерский", - "fr-be": "Французский (Бельгия)", - "fr-ca": "Французский (Канада)", - "fr-ch": "Французский (Швейцария)", - "ga": "Ирландский", - "he": "Иврит", - "hi": "Хинди", - "id": "Индонезийский", - "is": "Исландский", - "ji": "Идиш", - "lt": "Литовский", - "lv": "Латвийский", - "ms": "Малазийский", - "mt": "Мальтийский", - "nl-be": "Голландский (Бельгия)", - "rm": "Ретороманский", - "sb": "Лужицкий", - "sk": "Словацкий", - "sl": "Словенский", - "sq": "Албанский", - "sr": "Сербский", - "sv-fi": "Шведский (Финляндия)", - "sz": "Сами (Саамы)", - "tn": "Тсвана", - "tr": "Турецкий", - "ts": "Тсонга", - "ur": "Урду", - "ve": "Венда", - "xh": "Кхоса", - "zh-cn": "Китайский (КНР)", - "zh-sg": "Китайский (Сингапур)", - "zh-tw": "Китайский (Тайвань)", - "zu": "Зулусский", - "eu": "Баскский", - "fr-lu": "Французский (Люксембург)", - "gd": "Гаэльский (Шотландия)", - "it-ch": "Итальянский (Швейцария)", - "ko": "Корейский", - "mk": "Македонский (БЮРМ)", - "ro-mo": "Румынский (Республика Молдова)", - "sx": "Суту", - "zh-hk": "Китайский (Гонконг)", "A text message has been sent to +%(msisdn)s. Please enter the verification code it contains": "Текстовое сообщение было отправлено на +%(msisdn)s. Введите проверочный код, который оно содержит", "and %(count)s others...|other": "и %(count)s других...", "and %(count)s others...|one": "и ещё один...", diff --git a/src/i18n/strings/sv.json b/src/i18n/strings/sv.json index c38aeec36e..202098ab0f 100644 --- a/src/i18n/strings/sv.json +++ b/src/i18n/strings/sv.json @@ -1,124 +1,4 @@ { - "af": "Afrikaans", - "ar-ae": "Arabiska (U.A.E.)", - "ar-bh": "Arabiska (Bahrain)", - "ar-dz": "Arabiska (Algeriet)", - "ar-eg": "Arabiska (Egypten)", - "ar-iq": "Arabiska (Irak)", - "ar-jo": "Arabiska (Jordanien)", - "ar-kw": "Arabiska (Kuwait)", - "ar-lb": "Arabiska (Libanon)", - "ar-ly": "Arabiska (Libyen)", - "ar-ma": "Arabiska (Marocko)", - "ar-om": "Arabiska (Oman)", - "ar-qa": "Arabiska (Qatar)", - "ar-sa": "Arabiska (Saudiarabien)", - "ar-sy": "Arabiska (Syrien)", - "ar-tn": "Arabiska (Tunisien)", - "ar-ye": "Arabiska (Yemen)", - "be": "Vitryska", - "bg": "Bulgariska", - "ca": "Katalanska", - "cs": "Tjeckiska", - "da": "Danska", - "de-at": "Tyska (Österrike)", - "de-ch": "Tyska (Schweiz)", - "de": "Tyska", - "de-li": "Tyska (Liechtenstein)", - "de-lu": "Tyska (Luxembourg)", - "el": "Grekiska", - "en-au": "Engelska (Australien)", - "en-bz": "Engelska (Belize)", - "en-ca": "Engelska (Kanada)", - "en": "Engelska", - "en-gb": "Engelska (Förenta kungariket)", - "en-ie": "Engelska (Irland)", - "en-jm": "Engelska (Jamaica)", - "en-nz": "Engelska (Nya Zeeland)", - "en-tt": "Engelska (Trinidad)", - "en-us": "Engelska (Förenta staterna)", - "en-za": "Engelska (Sydafrika)", - "es-ar": "Spanska (Argentina)", - "es-bo": "Spanska (Bolivia)", - "es-cl": "Spanska (Chile)", - "es-co": "Spanska (Colombia)", - "es-cr": "Spanska (Costa Rica)", - "es-do": "Spanska (Dominikanska republiken)", - "es-ec": "Spanska (Ecuador)", - "es-gt": "Spanska (Guatemala)", - "es-hn": "Spanska (Honduras)", - "es-mx": "Spanska (Mexico)", - "es-ni": "Spanska (Nicaragua)", - "es-pa": "Spanska (Panama)", - "es-pe": "Spanska (Peru)", - "es-pr": "Spanska (Puerto Rico)", - "es-py": "Spanska (Paraguay)", - "es": "Spanska (Spanien)", - "es-sv": "Spanska (El Salvador)", - "es-uy": "Spanska (Uruguay)", - "es-ve": "Spanska (Venezuela)", - "et": "Estniska", - "eu": "Baskiska", - "fa": "Persiska", - "fi": "Finska", - "fo": "Färöiska", - "fr-be": "Franska (Belgien)", - "fr-ca": "Franska (Kanada)", - "fr-ch": "Franska (Schweiz)", - "fr": "Franska", - "fr-lu": "Franska (Luxembourg)", - "ga": "Irländska", - "gd": "Gaeliska (Skottland)", - "he": "Hebreiska", - "hi": "Hindi", - "hr": "Kroatiska", - "hu": "Ungerska", - "id": "Indonesiska", - "is": "Isländska", - "it-ch": "Italienska (Schweiz)", - "it": "Italienska", - "ja": "Japanska", - "ji": "Jiddisch", - "ko": "Koreanska", - "lt": "Litauiska", - "lv": "Lettiska", - "mk": "Makedonska (FYROM)", - "ms": "Malaysiska", - "mt": "Maltesiska", - "nl-be": "Nederländska (Belgien)", - "nl": "Nederländska", - "no": "Norska", - "pl": "Polska", - "pt-br": "Brasiliansk portugisiska", - "pt": "Portugisiska", - "rm": "Rätoromanska", - "ro-mo": "Rumänska (Republiken Moldavien)", - "ro": "Rumänska", - "ru-mo": "Ryska (Republiken Moldavien)", - "ru": "Ryska", - "sb": "Sorbiska", - "sk": "Slovakiska", - "sl": "Slovenska", - "sq": "Albanska", - "sr": "Serbiska", - "sv-fi": "Svenska (Finland)", - "sv": "Svenska", - "sx": "Sutu", - "sz": "Samiska", - "th": "Thailändska", - "tn": "Tswana", - "tr": "Turkiska", - "ts": "Tsonga", - "uk": "Ukrainska", - "ur": "Urdu", - "ve": "Venda", - "vi": "Vietnamesiska", - "xh": "Xhosa", - "zh-cn": "Kinesiska (Folkrepubliken Kina)", - "zh-hk": "Kinesiska (Hongkong SAR)", - "zh-sg": "Kinesiska (Singapore)", - "zh-tw": "Kinesiska (Taiwan)", - "zu": "Zulu", "A text message has been sent to +%(msisdn)s. Please enter the verification code it contains": "Ett SMS har skickats till +%(msisdn)s. Vänligen ange verifieringskoden ur meddelandet", "accept": "acceptera", "%(targetName)s accepted an invitation.": "%(targetName)s accepterade en inbjudan.", diff --git a/src/i18n/strings/te.json b/src/i18n/strings/te.json index a1487a594e..b3773d4449 100644 --- a/src/i18n/strings/te.json +++ b/src/i18n/strings/te.json @@ -1,89 +1,5 @@ { "was invited": "తనని ఆహ్వానించారు", - "ar-iq": "అరబిక్ (ఇరాక్)", - "ar-jo": "అరబిక్ (జోర్డాన్)", - "ar-kw": "అరబిక్ (కువైట్)", - "ar-lb": "అరబిక్ (లెబనాన్)", - "ar-ly": "అరబిక్ (లిబియా)", - "ar-ma": "అరబిక్ (మొరాకో)", - "ar-om": "అరబిక్ (ఒమన్)", - "ar-qa": "అరబిక్ (కతర్)", - "ar-sa": "అరబిక్ (సౌదీ అరేబియా)", - "ar-sy": "అరబిక్ (సిరియా)", - "ar-tn": "అరబిక్ (ట్యునీషియా)", - "ar-ye": "అరబిక్ (యెమెన్)", - "bg": "బల్గేరియన్", - "da": "డానిష్", - "de-at": "జర్మన్ (ఆస్ట్రియా)", - "de-ch": "జర్మన్ (స్విట్జర్లాండ్)", - "de": "జర్మన్", - "de-li": "జర్మన్ (లిక్టెన్స్టీన్)", - "de-lu": "జర్మన్ (లక్సెంబర్గ్)", - "el": "గ్రీకు", - "en-au": "ఆంగ్లము (ఆస్ట్రేలియా)", - "en-bz": "ఇంగ్లీష్ (బెలిజ్)", - "en-ca": "ఇంగ్లీష్ (కెనడా)", - "en": "ఇంగ్లీష్", - "en-gb": "ఇంగ్లీష్ (యునైటెడ్ కింగ్డమ్)", - "en-ie": "ఇంగ్లీష్ (ఐర్లాండ్)", - "en-jm": "ఇంగ్లీష్ (జమైకా)", - "en-nz": "ఇంగ్లీష్ (న్యూజిలాండ్)", - "en-tt": "ఇంగ్లీష్ (ట్రినిడాడ్)", - "en-us": "ఇంగ్లీష్ (యునైటెడ్ స్టేట్స్)", - "en-za": "ఇంగ్లీష్ (దక్షిణ ఆఫ్రికా)", - "es-ar": "స్పానిష్ (అర్జెంటీనా)", - "es-bo": "స్పానిష్ (బొలీవియా)", - "es-cl": "స్పానిష్ (చిలీ)", - "es-co": "స్పానిష్ (కొలంబియా)", - "es-cr": "స్పానిష్ (కోస్టా రికా)", - "af": "ఆఫ్రికాన్స్", - "ar-ae": "అరబిక్ (యు.ఏ.ఈ.)", - "ar-bh": "అరబిక్ (బహ్రెయిన్)", - "ar-dz": "అరబిక్ (అల్జీరియా)", - "ar-eg": "అరబిక్ (ఈజిప్ట్)", - "be": "భెలరుసీన్", - "ca": "కతలన్", - "cs": "ఛ్జెచ్", - "es-do": "స్పానిష్ (డొమినికన్ రిపబ్లిక్)", - "lt": "లిథూనీన్", - "lv": "లత్వీన్", - "mk": "మాసిడోనియన్ (ఫ్య్ఋఓం)", - "ms": "మలేషియన్", - "mt": "మాల్టీస్", - "nl-be": "డచ్ (బెల్జియం)", - "nl": "డచ్", - "no": "నార్వేజియన్", - "pl": "పోలిష్", - "pt-br": "బ్రెజిలియన్ పోర్చుగీస్", - "pt": "పోర్చుగీస్", - "rm": "ర్హెతో-రొమనిచ్", - "ro-mo": "రోమేనియా (మోల్డోవా రిపబ్లిక్)", - "ro": "రొమనీన్", - "ru-mo": "రష్యన్ (మోల్డోవా రిపబ్లిక్)", - "ru": "రష్యన్", - "sb": "సోర్బియన్", - "sk": "శ్లొవక్", - "sl": "స్లోవేనియాన్", - "sq": "ఆల్బనీన్", - "sr": "సెర్బియన్", - "sv-fi": "స్వీడిష్ (ఫిన్లాండ్)", - "sv": "స్వీడిష్", - "sx": "శుతు", - "sz": "సామీ (లప్పీష్)", - "th": "థాయ్", - "tn": "సెటస్వానా", - "tr": "టుర్కిష్", - "ts": "సోంగా", - "uk": "ఉక్రేనియన్", - "ur": "ఉర్దూ", - "ve": "వెండా", - "vi": "వియత్నమెసె", - "xh": "షోసా", - "zh-cn": "చైనీస్ (ప్ ర్ సీ)", - "zh-hk": "చైనీస్ (హాంకాంగ్ స్ఎఅర్)", - "zh-sg": "చైనీస్ (సింగపూర్)", - "zh-tw": "చైనీస్ (తైవాన్)", - "zu": "జూలూ", "a room": "ఓ గది", "A text message has been sent to +%(msisdn)s. Please enter the verification code it contains": "ఒక టెక్స్ట్ సందేశం +%(msisdn)s కు పంపబడింది. దయచేసి దీనిలో ఉన్న ధృవీకరణ కోడ్ను నమోదు చేయండి", "Accept": "అంగీకరించు", @@ -114,39 +30,6 @@ "all room members": "అన్ని గదుల సభ్యులు", "You do not have permission to post to this room": "మీకు ఈ గదికి పోస్ట్ చేయడానికి అనుమతి లేదు", "You have been invited to join this room by %(inviterName)s": "%(inviterName)s ఈ గదిలో చేరడానికి మీరు ఆహ్వానించబడ్డారు", - "es-ec": "స్పానిష్ (ఈక్వెడార్)", - "es-gt": "స్పానిష్ (గ్వాటెమాల)", - "es-hn": "స్పానిష్ (హోండురాస్)", - "es-mx": "స్పానిష్ (మెక్సికో)", - "es-ni": "స్పానిష్ (నికరాగువా)", - "es-pa": "స్పానిష్ (పనామా)", - "es-pe": "స్పానిష్ (పెరు)", - "es-pr": "స్పానిష్ (ఫ్యూర్టో రికో)", - "es-py": "స్పానిష్ (పరాగ్వే)", - "es": "స్పానిష్ (స్పెయిన్)", - "es-sv": "స్పానిష్ (ఎల్ సాల్వడార్)", - "es-uy": "స్పానిష్ (ఉరుగ్వే)", - "es-ve": "స్పానిష్ (వెనిజులా)", - "eu": "బాస్క్ (బాస్క్)", - "fa": "ఫార్సి", - "fi": "ముగించు", - "fo": "ఫెరోయెస్", - "fr-be": "ఫ్రెంచ్ (బెల్జియం)", - "fr-ca": "ఫ్రెంచ్ (కెనడా)", - "fr-ch": "ఫ్రెంచ్ (స్విట్జర్లాండ్)", - "fr": "ఫ్రెంచ్", - "fr-lu": "ఫ్రెంచ్ (లక్సెంబర్గ్)", - "ga": "ఐరిష్", - "gd": "గేలిక్ (స్కాట్లాండ్)", - "he": "హిబ్రూ", - "hi": "హిందీ", - "hu": "హంగేరియన్", - "id": "ఇండోనేషియన్", - "is": "ఐస్లాండిక్", - "it-ch": "ఇటాలియన్ (స్విట్జర్లాండ్)", - "it": "ఇటాలియన్", - "ja": "జపనీస్", - "ko": "కొరియన్", "Active call (%(roomName)s)": "క్రియాశీల కాల్ల్ (%(roomName)s)", "And %(count)s more...": "మరియు %(count)s ఇంకా ...", "all room members, from the point they are invited": "అన్ని గది సభ్యులు, పాయింట్ నుండి వారు ఆహ్వానించబడ్డారు", diff --git a/src/i18n/strings/th.json b/src/i18n/strings/th.json index 3cf4355821..c27b6c0b7f 100644 --- a/src/i18n/strings/th.json +++ b/src/i18n/strings/th.json @@ -1,13 +1,4 @@ { - "de": "เยอร์มัน", - "en-us": "อังกฤษ (สหรัฐอเมริกา)", - "en": "อังกฤษ", - "en-ca": "อังกฤษ(แคนาดา)", - "ja": "ญี่ปุ่น", - "fr": "ฝรั่งเศส", - "ko": "เกาหลี", - "th": "ไทย", - "vi": "เวียดนาม", "accept": "ยอมรับ", "Account": "บัญชี", "Add phone number": "เพิ่มหมายเลขโทรศัพท์", @@ -474,115 +465,7 @@ "%(oneUser)sleft %(repeats)s times": "%(oneUser)sออกจากห้อง %(repeats)s ครั้ง", "%(severalUsers)sleft": "%(severalUsers)sออกจากห้องแล้ว", "%(oneUser)sleft": "%(oneUser)sออกจากห้องแล้ว", - "el": "กรีก", - "en-au": "อังกฤษ (ออสเตรเลีย)", - "en-bz": "อังกฤษ (เบลีซ)", - "en-gb": "อังกฤษ (สหราชอาณาจักร)", - "en-nz": "อังกฤษ (นิวซีแลนด์)", - "en-jm": "อังกฤษ (จาเมกา)", - "en-ie": "อังกฤษ (ไอร์แลนด์)", - "en-tt": "อังกฤษ (ตรินิแดด)", - "af": "แอฟริกาใต้", - "ar-ae": "อาหรับ (สหรัฐอาหรับเอมิเรตส์)", - "ar-bh": "อาหรับ (บาห์เรน)", - "ar-dz": "อาหรับ (แอลจีเรีย)", - "ar-eg": "อาหรับ (อียิปต์)", - "ar-iq": "อาหรับ (อิรัก)", - "ar-jo": "อาหรับ (จอร์แดน)", - "ar-kw": "อาหรับ (คูเวต)", - "ar-lb": "อาหรับ (เลบานอน)", - "ar-ly": "อาหรับ (ลิเบีย)", - "ar-ma": "อาหรับ (โมร็อกโก)", - "ar-om": "อาหรับ (โอมาน)", - "ar-qa": "อาหรับ (กาตาร์)", - "ar-sa": "อาหรับ (ซาอุดีอาระเบีย)", - "ar-sy": "อาหรับ (ซีเรีย)", - "ar-tn": "อาหรับ (ตูนิเซีย)", - "ar-ye": "อาหรับ (เยเมน)", - "be": "เบลารุส", - "bg": "บัลแกเรีย", - "ca": "คาตาลัน", - "cs": "สาธารณรัฐเช็ก", - "da": "เดนมาร์ก", - "de-at": "เยอรมัน (ออสเตรีย)", - "de-ch": "เยอรมัน (สวิสเซอร์แลนด์)", - "de-lu": "เยอรมัน (ลักเซมเบิร์ก)", - "en-za": "อังกฤษ (แอฟริกาใต้)", - "es-ar": "สเปน (อาร์เจนตินา)", - "es-bo": "สเปน (โบลิเวีย)", - "es-cl": "สเปน (ชิลี)", - "es-co": "สเปน (โคลัมเบีย)", - "es-cr": "สเปน (คอสตาริกา)", - "es-do": "สเปน (สาธารณรัฐโดมินิกัน)", - "zu": "สูลู", - "zh-tw": "จีน (ไต้หวัน)", - "zh-sg": "จีน (สิงคโปร์)", - "zh-hk": "จีน (ฮ่องกง)", - "xh": "โซซา", - "ve": "เวนดา", - "ur": "อูรดู", - "uk": "ยูเครน", - "ts": "ซองก้า", - "tr": "ตุรกี", - "tn": "ซวานา", - "sv": "สวีเดน", - "sv-fi": "สวีเดน (ฟินแลนด์)", - "sr": "เซอร์เบีย", - "sq": "แอลเบเนีย", - "sl": "สโลเวเนีย", - "sk": "สโลวาเกีย", - "sb": "ซอร์เบีย", - "ru": "รัสเซีย", - "ru-mo": "รัสเซีย (สาธารณรัฐมอลโดวา)", - "ro": "โรมาเนีย", - "ro-mo": "โรมาเนีย (สาธารณรัฐมอลโดวา)", - "pt": "โปรตุเกส", - "pt-br": "โปรตุเกส (บราซิล)", - "pl": "โปแลนด์", - "no": "นอร์เวย์", - "nl": "ดัตช์", - "nl-be": "ดัตช์ (เบลเยียม)", - "mt": "มอลตา", - "ms": "มาเลเซีย", - "lv": "ลัตเวีย", - "lt": "ลิธัวเนีย", - "ji": "ยิดดิช", - "it": "อิตาลี", - "it-ch": "อิตาลี (สวิสเซอร์แลนด์)", - "is": "ไอซ์แลนด์", - "id": "อินโดนีเซีย", - "hu": "ฮังการี", - "hr": "โครเอเชีย", - "hi": "ฮินดู", - "he": "อิสราเอล", - "gd": "เกลิค (สกอตแลนด์)", - "fr-lu": "ฝรั่งเศส (ลักเซมเบิร์ก)", - "fr-ca": "ฝรั่งเศส (แคนาดา)", - "fr-ch": "ฝรั่งเศส (สวิสเซอร์แลนด์)", - "fr-be": "ฝรั่งเศส (เบลเยี่ยม)", - "fo": "แฟโร", - "fi": "ฟินแลนด์", - "fa": "ฟาร์ซิ", - "et": "เอสโตเนีย", - "es-ve": "สเปน (เวเนซุเอลา)", - "es-uy": "สเปน (อุรุกวัย)", - "es-sv": "สเปน (เอลซัลวาดอร์)", - "es": "สเปน (สเปน)", - "es-py": "สเปน (ปารากวัย)", - "es-pr": "สเปน (เปอร์โตริโก)", - "es-pe": "สเปน (เปรู)", - "es-pa": "สเปน (ปานามา)", - "es-ni": "สเปน (นิการากัว)", - "es-mx": "สเปน (เม็กซิโก)", - "es-hn": "สเปน (ฮอนดูรัส)", - "es-gt": "สเปน (กัวเตมาลา)", - "es-ec": "สเปน (เอกวาดอร์)", "Add": "เพิ่ม", - "de-li": "เยอรมัน (ลิกเตนสไตน์)", - "eu": "บาสก์ (บาสก์)", - "ga": "ไอร์แลนด์", - "zh-cn": "จีน (สาธารณรัฐประชาชนจีน)", - "mk": "มาซิโดเนีย (อดีตสาธารณรัฐยูโกสลาฟมาซิโดเนีย)", "a room": "ห้อง", "Accept": "ยอมรับ", "VoIP": "VoIP", diff --git a/src/i18n/strings/tr.json b/src/i18n/strings/tr.json index fccef004dc..185dc788ec 100644 --- a/src/i18n/strings/tr.json +++ b/src/i18n/strings/tr.json @@ -1,124 +1,4 @@ { - "af": "Afrikanca (Taal)", - "ar-ae": "Arapça (B.A.E)", - "ar-bh": "Arapça (Bahreyn)", - "ar-dz": "Arapça (Cezayir)", - "ar-eg": "Arapça (Mısır)", - "ar-iq": "Arapça (Irak)", - "ar-jo": "Arapça (Ürdün)", - "ar-kw": "Arapça (Kuveyt)", - "ar-lb": "Arapça (Lübnan)", - "ar-ly": "Arapça (Libya)", - "ar-ma": "Arapça (Fas)", - "ar-om": "Arapça (Umman)", - "ar-qa": "Arapça (Katar)", - "ar-sa": "Arapça (Suudi Arabistan)", - "ar-sy": "Arapça (Suriye)", - "ar-tn": "Arapça (Tunus)", - "ar-ye": "Arapça (Yemen)", - "be": "Beyaz Rusça", - "bg": "Bulgarca", - "ca": "Katalanca", - "cs": "Çek Dili", - "da": "Danimarkaca", - "de-at": "Almanca (Avusturya)", - "de-ch": "Almanca (İsviçre)", - "de": "Almanca", - "de-li": "Almanca (Liechtenstein)", - "de-lu": "Almanca (Lüksemburg)", - "el": "Yunanca", - "en-au": "İngilizce (Avustralya)", - "en-bz": "İngilizce (Belize)", - "en-ca": "İngilizce (Kanada)", - "en": "İngilizce", - "en-gb": "İngilizce (İngiltere)", - "en-ie": "İngilizce (İrlanda)", - "en-jm": "İngilizce (Jamaika)", - "en-nz": "İngilizce (Yeni Zellanda)", - "en-tt": "İngilizce (Trinidad)", - "en-us": "İngilizce (Amerika)", - "en-za": "İngilizce (Güney Afrika)", - "es-ar": "İspanyolca (Arjantin)", - "es-bo": "İspanyolca (Bolivya)", - "es-cl": "İspanyolca (Şili)", - "es-co": "İspanyolca (Kolombiya)", - "es-cr": "İspanyolca (Kosta Rika)", - "es-do": "İspanyolca (Dominik Cumhuriyeti)", - "es-ec": "İspanyolca (Ekvador)", - "es-gt": "İspanyolca (Guatemala)", - "es-hn": "İspanyolca (Honduras)", - "es-mx": "İspanyolca (Meksika)", - "es-ni": "İspanyolca (Nikaragua)", - "es-pa": "İspanyolca (Panama)", - "es-pe": "İspanyolca (Peru)", - "es-pr": "İspanyolca (Porto Riko)", - "es-py": "İspanyolca (Paraguay)", - "es": "İspanyolca (İspanya)", - "es-sv": "İspanyolca (El Salvador)", - "es-uy": "İspanyolca (Uruguay)", - "es-ve": "İspanyolca (Venezuela)", - "et": "Estonya Dili", - "eu": "Baskça", - "fa": "Farsça", - "fi": "Fince", - "fo": "Faroe", - "fr-be": "Fransızca (Belçika)", - "fr-ca": "Fransızca (Kanada)", - "fr-ch": "Fransızca (İsviçre)", - "fr": "Fransızca", - "fr-lu": "Fransızca (Lüxemburg)", - "ga": "İrlandaca", - "gd": "Gaelik (İskoçya)", - "he": "İbranice", - "hi": "Hintçe", - "hr": "Hırvatça", - "hu": "Macarca", - "id": "Endonezya Dili", - "is": "İzlandaca", - "it-ch": "İtalyanca (İsviçre)", - "it": "İtalyanca", - "ja": "Japonca", - "ji": "Eskenazi Dili", - "ko": "Korece", - "lt": "Litvanya Dili", - "lv": "Letonya Dili", - "mk": "Makedonca (FYROM)", - "ms": "Malezyanca", - "mt": "Malta Dili", - "nl-be": "Hollandaca (Belçika)", - "nl": "Hollandaca", - "no": "Norveççe", - "pl": "Polonya Dili", - "pt-br": "Brezilya Portekizcesi", - "pt": "Portekizce", - "rm": "Reto-Latince", - "ro-mo": "Romence (Moldova Cumhuriyeti)", - "ro": "Romence", - "ru-mo": "Rusça (Moldova Cumhuriyeti)", - "ru": "Rusça", - "sb": "Sorbca", - "sk": "Slovakça", - "sl": "Slovence", - "sq": "Arnavutça", - "sr": "Sırpça", - "sv-fi": "İsveççe (Finlandiya)", - "sv": "İsveççe", - "sx": "Sutu Dili", - "sz": "Sami Dili", - "th": "Tayland Dili", - "tn": "Setsvana", - "tr": "Türkçe", - "ts": "Tsonga Dili", - "uk": "Ukraynaca", - "ur": "Urduca", - "ve": "Venda Dili", - "vi": "Vietnam Dili", - "xh": "Xhosa Dili", - "zh-cn": "Çince (PRC)", - "zh-hk": "Çince (Hong Kong)", - "zh-sg": "Çince (Singapur)", - "zh-tw": "Çince (Tayvan)", - "zu": "Zulu Dili", "a room": "bir oda", "A text message has been sent to +%(msisdn)s. Please enter the verification code it contains": "+%(msisdn)s 'ye bir kısa mesaj gönderildi . Lütfen içerdiği doğrulama kodunu girin", "Accept": "Kabul Et", diff --git a/src/i18n/strings/uk.json b/src/i18n/strings/uk.json index 15ddefc956..ed11668ddd 100644 --- a/src/i18n/strings/uk.json +++ b/src/i18n/strings/uk.json @@ -1,67 +1,4 @@ { - "af": "афрікаанс", - "ar-ae": "арабська (ОАЕ)", - "ar-bh": "арабська (Бахрейн)", - "ar-dz": "арабська (Алжир)", - "ar-eg": "арабська (Єгипет)", - "ar-iq": "арабська (Ірак)", - "ar-jo": "арабська (Йорданія)", - "ar-kw": "арабська (Кувейт)", - "ar-lb": "арабська (Ліван)", - "ar-ly": "арабська (Лівія)", - "ar-ma": "арабська (Марокко)", - "ar-om": "арабська (Оман)", - "ar-qa": "арабська (Катар)", - "ar-sa": "арабська (Саудівська Аравія)", - "ar-sy": "арабська (Сирія)", - "ar-tn": "арабська (Туніс)", - "ar-ye": "арабська (Йемен)", - "be": "білоруська", - "bg": "болгарська", - "ca": "каталонська", - "cs": "чеська", - "da": "данська", - "de-at": "німецька (Австрія)", - "de-ch": "німецька (Швейцарія)", - "de": "німецька", - "de-li": "німецька (Ліхтенштейн)", - "de-lu": "німецька (Люксембург)", - "el": "грецька", - "en-au": "англійська (Австралія)", - "en-bz": "англійська (Беліз)", - "en-ca": "англійська (Канада)", - "en": "англійська", - "en-gb": "англійська (Великобританія)", - "en-ie": "англійська (Ірландія)", - "en-jm": "англійська (Ямайка)", - "en-nz": "англійська (Нова Зеландія)", - "en-tt": "англійська (Тринідад)", - "en-us": "англійська (Сполучені Штати)", - "en-za": "англійська (ПАР)", - "es-ar": "іспанська (Аргентина)", - "es-bo": "іспанська (Болівія)", - "es-cl": "іспанська (Чилі)", - "es-co": "іспанська (Колумбія)", - "es-cr": "іспанська (Коста Ріка)", - "es-do": "іспанська (Домініканська Республіка)", - "es-ec": "іспанська (Еквадор)", - "es-gt": "іспанська (Гватемала)", - "es-hn": "іспанська (Гондурас)", - "es-mx": "іспанська (Мексика)", - "es-ni": "іспанська (Нікарагуа)", - "es-pa": "іспанська (Панама)", - "es-pe": "іспанська (Перу)", - "es-pr": "іспанська (Пуерто Ріко)", - "es-py": "іспанська (Парагвай)", - "es": "іспанська (Іспанія)", - "es-sv": "іспанська (Сальвадор)", - "es-uy": "іспанська (Уругвай)", - "es-ve": "іспанська (Венесуела)", - "et": "естонська", - "eu": "баскійська", - "fa": "перська", - "fi": "фінська", - "fo": "фарерська", "Cancel": "Скасувати", "Close": "Закрити", "Create new room": "Створити нову кімнату", @@ -95,63 +32,6 @@ "Welcome page": "Ласкаво просимо", "Failed to change password. Is your password correct?": "Не вдалось змінити пароль. Ви впевнені, що пароль введено правильно?", "Continue": "Продовжити", - "fr-be": "французька (Бельгія)", - "fr-ca": "французька (Канада)", - "fr-ch": "французька (Швейцарія)", - "fr": "французька", - "fr-lu": "французька (Люксембург)", - "ga": "ірландська", - "gd": "гельська (Шотландія)", - "he": "іврит", - "hi": "гінді", - "hr": "хорватська", - "hu": "угорська", - "id": "індонезійська", - "is": "ісландська", - "it-ch": "італійська (Швейцарія)", - "it": "італійська", - "ja": "японська", - "ji": "ідиш", - "ko": "корейська", - "lt": "литовська", - "lv": "латвійська", - "mk": "македонська (КЮРМ)", - "ms": "малайська", - "mt": "мальтійська", - "nl-be": "нідерландська (Бельгія)", - "nl": "нідерландська", - "no": "норвезька", - "pl": "польська", - "pt-br": "бразильська португальська", - "pt": "португальська", - "rm": "ретороманська", - "ro-mo": "румунська (Молдова)", - "ro": "румунська", - "ru-mo": "російська (Молдова)", - "ru": "російська", - "sb": "лужицька", - "sk": "словацька", - "sl": "словенська", - "sq": "албанська", - "sr": "сербська", - "sv-fi": "шведська (Фінляндія)", - "sv": "шведська", - "sx": "сесото", - "sz": "північносаамська", - "th": "тайська", - "tn": "свана", - "tr": "турецька", - "ts": "тсонга", - "uk": "українська", - "ur": "урду", - "ve": "венда", - "vi": "в’єтнамська", - "xh": "коса", - "zh-cn": "спрощена китайська (КНР)", - "zh-hk": "традиційна китайська (Гонконг)", - "zh-sg": "спрощена китайська (Сингапур)", - "zh-tw": "традиційна китайська (Тайвань)", - "zu": "зулу", "a room": "кімната", "A text message has been sent to +%(msisdn)s. Please enter the verification code it contains": "Текстове повідомлення було надіслано +%(msisdn)s. Введіть, будь ласка, код підтвердження з цього повідомлення", "Accept": "Прийняти", diff --git a/src/i18n/strings/zh_Hans.json b/src/i18n/strings/zh_Hans.json index f8ee16f67e..417a47a79e 100644 --- a/src/i18n/strings/zh_Hans.json +++ b/src/i18n/strings/zh_Hans.json @@ -155,21 +155,6 @@ "The file '%(fileName)s' exceeds this home server's size limit for uploads": "文件 '%(fileName)s' 超过了此主服务器的上传大小限制", "The file '%(fileName)s' failed to upload": "文件 '%(fileName)s' 上传失败", "Disable URL previews for this room (affects only you)": "在这个房间禁止URL预览(只影响你)", - "af": "南非荷兰语", - "ca": "加泰罗尼亚语", - "cs": "捷克语", - "da": "丹麦语", - "de-at": "德语(奥地利)", - "de-ch": "德语(瑞士)", - "de": "德语", - "de-lu": "德语 (卢森堡)", - "el": "希腊语", - "en-au": "英语 (澳大利亚)", - "en": "英语", - "zh-cn": "中文(中国)", - "zh-hk": "中文(香港)", - "zh-sg": "中文(新加坡)", - "zh-tw": "中国(台湾)", "Add email address": "添加邮件地址", "Add phone number": "添加电话号码", "Advanced": "高级", @@ -206,21 +191,6 @@ "Leave room": "离开聊天室", "Login as guest": "以游客的身份登录", "New password": "新密码", - "ar-ae": "阿拉伯语 (阿联酋)", - "ar-bh": "阿拉伯语 (巴林)", - "ar-dz": "阿拉伯语 (阿尔及利亚)", - "ar-eg": "阿拉伯语 (埃及)", - "ar-iq": "阿拉伯语 (伊拉克)", - "ar-jo": "阿拉伯语 (约旦)", - "ar-kw": "阿拉伯语 (科威特)", - "ar-lb": "阿拉伯语 (黎巴嫩)", - "ar-ly": "阿拉伯语 (利比亚)", - "ar-ma": "阿拉伯语 (摩洛哥)", - "ar-ye": "阿拉伯语 (也门)", - "en-ca": "英语 (加拿大)", - "en-gb": "英语 (英国)", - "en-ie": "英语 (爱尔兰)", - "en-nz": "英语 (新西兰)", "Add a topic": "添加一个主题", "Admin": "管理员", "Admin tools": "管理工具", @@ -371,15 +341,6 @@ "Friday": "星期五", "Saturday": "星期六", "Welcome page": "欢迎页面", - "ar-om": "阿拉伯语(阿曼)", - "ar-qa": "阿拉伯语(卡塔尔)", - "ar-sa": "阿拉伯语(沙特阿拉伯)", - "fi": "芬兰语", - "fr": "法语", - "he": "希伯来语", - "it": "意大利语", - "ja": "日语", - "ko": "韩语", "Account": "账户", "Add": "添加", "Allow": "允许", @@ -503,24 +464,6 @@ "Edit Group": "编辑群", "Failed to upload image": "上传图像失败", "Add a widget": "添加一个小部件", - "en-us": "英语(美国)", - "en-za": "英语(南非)", - "es-ar": "西班牙语(阿根廷)", - "es-cl": "西班牙语(智利)", - "es-co": "西班牙语(哥伦比亚)", - "es-cr": "西班牙语(哥斯达黎加)", - "es-mx": "西班牙语(墨西哥)", - "es": "西班牙语(西班牙)", - "fr-be": "法语(比利时)", - "fr-ca": "法语(加拿大)", - "fr-ch": "法语(瑞士)", - "hi": "印地语", - "hr": "克罗地亚语", - "hu": "匈牙利语", - "id": "印尼语", - "is": "冰岛语", - "it-ch": "意大利语(瑞士)", - "ji": "意第绪语", "a room": "一个聊天室", "Accept": "接受", "Access Token:": "访问令牌:", @@ -590,20 +533,6 @@ "I already have an account": "我已经有一个帐号", "Unblacklist": "移出黑名单", "Not a valid Riot keyfile": "不是一个合法的 Riot 密钥文件", - "en-jm": "英语(牙买加)", - "es-pe": "西班牙语(秘鲁)", - "lv": "拉脱维亚语", - "ms": "马来西亚语", - "pl": "波兰语", - "pt": "葡萄牙语", - "ro": "罗马尼亚语", - "ru": "俄语", - "sk": "斯洛伐克语", - "sl": "斯洛文尼亚语", - "sr": "塞尔维亚语", - "th": "泰语", - "tr": "土耳其语", - "vi": "越南语", "%(targetName)s accepted an invitation.": "%(targetName)s 接受了一个邀请。", "Do you want to load widget from URL:": "你想从此 URL 加载小组件吗:", "Hide join/leave messages (invites/kicks/bans unaffected)": "隐藏加入/离开消息(邀请/踢出/封禁不受影响)", @@ -620,55 +549,6 @@ "Seen by %(userName)s at %(dateTime)s": "在 %(dateTime)s 被 %(userName)s 看到", "Show Apps": "显示应用", "Tagged as: ": "标记为:", - "ar-sy": "阿拉伯语(Syria)", - "ar-tn": "阿拉伯语(Tunisia)", - "be": "白俄罗斯", - "bg": "保加利亚", - "de-li": "德语(列支敦士登)", - "en-bz": "英语(伯利兹)", - "en-tt": "英语(特立尼达)", - "es-bo": "西班牙语(玻利维亚)", - "es-do": "西班牙语(Dominican)", - "es-ec": "西班牙语(Ecuador)", - "es-gt": "西班牙语(Guatemala)", - "es-hn": "西班牙语(Honduras)", - "es-ni": "西班牙语(Nicaragua)", - "es-pa": "西班牙语(Panama)", - "es-pr": "西班牙语(Puerto Rico)", - "es-py": "西班牙语(Paraguay)", - "es-sv": "西班牙语(El Salvador)", - "es-uy": "西班牙语(Uruguay)", - "es-ve": "西班牙语(Venezuela)", - "et": "爱沙尼亚", - "eu": "巴斯克", - "fa": "波斯语", - "fo": "法罗群岛", - "fr-lu": "法语(Luxembourg)", - "ga": "爱尔兰", - "gd": "盖尔", - "lt": "立陶宛", - "mk": "马其顿", - "mt": "马耳他", - "nl-be": "荷兰语(Belgium)", - "nl": "荷兰语", - "no": "挪威", - "pt-br": "巴西葡萄牙语", - "rm": "瑞士南部", - "sb": "索布语", - "ru-mo": "俄语(Moldova)", - "ro-mo": "罗马尼亚(Moldova)", - "sq": "阿尔巴尼亚", - "sv-fi": "瑞典(Finland)", - "sv": "瑞典", - "sx": "苏图", - "sz": "萨米(Lappish)", - "tn": "茨瓦纳语", - "ts": "聪加", - "uk": "乌克兰", - "ur": "乌尔都语", - "ve": "文达", - "xh": "科萨", - "zu": "祖鲁语", "A text message has been sent to +%(msisdn)s. Please enter the verification code it contains": "验证码将发送到+%(msisdn),请输入接收到的验证码", "%(targetName)s accepted the invitation for %(displayName)s.": "%(targetName) 接受了 %(displayName)的邀请。", "Active call (%(roomName)s)": "%(roomName)的呼叫", diff --git a/src/i18n/strings/zh_Hant.json b/src/i18n/strings/zh_Hant.json index 028336f3be..5027f2c28e 100644 --- a/src/i18n/strings/zh_Hant.json +++ b/src/i18n/strings/zh_Hant.json @@ -21,73 +21,6 @@ "Can't load user settings": "無法載入使用者設定", "Change Password": "變更密碼", "%(targetName)s left the room.": "%(targetName)s 離開了聊天室。.", - "af": "南非荷蘭語", - "ar-ae": "阿拉伯語 (U.A.E.)", - "ar-bh": "阿拉伯語 (巴林)", - "ar-dz": "阿拉伯語 (阿爾吉利亞)", - "ar-eg": "阿拉伯語 (埃及)", - "ar-iq": "阿拉伯語 (伊拉克)", - "ar-jo": "阿拉伯語 (約旦)", - "ar-kw": "阿拉伯語 (科威特)", - "ar-lb": "阿拉伯語 (黎巴嫩)", - "ar-ly": "阿拉伯語 (利比亞)", - "ar-ma": "阿拉伯語 (摩洛哥)", - "ar-om": "阿拉伯語 (阿曼)", - "ar-qa": "阿拉伯語 (卡達)", - "ar-sa": "阿拉伯語 (沙烏地阿拉伯)", - "ar-sy": "阿拉伯語 (敍利亞)", - "ar-tn": "阿拉伯語 (突尼斯)", - "ar-ye": "阿拉伯語 (葉門)", - "be": "白俄羅斯語", - "bg": "保加利亞", - "ca": "加泰羅尼亞語", - "cs": "捷克語", - "da": "丹麥語", - "de-at": "德語(奧地利)", - "de-ch": "德語(瑞士)", - "de": "德語", - "de-lu": "德語(盧森堡)", - "el": "希臘語", - "en-au": "英語(澳大利亞)", - "en-bz": "英語 (貝里茲)", - "en-ca": "英語 (加拿大)", - "en": "英語", - "en-gb": "英語 (英國)", - "en-ie": "英語 (愛爾蘭)", - "en-jm": "英語 (牙買加)", - "en-nz": "英語 (新西蘭)", - "en-tt": "英語 (千里達)", - "en-us": "英語 (美國)", - "en-za": "英語 (南非)", - "es-ar": "西班牙語 (阿根廷)", - "es-bo": "西班牙語 (波利維亞)", - "es-cl": "西班牙語 (智利)", - "es-co": "西班牙語 (哥倫比亞)", - "es-cr": "西班牙語 (哥斯大黎加)", - "es-do": "西班牙語 (多明尼加共和國)", - "es-ec": "西班牙語 (厄瓜多)", - "es-gt": "西班牙語 (瓜地馬拉)", - "es-hn": "西班牙語 (宏都拉斯)", - "es-mx": "西班牙語 (墨西哥)", - "es-ni": "西班牙語 (尼加拉瓜)", - "es-pa": "西班牙語 (巴拿馬)", - "es-pe": "西班牙語 (祕魯)", - "es-pr": "西班牙語 (波多黎各)", - "es-py": "西班牙語 (巴拉圭)", - "es": "西班牙語 (西班牙)", - "es-sv": "西班牙語 (薩爾瓦多)", - "es-uy": "西班牙語 (烏拉圭)", - "es-ve": "西班牙語 (委內瑞拉)", - "fr-be": "法語 (比利時)", - "fr-ca": "法語 (加拿大)", - "fr-ch": "法語 (瑞士)", - "fr": "法語 (法國)", - "fr-lu": "法語 (慮森堡)", - "zh-cn": "中文(中國)", - "zh-hk": "中文(香港)", - "zh-sg": "中文(新加坡)", - "zh-tw": "中文(台灣)", - "zu": "祖魯語", "accept": "接受", "Account": "帳號", "Access Token:": "取用令牌:", @@ -366,59 +299,6 @@ "Room directory": "聊天室目錄", "Start chat": "開始聊天", "Welcome page": "歡迎頁面", - "de-li": "德語(列支敦斯登)", - "et": "愛沙尼亞語", - "eu": "巴斯克語(巴斯克)", - "fa": "波斯語", - "fi": "芬蘭語", - "fo": "法羅語", - "ga": "愛爾蘭語", - "gd": "蓋爾語(蘇格蘭)", - "he": "希伯來語", - "hi": "印地語", - "hr": "克羅埃西亞語", - "hu": "匈牙利語", - "id": "印尼語", - "is": "冰島語", - "it-ch": "義大利語(瑞士)", - "it": "義大利語", - "ja": "日語", - "ji": "意第緒語", - "ko": "韓語", - "lt": "立陶宛語", - "lv": "拉脫維亞語", - "mk": "馬其頓語(前南斯拉夫馬其頓共和國)", - "ms": "馬來西亞語", - "mt": "馬爾他語", - "nl-be": "荷蘭語(比利時)", - "nl": "荷蘭語", - "no": "挪威語", - "pl": "波蘭語", - "pt-br": "巴西葡萄牙語", - "pt": "葡萄牙語", - "rm": "羅曼拉丁語", - "ro-mo": "羅馬尼亞語(摩爾多瓦共和國)", - "ro": "羅馬尼亞語", - "ru-mo": "俄語(摩爾多瓦共和國)", - "ru": "俄語", - "sb": "索布語", - "sk": "斯洛伐克語", - "sl": "斯洛維尼亞語", - "sq": "阿爾巴尼亞語", - "sr": "塞爾維亞語", - "sv-fi": "瑞典語(芬蘭)", - "sv": "瑞典語", - "sx": "蘇圖語", - "sz": "基爾丁-薩米語", - "th": "泰語", - "tn": "札那語", - "tr": "土耳其語", - "ts": "聰加語", - "uk": "烏克蘭語", - "ur": "烏爾都語", - "ve": "文達語", - "vi": "越南語", - "xh": "科薩語", "a room": "房間", "A text message has been sent to +%(msisdn)s. Please enter the verification code it contains": "文字訊息將會傳送到 +%(msisdn)s。請輸入其中包含的驗證碼", "Accept": "接受", From 7ba8aa95c5485468850f50f59075e1ac275dec17 Mon Sep 17 00:00:00 2001 From: MTRNord Date: Tue, 5 Sep 2017 18:00:57 +0200 Subject: [PATCH 14/83] readd translations that got removed by accident --- src/i18n/strings/pt_BR.json | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/i18n/strings/pt_BR.json b/src/i18n/strings/pt_BR.json index 18294eae55..6b06f39e7c 100644 --- a/src/i18n/strings/pt_BR.json +++ b/src/i18n/strings/pt_BR.json @@ -392,6 +392,8 @@ "Usage": "Uso", "Use with caution": "Use com cautela", "VoIP is unsupported": "Chamada de voz não permitida", + "Sunday": "Domingo", + "Monday": "Segunda", "%(senderName)s withdrew %(targetName)s's invitation.": "%(senderName)s desfez o convite a %(targetName)s.", "You are already in a call.": "Você já está em uma chamada.", "You're not in any rooms yet! Press to make a room or to browse the directory": "Você ainda não está em nenhuma sala! Clique em para criar uma sala ou em para navegar pela lista pública de salas", From 5449224dec750b98203db04a65636b31b4d6e4ea Mon Sep 17 00:00:00 2001 From: MTRNord Date: Tue, 5 Sep 2017 18:01:57 +0200 Subject: [PATCH 15/83] readd translations that got removed by accident 2 --- src/i18n/strings/nl.json | 1 + 1 file changed, 1 insertion(+) diff --git a/src/i18n/strings/nl.json b/src/i18n/strings/nl.json index bc92d7bcad..ac2f3e0e58 100644 --- a/src/i18n/strings/nl.json +++ b/src/i18n/strings/nl.json @@ -1,4 +1,5 @@ { + "Direct Chat": "Privégesprek", "A text message has been sent to +%(msisdn)s. Please enter the verification code it contains": "Voer alsjeblieft de verificatiecode in die is verstuurd naar +%(msisdn)s", "accept": "accepteer", "%(targetName)s accepted an invitation.": "%(targetName)s heeft een uitnodiging geaccepteerd.", From a573a396ad3ca2b90693b1c9db3020398ff19681 Mon Sep 17 00:00:00 2001 From: Marcel Date: Tue, 5 Sep 2017 18:07:22 +0200 Subject: [PATCH 16/83] Remove unused string "changing room on a RoomView is not supported" --- src/i18n/strings/en_EN.json | 1 - 1 file changed, 1 deletion(-) diff --git a/src/i18n/strings/en_EN.json b/src/i18n/strings/en_EN.json index c1ba1d0c74..fec3e83616 100644 --- a/src/i18n/strings/en_EN.json +++ b/src/i18n/strings/en_EN.json @@ -201,7 +201,6 @@ "Changes to who can read history will only apply to future messages in this room": "Changes to who can read history will only apply to future messages in this room", "Changes your display nickname": "Changes your display nickname", "Changes colour scheme of current room": "Changes colour scheme of current room", - "changing room on a RoomView is not supported": "changing room on a RoomView is not supported", "Changing password will currently reset any end-to-end encryption keys on all devices, making encrypted chat history unreadable, unless you first export your room keys and re-import them afterwards. In future this will be improved.": "Changing password will currently reset any end-to-end encryption keys on all devices, making encrypted chat history unreadable, unless you first export your room keys and re-import them afterwards. In future this will be improved.", "Claimed Ed25519 fingerprint key": "Claimed Ed25519 fingerprint key", "Clear Cache and Reload": "Clear Cache and Reload", From da3336172f0f088c48229d8116cb3ec575506b75 Mon Sep 17 00:00:00 2001 From: MTRNord Date: Tue, 5 Sep 2017 18:12:00 +0200 Subject: [PATCH 17/83] Remove more unused translation strings --- src/i18n/strings/de_DE.json | 1 - src/i18n/strings/el.json | 1 - src/i18n/strings/en_US.json | 1 - src/i18n/strings/es.json | 1 - src/i18n/strings/eu.json | 1 - src/i18n/strings/fr.json | 1 - src/i18n/strings/hu.json | 1 - src/i18n/strings/id.json | 1 - src/i18n/strings/ko.json | 1 - src/i18n/strings/lv.json | 1 - src/i18n/strings/nl.json | 1 - src/i18n/strings/pt.json | 1 - src/i18n/strings/pt_BR.json | 1 - src/i18n/strings/ru.json | 1 - src/i18n/strings/sv.json | 1 - src/i18n/strings/te.json | 1 - src/i18n/strings/th.json | 1 - src/i18n/strings/tr.json | 1 - src/i18n/strings/zh_Hant.json | 1 - 19 files changed, 19 deletions(-) diff --git a/src/i18n/strings/de_DE.json b/src/i18n/strings/de_DE.json index 2fbee2717d..020a13c98d 100644 --- a/src/i18n/strings/de_DE.json +++ b/src/i18n/strings/de_DE.json @@ -561,7 +561,6 @@ "Ban": "Dauerhaft aus dem Raum ausschließen", "Can't connect to homeserver - please check your connectivity and ensure your homeserver's SSL certificate is trusted.": "Verbindungsaufbau zum Heimserver nicht möglich - bitte Internetverbindung überprüfen und sicherstellen, ob das SSL-Zertifikat des Heimservers vertrauenswürdig ist.", "Can't connect to homeserver via HTTP when an HTTPS URL is in your browser bar. Either use HTTPS or enable unsafe scripts.": "Es kann keine Verbindung zum Heimserver via HTTP aufgebaut werden, wenn die Adresszeile des Browsers eine HTTPS-URL enthält. Entweder HTTPS verwenden oder alternativ unsichere Skripte erlauben.", - "changing room on a RoomView is not supported": "Das Ändern eines Raumes in einer RaumAnsicht wird nicht unterstützt", "Click to mute audio": "Klicke um den Ton stumm zu stellen", "Click to mute video": "Klicken, um das Video stummzuschalten", "Command error": "Befehlsfehler", diff --git a/src/i18n/strings/el.json b/src/i18n/strings/el.json index 3ea83a322c..974ca37c5b 100644 --- a/src/i18n/strings/el.json +++ b/src/i18n/strings/el.json @@ -849,7 +849,6 @@ "You must join the room to see its files": "Πρέπει να συνδεθείτε στο δωμάτιο για να δείτε τα αρχεία του", "Reject all %(invitedRooms)s invites": "Απόρριψη όλων των προσκλήσεων %(invitedRooms)s", "Failed to invite the following users to the %(roomName)s room:": "Δεν ήταν δυνατή η πρόσκληση των χρηστών στο δωμάτιο %(roomName)s:", - "changing room on a RoomView is not supported": "Δεν υποστηρίζεται η αλλαγή δωματίου σε RoomView", "demote": "υποβίβαση", "Deops user with given id": "Deop χρήστη με το συγκεκριμένο αναγνωριστικό", "Disable inline URL previews by default": "Απενεργοποίηση προεπισκόπησης συνδέσμων από προεπιλογή", diff --git a/src/i18n/strings/en_US.json b/src/i18n/strings/en_US.json index a68ce5d982..cb528e1e22 100644 --- a/src/i18n/strings/en_US.json +++ b/src/i18n/strings/en_US.json @@ -195,7 +195,6 @@ "%(senderDisplayName)s changed the topic to \"%(topic)s\".": "%(senderDisplayName)s changed the topic to \"%(topic)s\".", "Changes to who can read history will only apply to future messages in this room": "Changes to who can read history will only apply to future messages in this room", "Changes your display nickname": "Changes your display nickname", - "changing room on a RoomView is not supported": "changing room on a RoomView is not supported", "Changing password will currently reset any end-to-end encryption keys on all devices, making encrypted chat history unreadable, unless you first export your room keys and re-import them afterwards. In future this will be improved.": "Changing password will currently reset any end-to-end encryption keys on all devices, making encrypted chat history unreadable, unless you first export your room keys and re-import them afterwards. In future this will be improved.", "Claimed Ed25519 fingerprint key": "Claimed Ed25519 fingerprint key", "Clear Cache and Reload": "Clear Cache and Reload", diff --git a/src/i18n/strings/es.json b/src/i18n/strings/es.json index 96a986decc..b90a58a245 100644 --- a/src/i18n/strings/es.json +++ b/src/i18n/strings/es.json @@ -178,7 +178,6 @@ "%(senderDisplayName)s changed the topic to \"%(topic)s\".": "%(senderDisplayName)s ha cambiado el tema de la sala a \"%(topic)s\".", "Changes to who can read history will only apply to future messages in this room": "Cambios para quien pueda leer el historial solo serán aplicados a futuros mensajes en la sala", "Changes your display nickname": "Cambia la visualización de tu apodo", - "changing room on a RoomView is not supported": "cambiando la sala en un RoomView no esta soportado", "Changing password will currently reset any end-to-end encryption keys on all devices, making encrypted chat history unreadable, unless you first export your room keys and re-import them afterwards. In future this will be improved.": "El cambio de contraseña restablecerá actualmente todas las claves de cifrado de extremo a extremo de todos los dispositivos, haciendo que el historial de chat cifrado sea ilegible, a menos que primero exporte las claves de la habitación y vuelva a importarlas después. En el futuro esto será mejorado.", "Claimed Ed25519 fingerprint key": "Clave Ed25519 es necesaria", "Clear Cache and Reload": "Borrar caché y recargar", diff --git a/src/i18n/strings/eu.json b/src/i18n/strings/eu.json index 308fa36900..09d10368ff 100644 --- a/src/i18n/strings/eu.json +++ b/src/i18n/strings/eu.json @@ -436,7 +436,6 @@ "%(senderName)s changed their profile picture.": "%(senderName)s erabiltzaileak bere profileko argazkia aldatu du.", "%(senderName)s changed the power level of %(powerLevelDiffText)s.": "%(senderName)s erabiltzaileak %(powerLevelDiffText)s erabiltzailearen botere maila aldatu du.", "%(senderDisplayName)s changed the room name to %(roomName)s.": "%(senderDisplayName)s erabiltzaileak gelaren izena aldatu du, orain %(roomName)s da.", - "changing room on a RoomView is not supported": "ez da onartzen gela ikuspegi batean gelaz aldatzea", "Drop here to tag %(section)s": "Jaregin hona %(section)s atalari etiketa jartzeko", "Incoming voice call from %(name)s": "%(name)s erabiltzailearen deia jasotzen", "Incorrect username and/or password.": "Erabiltzaile-izen edo pasahitz okerra.", diff --git a/src/i18n/strings/fr.json b/src/i18n/strings/fr.json index 50d9113245..99df78ac34 100644 --- a/src/i18n/strings/fr.json +++ b/src/i18n/strings/fr.json @@ -574,7 +574,6 @@ "You seem to be in a call, are you sure you want to quit?": "Vous semblez avoir un appel en cours, êtes-vous sûr(e) de vouloir quitter ?", "You seem to be uploading files, are you sure you want to quit?": "Vous semblez être en train de télécharger des fichiers, êtes-vous sûr(e) de vouloir quitter ?", "You should not yet trust it to secure data": "Vous ne pouvez pas encore lui faire confiance pour sécuriser vos données", - "changing room on a RoomView is not supported": "changer de salon sur un RoomView n'est pas supporté", "You will not be able to undo this change as you are promoting the user to have the same power level as yourself.": "Vous ne pourrez pas annuler ce changement car vous promouvez l’utilisateur au même niveau d'autorité que le vôtre.", "Sun": "Dim", "Mon": "Lun", diff --git a/src/i18n/strings/hu.json b/src/i18n/strings/hu.json index 7c38e41c9b..d6eab3fa87 100644 --- a/src/i18n/strings/hu.json +++ b/src/i18n/strings/hu.json @@ -229,7 +229,6 @@ "%(senderDisplayName)s changed the topic to \"%(topic)s\".": "%(senderDisplayName)s megváltoztatta a témát erre \"%(topic)s\".", "Changes to who can read history will only apply to future messages in this room": "Változtatások a napló olvasási jogosultságon csak a szoba új üzeneteire fog vonatkozni", "Changes your display nickname": "Becenév megváltoztatása", - "changing room on a RoomView is not supported": "Szoba nézetben nem lehet szobát váltani", "Changing password will currently reset any end-to-end encryption keys on all devices, making encrypted chat history unreadable, unless you first export your room keys and re-import them afterwards. In future this will be improved.": "Jelszó megváltoztatása jelenleg alaphelyzetbe állítja a titkosításnál használt kulcsokat minden készüléken, ezzel a régi titkosított üzenetek olvashatatlanok lesznek hacsak először nem mented ki a kulcsokat és újra betöltöd. A jövőben ezen javítunk.", "Claimed Ed25519 fingerprint key": "Igényelt Ed25519 ujjlenyomat kulcs", "Clear Cache and Reload": "Gyorsítótár törlése és újratöltés", diff --git a/src/i18n/strings/id.json b/src/i18n/strings/id.json index a4edd6892d..2e08aedf4a 100644 --- a/src/i18n/strings/id.json +++ b/src/i18n/strings/id.json @@ -214,7 +214,6 @@ "%(senderDisplayName)s changed the room name to %(roomName)s.": "%(senderDisplayName)s telah mengubah nama ruang menjadi %(roomName)s.", "%(senderDisplayName)s changed the topic to \"%(topic)s\".": "%(senderDisplayName)s telah mengubah topik menjadi \"%(topic)s\".", "Changes to who can read history will only apply to future messages in this room": "Pengubahan siapa yang dapat membaca sejarah akan berlaku untuk pesan selanjutnya di ruang ini", - "changing room on a RoomView is not supported": "tidak dapat mengubah ruang di RoomView", "Changing password will currently reset any end-to-end encryption keys on all devices, making encrypted chat history unreadable, unless you first export your room keys and re-import them afterwards. In future this will be improved.": "Mengubah password saat ini akan mengatur ulang semua kunci enkripsi end-to-end di semua perangkat, menyebabkan sejarah obrolan yang terenkripsi menjadi tidak dapat dibaca, kecuali sebelumnya Anda ekspor dahulu kunci ruang lalu kemudian impor ulang setelahnya. Ke depan hal ini akan diperbaiki.", "Click here to join the discussion!": "Klik di sini untuk gabung diskusi!", "click to reveal": "Klik untuk menampilkan", diff --git a/src/i18n/strings/ko.json b/src/i18n/strings/ko.json index 411d1ccfe1..547bc7ff48 100644 --- a/src/i18n/strings/ko.json +++ b/src/i18n/strings/ko.json @@ -250,7 +250,6 @@ "%(senderDisplayName)s removed the room name.": "%(senderDisplayName)s님이 방 이름을 지우셨어요.", "%(senderDisplayName)s changed the topic to \"%(topic)s\".": "%(senderDisplayName)s님이 주제를 \"%(topic)s\"로 바꾸셨어요.", "Changes to who can read history will only apply to future messages in this room": "방의 이후 메시지부터 기록을 읽을 수 있는 조건의 변화가 적용되어요", - "changing room on a RoomView is not supported": "룸뷰에서 방을 바꾸는 건 지원하지 않아요", "Changing password will currently reset any end-to-end encryption keys on all devices, making encrypted chat history unreadable, unless you first export your room keys and re-import them afterwards. In future this will be improved.": "비밀번호를 바꾸면 현재 모든 장치의 종단간 암호화 키가 다시 설정되고, 먼저 방의 키를 내보내고 나중에 다시 불러오지 않는 한, 암호화한 이야기 기록을 읽을 수 없게 되어요. 앞으로는 이 기능을 더 좋게 만들 거에요.", "Claimed Ed25519 fingerprint key": "Ed25519 지문 키가 필요", "Click here to join the discussion!": "여기를 눌러서 같이 논의해요!", diff --git a/src/i18n/strings/lv.json b/src/i18n/strings/lv.json index c2a55b3fc2..3c7c4ea733 100644 --- a/src/i18n/strings/lv.json +++ b/src/i18n/strings/lv.json @@ -195,7 +195,6 @@ "%(senderDisplayName)s changed the topic to \"%(topic)s\".": "%(senderDisplayName)s nomainīja tēmas nosaukumu uz \"%(topic)s\".", "Changes to who can read history will only apply to future messages in this room": "Izmaiņas attiecībā uz to, kurš varēs lasīt vēstures ziņas, stāsies spēkā tikai uz ziņām,kuras vēl tiks pievienotas šajā istabā", "Changes your display nickname": "Nomaina tavu publisko segvārdu (niku)", - "changing room on a RoomView is not supported": "istabas maiņa nav iespējama, atrodoties istabu skata lapā", "Changing password will currently reset any end-to-end encryption keys on all devices, making encrypted chat history unreadable, unless you first export your room keys and re-import them afterwards. In future this will be improved.": "Paroles maiņa dzēsīs pašreizējās šifrēšanas atslēgas visās savstarpēji saistītajās ierīcēs, padarot čata vēsturi neizlasāmu, ja vien vien istabas atslēgas nav tikušas iepriekš eksportētas un no jauna importētas atpakaļ. Nākotnē to plānojam uzlabot.", "Claimed Ed25519 fingerprint key": "Norādīta Ed25519 identificējošās zīmju virknes atslēga", "Clear Cache and Reload": "Iztīri kešatmiņu un pārlādē", diff --git a/src/i18n/strings/nl.json b/src/i18n/strings/nl.json index 234fc8c03a..6c72f4ee14 100644 --- a/src/i18n/strings/nl.json +++ b/src/i18n/strings/nl.json @@ -179,7 +179,6 @@ "%(senderDisplayName)s changed the topic to \"%(topic)s\".": "%(senderDisplayName)s heeft het onderwerp gewijzigd naar \"%(topic)s\".", "Changes to who can read history will only apply to future messages in this room": "Veranderingen aan wie de historie kan lezen worden alleen maar toegepast op toekomstige berichten in deze kamer", "Changes your display nickname": "Verandert jouw weergavenaam", - "changing room on a RoomView is not supported": "veranderen van een kamer in een RoomView wordt niet ondersteund", "Changing password will currently reset any end-to-end encryption keys on all devices, making encrypted chat history unreadable, unless you first export your room keys and re-import them afterwards. In future this will be improved.": "Het veranderen van het wachtwoord zal op het moment alle eind-tot-eind encryptie sleutels resetten, wat alle versleutelde chat geschiedenis onleesbaar zou maken, behalve als je eerst je kamer sleutels exporteert en achteraf opnieuw importeert. Dit zal worden verbeterd in de toekomst.", "Clear Cache and Reload": "Legen cache en herlaad", "Clear Cache": "Legen cache", diff --git a/src/i18n/strings/pt.json b/src/i18n/strings/pt.json index 827efeb16a..fdbf9ebfd9 100644 --- a/src/i18n/strings/pt.json +++ b/src/i18n/strings/pt.json @@ -571,7 +571,6 @@ "Can't connect to homeserver - please check your connectivity and ensure your homeserver's SSL certificate is trusted.": "Não consigo conectar ao servidor padrão - favor checar sua conexão à internet e verificar se o certificado SSL do seu servidor padrão é confiável.", "Can't connect to homeserver via HTTP when an HTTPS URL is in your browser bar. Either use HTTPS or enable unsafe scripts.": "Não consigo conectar ao servidor padrão através de HTTP quando uma URL HTTPS está na barra de endereços do seu navegador. Use HTTPS ou então habilite scripts não seguros no seu navegador.", "Change Password": "Alterar senha", - "changing room on a RoomView is not supported": "mudar a sala em uma 'RoomView' não é permitido", "Click to mute audio": "Clique para colocar o áudio no mudo", "Click to mute video": "Clique para desabilitar imagens de vídeo", "Click to unmute video": "Clique para voltar a mostrar imagens de vídeo", diff --git a/src/i18n/strings/pt_BR.json b/src/i18n/strings/pt_BR.json index 7e7ca123b9..4779aada14 100644 --- a/src/i18n/strings/pt_BR.json +++ b/src/i18n/strings/pt_BR.json @@ -572,7 +572,6 @@ "Can't connect to homeserver - please check your connectivity and ensure your homeserver's SSL certificate is trusted.": "Não consigo conectar ao servidor padrão - favor checar sua conexão à internet e verificar se o certificado SSL do seu servidor padrão é confiável.", "Can't connect to homeserver via HTTP when an HTTPS URL is in your browser bar. Either use HTTPS or enable unsafe scripts.": "Não consigo conectar ao servidor padrão através de HTTP quando uma URL HTTPS está na barra de endereços do seu navegador. Use HTTPS ou então habilite scripts não seguros no seu navegador.", "Change Password": "Alterar senha", - "changing room on a RoomView is not supported": "mudar a sala em uma 'RoomView' não é permitido", "Click to mute audio": "Clique para colocar o áudio no mudo", "Click to mute video": "Clique para desabilitar imagens de vídeo", "Click to unmute video": "Clique para voltar a mostrar imagens de vídeo", diff --git a/src/i18n/strings/ru.json b/src/i18n/strings/ru.json index 3f3403d716..aee4ec9b30 100644 --- a/src/i18n/strings/ru.json +++ b/src/i18n/strings/ru.json @@ -455,7 +455,6 @@ "Are you sure?": "Вы уверены?", "Autoplay GIFs and videos": "Автовоспроизведение GIF и видео", "Can't connect to homeserver - please check your connectivity and ensure your homeserver's SSL certificate is trusted.": "Невозможно соединиться с домашним сервером - проверьте своё соединение и убедитесь, что SSL-сертификат вашего домашнего сервера включён в доверяемые.", - "changing room on a RoomView is not supported": "изменение комнаты в RoomView не поддерживается", "Click to mute audio": "Щелкните, чтобы выключить звук", "Click to mute video": "Щелкните, чтобы выключить видео", "Click to unmute video": "Щелкните, чтобы включить видео", diff --git a/src/i18n/strings/sv.json b/src/i18n/strings/sv.json index d3b512900c..e28ab4ebbc 100644 --- a/src/i18n/strings/sv.json +++ b/src/i18n/strings/sv.json @@ -302,7 +302,6 @@ "Alias (optional)": "Alias (valfri)", "Can't connect to homeserver - please check your connectivity, ensure your homeserver's SSL certificate is trusted, and that a browser extension is not blocking requests.": "Det gick inte att ansluta till servern - kontrollera anslutningen, försäkra att din hemservers TLS-certifikat är betrott, och att inget webbläsartillägg blockerar förfrågningar.", "%(senderName)s changed the power level of %(powerLevelDiffText)s.": "%(senderName)s ändrade maktnivån av %(powerLevelDiffText)s.", - "changing room on a RoomView is not supported": "det går inte att byta rum i en RoomView", "Click here to join the discussion!": "Klicka här för att gå med i diskussionen!", "Close": "Stäng", "%(count)s new messages.one": "%(count)s nytt meddelande", diff --git a/src/i18n/strings/te.json b/src/i18n/strings/te.json index 0f1d5b9a6d..3dcb6d5a1f 100644 --- a/src/i18n/strings/te.json +++ b/src/i18n/strings/te.json @@ -183,7 +183,6 @@ "%(senderDisplayName)s removed the room name.": "%(senderDisplayName)s గది పేరు తొలగించబడింది.", "Changes to who can read history will only apply to future messages in this room": "చరిత్ర చదివేవారికి మార్పులు ఈ గదిలో భవిష్య సందేశాలకు మాత్రమే వర్తిస్తాయి", "Changes your display nickname": "మీ ప్రదర్శన మారుపేరుని మారుస్తుంది", - "changing room on a RoomView is not supported": "ఒక రూమ్వ్యూలో గది మార్చుకునేకి మద్దతు లేదు", "You cannot place a call with yourself.": "మీరు మీతో కాల్ చేయలేరు.", "You are already in a call.": "మీరు ఇప్పటికే కాల్లో ఉన్నారు.", "You are trying to access %(roomName)s.": "మీరు %(roomName)s లను యాక్సెస్ చేయడానికి ప్రయత్నిస్తున్నారు.", diff --git a/src/i18n/strings/th.json b/src/i18n/strings/th.json index 01ffa729d7..cbb0bd9f49 100644 --- a/src/i18n/strings/th.json +++ b/src/i18n/strings/th.json @@ -126,7 +126,6 @@ "%(senderDisplayName)s changed the room name to %(roomName)s.": "%(senderDisplayName)s เปลี่ยนชื่อห้องไปเป็น %(roomName)s", "%(senderDisplayName)s removed the room name.": "%(senderDisplayName)s ลบชื่อห้อง", "Changes your display nickname": "เปลี่ยนชื่อเล่นที่แสดงของคุณ", - "changing room on a RoomView is not supported": "ไม่รองรับการเปลี่ยนห้องใน RoomView", "Clear Cache and Reload": "ล้างแคชแล้วโหลดใหม่", "Clear Cache": "ล้างแคช", "Click here": "คลิกที่นี่", diff --git a/src/i18n/strings/tr.json b/src/i18n/strings/tr.json index 2933e2433b..8d6d607b0d 100644 --- a/src/i18n/strings/tr.json +++ b/src/i18n/strings/tr.json @@ -197,7 +197,6 @@ "%(senderDisplayName)s changed the topic to \"%(topic)s\".": "%(senderDisplayName)s konuyu \"%(topic)s\" olarak değiştirdi.", "Changes to who can read history will only apply to future messages in this room": "Geçmişi kimlerin okuyabileceğine ait değişiklikler yalnızca bu odada gelecekteki iletiler için geçerli olur", "Changes your display nickname": "Görünen takma adınızı değiştirir", - "changing room on a RoomView is not supported": "Oda Ekranında oda değiştirme desteklenmiyor", "Changing password will currently reset any end-to-end encryption keys on all devices, making encrypted chat history unreadable, unless you first export your room keys and re-import them afterwards. In future this will be improved.": "Şifre değiştirme eğer oda anahtarlarınızı dışa aktarmaz ve daha sonra tekrar içe aktarmazsanız , şu anda tüm cihazlarda uçtan uca şifreleme anahtarlarını sıfırlayacak ve geçmişi okunamaz hale getirecek . Gelecekte bu geliştirilecek.", "Claimed Ed25519 fingerprint key": "Ed25519 parmak izi anahtarı istendi", "Clear Cache and Reload": "Önbelleği Temizle ve Yeniden Yükle", diff --git a/src/i18n/strings/zh_Hant.json b/src/i18n/strings/zh_Hant.json index 93ac57330a..5e8f8ddc99 100644 --- a/src/i18n/strings/zh_Hant.json +++ b/src/i18n/strings/zh_Hant.json @@ -448,7 +448,6 @@ "%(senderDisplayName)s changed the topic to \"%(topic)s\".": "%(senderDisplayName)s 已經變更主題為「%(topic)s」。", "Changes to who can read history will only apply to future messages in this room": "變更誰可以讀取歷史紀錄的設定僅套用於此房間未來的訊息", "Changes your display nickname": "變更您的顯示暱稱", - "changing room on a RoomView is not supported": "不支援在房間檢視時變更房間", "Changing password will currently reset any end-to-end encryption keys on all devices, making encrypted chat history unreadable, unless you first export your room keys and re-import them afterwards. In future this will be improved.": "目前變更密碼將會重設在所有裝置上的端對端加密金鑰,讓加密的聊天歷史無法讀取,除非您先匯出您的房間金鑰,並在稍後重新匯入它們。這會在未來改進。", "Claimed Ed25519 fingerprint key": "已索取 Ed25519 指紋金鑰", "Clear Cache and Reload": "清除快取並重新載入", From 738c81b5062f162d709a5308b9d689e1f2230d9b Mon Sep 17 00:00:00 2001 From: David Baker Date: Tue, 5 Sep 2017 17:36:41 +0100 Subject: [PATCH 18/83] Add missing translations --- src/i18n/strings/en_EN.json | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/i18n/strings/en_EN.json b/src/i18n/strings/en_EN.json index d260548e45..8c0f3c8db7 100644 --- a/src/i18n/strings/en_EN.json +++ b/src/i18n/strings/en_EN.json @@ -597,6 +597,8 @@ "Dec": "Dec", "%(weekDayName)s, %(monthName)s %(day)s %(time)s": "%(weekDayName)s, %(monthName)s %(day)s %(time)s", "%(weekDayName)s, %(monthName)s %(day)s %(fullYear)s %(time)s": "%(weekDayName)s, %(monthName)s %(day)s %(fullYear)s %(time)s", + "%(weekDayName)s, %(monthName)s %(day)s": "%(weekDayName)s, %(monthName)s %(day)s", + "%(weekDayName)s, %(monthName)s %(day)s %(fullYear)s": "%(weekDayName)s, %(monthName)s %(day)s %(fullYear)s", "%(weekDayName)s %(time)s": "%(weekDayName)s %(time)s", "Set a display name:": "Set a display name:", "Set a Display Name": "Set a Display Name", From 1df1d990005983361c35f8d0f0a2ab520793560a Mon Sep 17 00:00:00 2001 From: Akcja Demokracja Open-Source Date: Tue, 5 Sep 2017 19:14:07 +0000 Subject: [PATCH 19/83] Translated using Weblate (Polish) Currently translated at 57.4% (558 of 972 strings) Translation: Riot Web/matrix-react-sdk Translate-URL: https://translate.riot.im/projects/riot-web/matrix-react-sdk/pl/ --- src/i18n/strings/pl.json | 142 ++++++++++++++++++++++++++++++++++++++- 1 file changed, 140 insertions(+), 2 deletions(-) diff --git a/src/i18n/strings/pl.json b/src/i18n/strings/pl.json index a2cfdaed9a..faa0efa8b1 100644 --- a/src/i18n/strings/pl.json +++ b/src/i18n/strings/pl.json @@ -281,7 +281,7 @@ "Blacklisted": "Umieszczono na czarnej liście", "Add a widget": "Dodaj widżet", "Allow": "Pozwól", - "Missing Media Permissions, click here to request.": "Brakuje uprawnień mediów, kliknij tutaj, aby zażądać.", + "Missing Media Permissions, click here to request.": "Brakuje uprawnień mediów. Kliknij tutaj, aby ich zażądać.", "and %(count)s others....other": "i %(count)s innych...", "and %(count)s others....one": "i jeszcze jedno...", "Bug Report": "Raport błędu", @@ -421,5 +421,143 @@ "%(userId)s from %(fromPowerLevel)s to %(toPowerLevel)s": "%(userId)s z %(fromPowerLevel)s na %(toPowerLevel)s", "Guest access is disabled on this Home Server.": "Dostęp dla gości jest wyłączony na tym serwerze.", "Guests can't set avatars. Please register.": "Goście nie mogą ustawić awatara. Proszę się zarejestrować.", - "Guest users can't create new rooms. Please register to create room and start a chat.": "Goście nie mogą tworzyć nowych pokoi. Proszę zarejestruj się, aby stworzyć nowy pokój." + "Guest users can't create new rooms. Please register to create room and start a chat.": "Goście nie mogą tworzyć nowych pokoi. Proszę zarejestruj się, aby stworzyć nowy pokój.", + "Deops user with given id": "Usuwa prawa administratora użytkownikowi z danym ID", + "Guest users can't upload files. Please register to upload.": "Goście nie mogą wysyłać plików na serwer. Proszę się zarejestrować, by móc wysyłać pliki.", + "Guests can't use labs features. Please register.": "Goście nie mogą używać funkcji eksperymentalnych. Proszę się zarejestrować.", + "Guests cannot join this room even if explicitly invited.": "Goście nie mogą dołączać do tego pokoju, nawet jeśli zostali specjalnie zaproszeni.", + "Hangup": "Rozłącz się", + "Hide avatar and display name changes": "Ukryj zmiany awatarów i nazw ekranowych", + "Hide Text Formatting Toolbar": "Ukryj pasek formatowania tekstu", + "Home": "Strona startowa", + "Homeserver is": "Serwer domowy to", + "Identity Server is": "Serwer tożsamości to", + "I have verified my email address": "Zweryfikowałem swój adres e-mail", + "Import": "Importuj", + "Import E2E room keys": "Importuj klucze pokoju E2E", + "Incoming call from %(name)s": "Połączenie przychodzące od %(name)s", + "Incoming video call from %(name)s": "Przychodzące połączenie wideo od %(name)s", + "Incoming voice call from %(name)s": "Przychodzące połączenie głosowe od %(name)s", + "Incorrect username and/or password.": "Nieprawidłowa nazwa użytkownika i/lub hasło.", + "Incorrect verification code": "Nieprawidłowy kod weryfikujący", + "Integrations Error": "Błąd integracji", + "Interface Language": "Język interfejsu", + "Invalid alias format": "Nieprawidłowy format aliasu", + "Invalid address format": "Nieprawidłowy format adresu", + "Invalid Email Address": "Nieprawidłowy adres e-mail", + "Invalid file%(extra)s": "Nieprawidłowy plik %(extra)s", + "%(senderName)s invited %(targetName)s.": "%(senderName)s zaprosił %(targetName)s.", + "Invite new room members": "Zaproś nowych członków", + "Invited": "Zaproszony", + "Invites": "Zaproszenia", + "Invites user with given id to current room": "Zaprasza użytkownika z danym ID do aktywnego pokoju", + "'%(alias)s' is not a valid format for an address": "'%(alias)s' nie jest poprawnym formatem adresu", + "'%(alias)s' is not a valid format for an alias": "'%(alias)s' nie jest poprawnym formatem aliasu", + "%(displayName)s is typing": "%(displayName)s pisze", + "Sign in with": "Zaloguj się używając", + "Join as voice or video.": "Dołącz głosowo lub przez wideo.", + "Join Room": "Dołącz do pokoju", + "joined and left": "dołączył i wyszedł", + "joined": "dołączył", + "%(targetName)s joined the room.": "%(targetName)s dołączył do pokoju.", + "Joins room with given alias": "", + "Jump to first unread message.": "Przeskocz do pierwszej nieprzeczytanej wiadomości.", + "%(senderName)s kicked %(targetName)s.": "%(senderName)s wyrzucił %(targetName)s.", + "Kick": "Wyrzuć", + "Kicks user with given id": "Wyrzuca użytkownika o danym ID", + "Labs": "Laboratoria", + "Last seen": "Ostatnio widziany", + "Leave room": "Opuść pokój", + "left and rejoined": "wyszedł i ponownie dołączył", + "left": "wyszedł", + "%(targetName)s left the room.": "%(targetName)s opuścił pokój.", + "Level:": "Poziom:", + "Publish this room to the public in %(domain)s's room directory?": "Czy opublikować ten pokój dla ogółu w spisie pokoi domeny %(domain)s?", + "Local addresses for this room:": "Lokalne adresy dla tego pokoju:", + "Logged in as:": "Zalogowany jako:", + "Login as guest": "Zaloguj jako gość", + "Logout": "Wyloguj", + "Low priority": "Niski priorytet", + "%(senderName)s made future room history visible to": "%(senderName)s uczynił przyszłą historię pokoju widoczną dla", + "Manage Integrations": "Zarządzaj integracjami", + "Markdown is disabled": "Markdown jest wyłączony", + "Markdown is enabled": "Markdown jest włączony", + "matrix-react-sdk version:": "Wersja matrix-react-sdk:", + "Matrix Apps": "Aplikacje Matrix", + "Members only": "Tylko dla członków", + "Message not sent due to unknown devices being present": "Wiadomość nie została wysłana z powodu obecności nieznanych urządzeń", + "Missing room_id in request": "Brakujące room_id w żądaniu", + "Missing user_id in request": "Brakujące user_id w żądaniu", + "Mobile phone number": "Numer telefonu komórkowego", + "Mobile phone number (optional)": "Numer telefonu komórkowego (opcjonalne)", + "Moderator": "Moderator", + "my Matrix ID": "mój Matrix ID", + "Name": "Imię", + "Never send encrypted messages to unverified devices from this device": "Nigdy nie wysyłaj zaszyfrowanych wiadomości do niezweryfikowanych urządzeń z tego urządzenia", + "Never send encrypted messages to unverified devices in this room": "Nigdy nie wysyłaj zaszyfrowanych wiadomości do niezweryfikowanych urządzeń w tym pokoju", + "Never send encrypted messages to unverified devices in this room from this device": "Nigdy nie wysyłaj niezaszyfrowanych wiadomości do niezweryfikowanych urządzeń z tego urządzenia", + "New address (e.g. #foo:%(localDomain)s)": "Nowy adres (np. #foo:%(localDomain)s)", + "New Composer & Autocomplete": "Nowy edytor tekstu i autouzupełnianie", + "New password": "Nowe hasło", + "New passwords don't match": "Nowe hasła nie zgadzają się", + "New passwords must match each other.": "Nowe hasła muszą się zgadzać.", + "none": "żaden", + "not set": "nieustawiony", + "not specified": "nieokreślony", + "(not supported by this browser)": "(niewspierany przez tę przeglądarkę)", + "": "", + "AM": "AM", + "PM": "PM", + "NOT verified": "NIEzweryfikowany", + "NOTE: Apps are not end-to-end encrypted": "UWAGA: Aplikacje nie są szyfrowane metodą użytkownik-użytkownik", + "No devices with registered encryption keys": "Brak urządzeń z zarejestrowanymi kluczami szyfrującymi", + "No display name": "Brak nazwy ekranowej", + "No more results": "Nie ma więcej wyników", + "No results": "Brak wyników", + "No users have specific privileges in this room": "Żadni użytkownicy w tym pokoju nie mają specyficznych uprawnień", + "olm version:": "wersja olm:", + "Once encryption is enabled for a room it cannot be turned off again (for now)": "Po włączeniu szyfrowania w pokoju nie można go ponownie wyłączyć (póki co)", + "Once you've followed the link it contains, click below": "Po kliknięciu łącza, które jest tam zawarte kliknij poniżej", + "Only people who have been invited": "Tylko ludzie, którzy zostali zaproszeni", + "Otherwise, click here to send a bug report.": "W przeciwnym razie, kliknij tutaj by wysłać raport o błędzie.", + "had": "było", + "Password": "Hasło", + "Password:": "Hasło:", + "Passwords can't be empty": "Hasła nie mogą być puste", + "People": "Ludzie", + "Permissions": "Uprawnienia", + "Phone": "Telefon", + "%(senderName)s placed a %(callType)s call.": "%(senderName)s rozpoczął połączenie %(callType).", + "Please check your email and click on the link it contains. Once this is done, click continue.": "Sprawdź swój e-mail i kliknij link w nim zawarty. Kiedy już to zrobisz, kliknij \"kontynuuj\".", + "Power level must be positive integer.": "Poziom uprawnień musi być liczbą dodatnią.", + "Press": "Naciśnij", + "Press to start a chat with someone": "Naciśnij , by rozpocząć rozmowę z kimś", + "Privacy warning": "Ostrzeżenie o prywatności", + "Private Chat": "Rozmowa prywatna", + "Privileged Users": "Użytkownicy uprzywilejowani", + "Profile": "Profil", + "Public Chat": "Rozmowa publiczna", + "Reason": "Powód", + "Reason: %(reasonText)s": "Powód: %(reasonText)s", + "Revoke Moderator": "Usuń prawa moderatorskie", + "Revoke widget access": "Usuń dostęp do widżetów", + "Refer a friend to Riot:": "Zaproś znajomego do Riota:", + "Register": "Zarejestruj", + "rejected": "odrzucone", + "%(targetName)s rejected the invitation.": "%(targetName)s odrzucił zaproszenie.", + "Reject invitation": "Odrzuć zaproszenie", + "Rejoin": "Dołącz ponownie", + "Remote addresses for this room:": "Adresy zdalne dla tego pokoju:", + "Remove Contact Information?": "Usunąć dane kontaktowe?", + "%(senderName)s removed their display name (%(oldDisplayName)s).": "%(senderName)s usunął swoją nazwę ekranową (%(oldDisplayName)s).", + "%(senderName)s removed their profile picture.": "%(senderName)s usunął swoje zdjęcie profilowe.", + "Remove %(threePid)s?": "Usunąć %(threePid)s?", + "Hide Apps": "Ukryj aplikacje", + "%(senderName)s requested a VoIP conference.": "%(senderName)s zażądał konferencji VoIP.", + "Report it": "Zgłoś", + "restore": "przywróć", + "Results from DuckDuckGo": "Wyniki z DuckDuckGo", + "Return to app": "Wróć do aplikacji", + "Return to login screen": "Wróć do ekranu logowania", + "Riot does not have permission to send you notifications - please check your browser settings": "Riot nie ma uprawnień, by wysyłać ci powiadomienia - sprawdź ustawienia swojej przeglądarki" } From 269f1f33e337584ccb85861348abb8b4ff58b2f5 Mon Sep 17 00:00:00 2001 From: Michael Telatynski <7t3chguy@gmail.com> Date: Wed, 6 Sep 2017 11:27:25 +0100 Subject: [PATCH 20/83] show response on copy so you don't mash it Signed-off-by: Michael Telatynski <7t3chguy@gmail.com> --- src/components/views/messages/TextualBody.js | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/src/components/views/messages/TextualBody.js b/src/components/views/messages/TextualBody.js index 58273bee67..a0fa61ccca 100644 --- a/src/components/views/messages/TextualBody.js +++ b/src/components/views/messages/TextualBody.js @@ -31,6 +31,7 @@ import dis from '../../../dispatcher'; import { _t } from '../../../languageHandler'; import UserSettingsStore from "../../../UserSettingsStore"; import MatrixClientPeg from '../../../MatrixClientPeg'; +import ContextualMenu from '../../structures/ContextualMenu'; import {RoomMember} from 'matrix-js-sdk'; import classNames from 'classnames'; @@ -119,6 +120,20 @@ module.exports = React.createClass({ buttons[i].onclick = (e) => { const copyCode = buttons[i].parentNode.getElementsByTagName("code")[0]; this.copyToClipboard(copyCode.textContent); + + const GenericTextContextMenu = sdk.getComponent('context_menus.GenericTextContextMenu'); + const buttonRect = e.target.getBoundingClientRect(); + + // The window X and Y offsets are to adjust position when zoomed in to page + const x = buttonRect.right + window.pageXOffset; + const y = (buttonRect.top + (buttonRect.height / 2) + window.pageYOffset) - 19; + const {close} = ContextualMenu.createMenu(GenericTextContextMenu, { + chevronOffset: 10, + left: x, + top: y, + message: "Copied!", + }); + e.target.onmouseout = close; }; } } From b10b0e573d76909fb884bcd95649263c7c4f7117 Mon Sep 17 00:00:00 2001 From: Michael Telatynski <7t3chguy@gmail.com> Date: Wed, 6 Sep 2017 11:29:55 +0100 Subject: [PATCH 21/83] i18n and change message depending on success of copy Signed-off-by: Michael Telatynski <7t3chguy@gmail.com> --- src/components/views/messages/TextualBody.js | 10 +++++++--- src/i18n/strings/en_EN.json | 2 ++ 2 files changed, 9 insertions(+), 3 deletions(-) diff --git a/src/components/views/messages/TextualBody.js b/src/components/views/messages/TextualBody.js index a0fa61ccca..d7d858e0c4 100644 --- a/src/components/views/messages/TextualBody.js +++ b/src/components/views/messages/TextualBody.js @@ -73,12 +73,16 @@ module.exports = React.createClass({ textArea.value = text; document.body.appendChild(textArea); textArea.select(); + + let successful; try { - const successful = document.execCommand('copy'); + successful = document.execCommand('copy'); } catch (err) { console.log('Unable to copy'); } + document.body.removeChild(textArea); + return successful; }, componentDidMount: function() { @@ -119,7 +123,7 @@ module.exports = React.createClass({ for (let i = 0; i < buttons.length; i++) { buttons[i].onclick = (e) => { const copyCode = buttons[i].parentNode.getElementsByTagName("code")[0]; - this.copyToClipboard(copyCode.textContent); + const successful = this.copyToClipboard(copyCode.textContent); const GenericTextContextMenu = sdk.getComponent('context_menus.GenericTextContextMenu'); const buttonRect = e.target.getBoundingClientRect(); @@ -131,7 +135,7 @@ module.exports = React.createClass({ chevronOffset: 10, left: x, top: y, - message: "Copied!", + message: successful ? _t('Copied!') : _t('Failed to copy'), }); e.target.onmouseout = close; }; diff --git a/src/i18n/strings/en_EN.json b/src/i18n/strings/en_EN.json index 8c0f3c8db7..de0b8e9ebb 100644 --- a/src/i18n/strings/en_EN.json +++ b/src/i18n/strings/en_EN.json @@ -620,6 +620,8 @@ "Encrypt room": "Encrypt room", "There are no visible files in this room": "There are no visible files in this room", "Room": "Room", + "Copied!": "Copied!", + "Failed to copy": "Failed to copy", "Connectivity to the server has been lost.": "Connectivity to the server has been lost.", "Sent messages will be stored until your connection has returned.": "Sent messages will be stored until your connection has returned.", "Auto-complete": "Auto-complete", From 6cfc7f0124c0a81d7625906283d6dc46f43785b1 Mon Sep 17 00:00:00 2001 From: Silke Date: Wed, 6 Sep 2017 10:41:51 +0000 Subject: [PATCH 22/83] Translated using Weblate (Dutch) Currently translated at 100.0% (972 of 972 strings) Translation: Riot Web/matrix-react-sdk Translate-URL: https://translate.riot.im/projects/riot-web/matrix-react-sdk/nl/ --- src/i18n/strings/nl.json | 267 ++++++++++++++++++++------------------- 1 file changed, 134 insertions(+), 133 deletions(-) diff --git a/src/i18n/strings/nl.json b/src/i18n/strings/nl.json index 1010b31a87..fbf4ab713c 100644 --- a/src/i18n/strings/nl.json +++ b/src/i18n/strings/nl.json @@ -133,9 +133,9 @@ "Algorithm": "Algoritme", "Always show message timestamps": "Laat altijd tijdstempels van berichten zien", "Authentication": "Authenticatie", - "all room members": "alle kamer leden", - "all room members, from the point they are invited": "alle kamer leden, vanaf het moment dat ze uitgenodigt zijn", - "all room members, from the point they joined": "alle kamer leden, vanaf het moment dat ze toegetreden zijn", + "all room members": "alle kamerleden", + "all room members, from the point they are invited": "alle kamerleden, vanaf het moment dat ze uitgenodigt zijn", + "all room members, from the point they joined": "alle kamerleden, vanaf het moment dat ze toegetreden zijn", "an address": "een adres", "and": "en", "%(items)s and %(remaining)s others": "%(items)s en %(remaining)s andere", @@ -146,13 +146,13 @@ "%(names)s and %(lastPerson)s are typing": "%(names)s en %(lastPerson)s zijn aan het typen", "%(names)s and one other are typing": "%(names)s en één andere zijn aan het typen", "%(names)s and %(count)s others are typing": "%(names)s en %(count)s andere zijn aan het typen", - "An email has been sent to": "Er is een email verzonden naar", + "An email has been sent to": "Er is een e-mail verzonden naar", "A new password must be entered.": "Er moet een nieuw wachtwoord worden ingevoerd.", - "%(senderName)s answered the call.": "%(senderName)s heeft deelgenomen aan het audio gesprek.", + "%(senderName)s answered the call.": "%(senderName)s heeft deelgenomen aan het audiogesprek.", "anyone": "iedereen", "An error has occurred.": "Er is een fout opgetreden.", - "Anyone who knows the room's link, apart from guests": "Iedereen die de kamer link weet, behalve gasten", - "Anyone who knows the room's link, including guests": "Iedereen die de kamer link weet, inclusief gasten", + "Anyone who knows the room's link, apart from guests": "Iedereen die de kamerlink weet, behalve gasten", + "Anyone who knows the room's link, including guests": "Iedereen die de kamerlink weet, inclusief gasten", "Are you sure?": "Weet je het zeker?", "Are you sure you want to reject the invitation?": "Weet je zeker dat je de uitnodiging wilt weigeren?", "Are you sure you want upload the following files?": "Weet je zeker dat je de volgende bestanden wilt uploaden?", @@ -161,26 +161,26 @@ "%(senderName)s banned %(targetName)s.": "%(senderName)s heeft %(targetName)s verbannen.", "Ban": "Verban", "Banned users": "Verbannen gebruikers", - "Bans user with given id": "Verbant de gebruiker met de gegeven id", + "Bans user with given id": "Verbant de gebruiker met het gegeven ID", "Blacklisted": "Buitengesloten", "Bug Report": "Bug report", "Bulk Options": "Bulk opties", "Call Timeout": "Gesprek time-out", "Can't connect to homeserver - please check your connectivity and ensure your homeserver's SSL certificate is trusted.": "Kan niet met de homeserver verbinden - controleer alsjeblieft je verbinding en wees zeker dat je homeserver's SSL certificaat vertrouwd wordt.", - "Can't connect to homeserver via HTTP when an HTTPS URL is in your browser bar. Either use HTTPS or enable unsafe scripts.": "Kan niet met de homeserver verbinden via HTTP wanneer er een HTTPS URL in je browser balk staat. Gebruik HTTPS of activeer onveilige scripts.", - "Can't load user settings": "Kan de gebruiker instellingen niet laden", + "Can't connect to homeserver via HTTP when an HTTPS URL is in your browser bar. Either use HTTPS or enable unsafe scripts.": "Kan niet met de thuisserver verbinden via HTTP wanneer er een HTTPS-URL in je browser balk staat. Gebruik HTTPS of activeer onveilige scripts.", + "Can't load user settings": "Kan de gebruikersinstellingen niet laden", "Change Password": "Wachtwoord veranderen", - "%(senderName)s changed their display name from %(oldDisplayName)s to %(displayName)s.": "%(senderName)s heeft zijn of haar weergave naam veranderd van %(oldDisplayName)s naar %(displayName)s.", - "%(senderName)s changed their profile picture.": "%(senderName)s heeft zijn of haar profiel foto veranderd.", + "%(senderName)s changed their display name from %(oldDisplayName)s to %(displayName)s.": "%(senderName)s heeft zijn of haar weergavenaam veranderd van %(oldDisplayName)s naar %(displayName)s.", + "%(senderName)s changed their profile picture.": "%(senderName)s heeft zijn of haar profielfoto veranderd.", "%(senderName)s changed the power level of %(powerLevelDiffText)s.": "%(senderName)s heeft het machtsniveau van %(powerLevelDiffText)s gewijzigd.", - "%(senderDisplayName)s changed the room name to %(roomName)s.": "%(senderDisplayName)s heeft de kamer naam van %(roomName)s gewijzigd.", + "%(senderDisplayName)s changed the room name to %(roomName)s.": "%(senderDisplayName)s heeft de kamernaam van %(roomName)s gewijzigd.", "%(senderDisplayName)s changed the topic to \"%(topic)s\".": "%(senderDisplayName)s heeft het onderwerp gewijzigd naar \"%(topic)s\".", - "Changes to who can read history will only apply to future messages in this room": "Veranderingen aan wie de historie kan lezen worden alleen maar toegepast op toekomstige berichten in deze kamer", + "Changes to who can read history will only apply to future messages in this room": "Veranderingen aan wie de geschiedenis kan lezen worden alleen maar toegepast op toekomstige berichten in deze kamer", "Changes your display nickname": "Verandert jouw weergavenaam", "changing room on a RoomView is not supported": "veranderen van een kamer in een RoomView wordt niet ondersteund", - "Changing password will currently reset any end-to-end encryption keys on all devices, making encrypted chat history unreadable, unless you first export your room keys and re-import them afterwards. In future this will be improved.": "Het veranderen van het wachtwoord zal op het moment alle eind-tot-eind encryptie sleutels resetten, wat alle versleutelde chat geschiedenis onleesbaar zou maken, behalve als je eerst je kamer sleutels exporteert en achteraf opnieuw importeert. Dit zal worden verbeterd in de toekomst.", - "Clear Cache and Reload": "Legen cache en herlaad", - "Clear Cache": "Legen cache", + "Changing password will currently reset any end-to-end encryption keys on all devices, making encrypted chat history unreadable, unless you first export your room keys and re-import them afterwards. In future this will be improved.": "Het veranderen van het wachtwoord zal op het moment alle end-to-endbeveiligingssleutels resetten, wat alle versleutelde chatgeschiedenis onleesbaar zou maken, behalve als je eerst je kamersleutels exporteert en achteraf opnieuw importeert. Dit zal worden verbeterd in de toekomst.", + "Clear Cache and Reload": "Leeg cache en herlaad", + "Clear Cache": "Leeg cache", "Click here": "Klik hier", "Click here to fix": "Klik hier om op te lossen", "Click to mute audio": "Klik om audio te dempen", @@ -188,16 +188,16 @@ "click to reveal": "klik om te laten zien", "Click to unmute video": "Klik om de demping van de video op te heffen", "Click to unmute audio": "Klik om het dempen van het geluid op te heffen", - "Command error": "Opdracht fout", + "Command error": "Opdrachtfout", "Commands": "Opdrachten", - "Conference call failed.": "Conferentie gesprek mislukt.", - "Conference calling is in development and may not be reliable.": "Conferentie gesprekken zijn nog in ontwikkelingen en kunnen onbetrouwbaar zijn.", - "Conference calls are not supported in encrypted rooms": "Conferentie gesprekken worden niet ondersteunt in versleutelde kamers", - "Conference calls are not supported in this client": "Conferentie gesprekken worden niet ondersteunt in deze client", + "Conference call failed.": "Conferentiegesprek mislukt.", + "Conference calling is in development and may not be reliable.": "Conferentiegesprekken zijn nog in ontwikkelingen en kunnen onbetrouwbaar zijn.", + "Conference calls are not supported in encrypted rooms": "Conferentiegesprekken worden niet ondersteunt in versleutelde kamers", + "Conference calls are not supported in this client": "Conferentiegesprekken worden niet ondersteunt in deze client", "Confirm password": "Bevestigen wachtwoord", "Confirm your new password": "Bevestig je nieuwe wachtwoord", "Continue": "Doorgaan", - "Could not connect to the integration server": "Mislukt om te verbinden met de integratie server", + "Could not connect to the integration server": "Mislukt om te verbinden met de integratieserver", "Cancel": "Annuleren", "a room": "een ruimte", "Accept": "Accepteren", @@ -303,20 +303,20 @@ "tag as %(tagName)s": "Met %(tagName)s labelen", "tag direct chat": "Privéchat labelen", "Tagged as: ": "Gelabeld als: ", - "Sun": "Zon", - "Mon": "Maa", - "Tue": "Din", - "Wed": "Woe", - "Thu": "Don", - "Fri": "Vrij", - "Sat": "Zat", + "Sun": "Zo", + "Mon": "Ma", + "Tue": "Di", + "Wed": "Wo", + "Thu": "Do", + "Fri": "Vr", + "Sat": "Za", "Jan": "Jan", "Feb": "Feb", - "Mar": "Maa", + "Mar": "Mrt", "Apr": "Apr", "May": "Mei", - "Jun": "Juni", - "Jul": "Juli", + "Jun": "Jun", + "Jul": "Jul", "Aug": "Aug", "Sep": "Sep", "Oct": "Okt", @@ -335,7 +335,7 @@ "Current password": "Huidig wachtwoord", "%(senderDisplayName)s removed the room name.": "%(senderDisplayName)s heeft de naam van de kamer verwijderd.", "Create a new chat or reuse an existing one": "Maak een nieuwe chat aan of ga verder met een bestaande", - "Create Room": "Maak een kamer", + "Create Room": "Maak een kamer aan", "Curve25519 identity key": "Curve25519-identiteitssleutel", "/ddg is not a command": "/ddg is geen commando", "Deactivate Account": "Account Deactiveren", @@ -360,7 +360,7 @@ "Don't send typing notifications": "Geen typnotificatie sturen", "Download %(text)s": "%(text)s Downloaden", "Drop File Here": "Plaats Bestand Hier", - "Ed25519 fingerprint": "Ed25519 vingerafdruk", + "Ed25519 fingerprint": "Ed25519-vingerafdruk", "Email": "E-mail", "Email address": "E-mailadres", "Email address (optional)": "E-mailadres (optioneel)", @@ -370,22 +370,22 @@ "Deops user with given id": "Ontmachtigd gebruiker met het gegeven ID", "Default": "Standaard", "Disable inline URL previews by default": "URL-voorvertoningen standaard uitschakelen", - "Displays action": "Weergeeft actie", + "Displays action": "Geeft actie weer", "Drop here to tag %(section)s": "Hiernaartoe verplaatsen om %(section)s te etiketteren", - "Email, name or matrix ID": "E-mail, naam of matrix ID", + "Email, name or matrix ID": "E-mail, naam of matrix-ID", "Emoji": "Emoji", "Enable encryption": "Versleuteling inschakelen", "Enable Notifications": "Notificaties inschakelen", "enabled": "ingeschakeld", - "Encrypted by a verified device": "Versleuteld bij een geverifieerd apparaat", - "Encrypted by an unverified device": "Versleuteld bij een niet geverifieerd apparaat", + "Encrypted by a verified device": "Versleuteld door een geverifieerd apparaat", + "Encrypted by an unverified device": "Versleuteld door een niet-geverifieerd apparaat", "Encrypted messages will not be visible on clients that do not yet implement encryption": "Versleutelde berichten zullen nog niet zichtbaar zijn op applicaties die geen versleuteling ondersteunen", "Encrypted room": "Versleutelde ruimte", "Encryption is enabled in this room": "Versleuteling is ingeschakeld in deze ruimte", "Encryption is not enabled in this room": "Versleuteling is niet ingeschakeld in deze ruimte", "%(senderName)s ended the call.": "%(senderName)s heeft opgehangen.", - "End-to-end encryption information": "Eind-tot-eind versleuteling informatie", - "End-to-end encryption is in beta and may not be reliable": "Eind-tot-eind versleuteling is nog in beta en kan onbetrouwbaar zijn", + "End-to-end encryption information": "end-to-endbeveiligingsinformatie", + "End-to-end encryption is in beta and may not be reliable": "End-to-endbeveiliging is nog in bèta en kan onbetrouwbaar zijn", "Enter Code": "Voer code in", "Enter passphrase": "Voer wachtzin in", "Error decrypting attachment": "Fout tijdens het ontsleutelen van de bijlage", @@ -393,14 +393,14 @@ "Event information": "Gebeurtenis-informatie", "Existing Call": "Bestaande oproep", "Export": "Exporteren", - "Export E2E room keys": "Exporteer E2E ruimte sleutels", + "Export E2E room keys": "Exporteer E2E-ruimte-sleutels", "Failed to ban user": "Niet gelukt om de gebruiker te verbannen", "Failed to change power level": "Niet gelukt om het machtsniveau te wijzigen", "Failed to delete device": "Niet gelukt om het apparaat te verwijderen", - "Failed to fetch avatar URL": "Niet gelukt om de avatar URL op te halen", + "Failed to fetch avatar URL": "Niet gelukt om de avatar-URL op te halen", "Failed to join room": "Niet gelukt om tot de ruimte toe te treden", "Failed to leave room": "Niet gelukt om de ruimte te verlaten", - "Failed to load timeline position": "Niet gelukt om de tijdlijn positie te laden", + "Failed to load timeline position": "Niet gelukt om de tijdlijnpositie te laden", "Failed to lookup current room": "Niet gelukt om de huidige ruimte op te zoeken", "Failed to mute user": "Niet gelukt om de gebruiker te dempen", "Failed to register as guest:": "Niet gelukt om als gast te registreren:", @@ -421,17 +421,17 @@ "favourite": "favoriet", "Favourites": "Favorieten", "Fill screen": "Scherm vullen", - "Filter room members": "Ruimte leden filteren", + "Filter room members": "Ruimteleden filteren", "Forget room": "Ruimte vergeten", "Forgot your password?": "Wachtwoord vergeten?", "For security, this session has been signed out. Please sign in again.": "Voor veiligheidsredenen is deze sessie uitgelogd. Log alsjeblieft opnieuw in.", - "For security, logging out will delete any end-to-end encryption keys from this browser. If you want to be able to decrypt your conversation history from future Riot sessions, please export your room keys for safe-keeping.": "In verband met veiligheidsredenen zullen alle eind-tot-eind versleutelingssleutels van deze browser verwijderd worden. Als je je gespreksgeschiedenis van toekomstige Riot sessies wilt kunnen ontsleutelen, exporteer en bewaar dan de ruimte sleutels.", + "For security, logging out will delete any end-to-end encryption keys from this browser. If you want to be able to decrypt your conversation history from future Riot sessions, please export your room keys for safe-keeping.": "In verband met veiligheidsredenen zullen alle end-to-endbeveiligingsleutels van deze browser verwijderd worden. Als je je gespreksgeschiedenis van toekomstige Riot sessies wilt kunnen ontsleutelen, exporteer en bewaar dan de ruimte sleutels.", "Found a bug?": "Een fout gevonden?", "%(userId)s from %(fromPowerLevel)s to %(toPowerLevel)s": "%(userId)s van %(fromPowerLevel)s naar %(toPowerLevel)s", - "Guest access is disabled on this Home Server.": "Gast toegang is uitgeschakeld op deze thuisserver.", + "Guest access is disabled on this Home Server.": "Gasttoegang is uitgeschakeld op deze thuisserver.", "Guests can't set avatars. Please register.": "Gasten kunnen geen avatars instellen. Registreer je alsjeblieft.", "Guest users can't create new rooms. Please register to create room and start a chat.": "Gast gebruikers kunnen geen nieuwe ruimtes aanmaken. Registreer je om een nieuwe ruimte aan te maken en een gesprek te starten.", - "Guest users can't upload files. Please register to upload.": "Gast gebruikers kunnen geen bestanden uploaden. Registreer je om te uploaden.", + "Guest users can't upload files. Please register to upload.": "Gastgebruikers kunnen geen bestanden uploaden. Registreer je om te uploaden.", "Guests can't use labs features. Please register.": "Gasten kunnen geen labs mogelijkheden gebruiken. Registreer je alsjeblieft.", "Guests cannot join this room even if explicitly invited.": "Gasten kunnen niet tot deze ruimte toetreden, zelfs als ze expliciet uitgenodigd zijn.", "had": "had", @@ -444,22 +444,22 @@ "Identity Server is": "Identiteitsserver is", "I have verified my email address": "Ik heb mijn e-mailadres geverifieerd", "Import": "Importeren", - "Import E2E room keys": "E2E ruimte sleutels importeren", + "Import E2E room keys": "E2E-ruimte-sleutels importeren", "Incoming call from %(name)s": "Inkomende oproep van %(name)s", "Incoming video call from %(name)s": "Inkomende video-oproep van %(name)s", "Incoming voice call from %(name)s": "Inkomende spraakoproep van %(name)s", "Incorrect username and/or password.": "Incorrecte gebruikersnaam en/of wachtwoord.", - "Incorrect verification code": "Incorrecte verificatie code", - "Interface Language": "Interface Taal", - "Invalid alias format": "Ongeldig naam formaat", - "Invalid address format": "Ongeldig adres formaat", + "Incorrect verification code": "Incorrecte verificatiecode", + "Interface Language": "Interfacetaal", + "Invalid alias format": "Ongeldig naamformaat", + "Invalid address format": "Ongeldig adresformaat", "Invalid Email Address": "Ongeldig e-mailadres", "Invalid file%(extra)s": "Ongeldig bestand%(extra)s", "%(senderName)s invited %(targetName)s.": "%(senderName)s heeft %(targetName)s uitgenodigd.", "Invite new room members": "Nieuwe ruimte leden uitnodigen", "Invited": "Uitgenodigd", "Invites": "Uitnodigingen", - "Invites user with given id to current room": "Nodigt de gebruiker met het gegeven id uit in de huidige ruimte", + "Invites user with given id to current room": "Nodigt de gebruiker met het gegeven ID uit in de huidige ruimte", "'%(alias)s' is not a valid format for an address": "'%(alias)s' is niet een geldig formaat voor een adres", "'%(alias)s' is not a valid format for an alias": "'%(alias)s' is niet een geldig formaat voor een naam", "%(displayName)s is typing": "%(displayName)s is aan het typen", @@ -483,17 +483,17 @@ "Login as guest": "Als gast inloggen", "Logout": "Uitloggen", "Low priority": "Lage prioriteit", - "%(senderName)s made future room history visible to": "%(senderName)s heeft de toekomstige ruimte geschiedenis zichtbaar gemaakt voor", + "%(senderName)s made future room history visible to": "%(senderName)s heeft de toekomstige ruimtegeschiedenis zichtbaar gemaakt voor", "Manage Integrations": "Integraties beheren", - "Markdown is disabled": "Opmaak is uitgeschakeld", - "Markdown is enabled": "Opmaak ingeschakeld", - "matrix-react-sdk version:": "matrix-react-sdk versie:", + "Markdown is disabled": "Markdown is uitgeschakeld", + "Markdown is enabled": "Markdown ingeschakeld", + "matrix-react-sdk version:": "matrix-react-sdk-versie:", "Members only": "Alleen leden", "Message not sent due to unknown devices being present": "Bericht niet verzonden doordat er een onbekende apparaten aanwezig zijn", "Missing room_id in request": "Het room_id mist in het verzoek", "Missing user_id in request": "De user_id mist in het verzoek", - "Mobile phone number": "Mobiel telefoonnummer", - "Mobile phone number (optional)": "Mobiel telefoonnummer (optioneel)", + "Mobile phone number": "Mobiele-telefoonnummer", + "Mobile phone number (optional)": "Mobiele-telefoonnummer (optioneel)", "Never send encrypted messages to unverified devices from this device": "Nooit versleutelde berichten vanaf dit apparaat naar niet geverifieerde apparaten versturen", "Never send encrypted messages to unverified devices in this room": "Nooit versleutelde berichten naar niet geverifieerde apparaten sturen in deze ruimte", "Never send encrypted messages to unverified devices in this room from this device": "Nooit vanaf dit apparaat versleutelde berichten naar niet geverifieerde apparaten in deze ruimte sturen", @@ -512,18 +512,18 @@ "Failed to kick": "Niet gelukt om te er uit te zetten", "Press to start a chat with someone": "Druk op om een gesprek met iemand te starten", "Remove %(threePid)s?": "%(threePid)s verwijderen?", - "%(senderName)s requested a VoIP conference.": "%(senderName)s heeft een VoIP gesprek aangevraagd.", + "%(senderName)s requested a VoIP conference.": "%(senderName)s heeft een VoIP-gesprek aangevraagd.", "Report it": "Melden", - "Resetting password will currently reset any end-to-end encryption keys on all devices, making encrypted chat history unreadable, unless you first export your room keys and re-import them afterwards. In future this will be improved.": "Het wachtwoord veranderen betekent momenteel dat alle eind-tot-eind versleutelingssleutels op alle apparaten veranderen waardoor versleutelde gespreksgeschiedenis onleesbaar wordt, behalve als je eerst de ruimte sleutels exporteert en daarna opnieuw importeert. Dit zal in de toekomst verbeterd worden.", + "Resetting password will currently reset any end-to-end encryption keys on all devices, making encrypted chat history unreadable, unless you first export your room keys and re-import them afterwards. In future this will be improved.": "Het wachtwoord veranderen betekent momenteel dat alle end-to-endbeveiligingssleutels op alle apparaten veranderen waardoor versleutelde gespreksgeschiedenis onleesbaar wordt, behalve als je eerst de ruimte sleutels exporteert en daarna opnieuw importeert. Dit zal in de toekomst verbeterd worden.", "restore": "herstellen", "Results from DuckDuckGo": "Resultaten van DuckDuckGo", "Return to app": "Naar de app terugkeren", "Return to login screen": "Naar het inlogscherm terugkeren", - "Riot does not have permission to send you notifications - please check your browser settings": "Riot heeft geen permissie om je notificaties te versturen - controleer je browser instellingen", + "Riot does not have permission to send you notifications - please check your browser settings": "Riot heeft geen permissie om je notificaties te versturen - controleer je browserinstellingen", "Riot was not given permission to send notifications - please try again": "Riot heeft geen permissie gekregen om notificaties te versturen - probeer het opnieuw", "riot-web version:": "riot-web versie:", "Room %(roomId)s not visible": "Ruimte %(roomId)s is niet zichtbaar", - "Room Colour": "Ruimte Kleur", + "Room Colour": "Ruimtekleur", "Room contains unknown devices": "De ruimte bevat onbekende apparaten", "Room name (optional)": "Ruimtenaam (optioneel)", "%(roomName)s does not exist.": "%(roomName)s bestaat niet.", @@ -539,27 +539,27 @@ "Send a message (unencrypted)": "Stuur een bericht (onversleuteld)", "Send an encrypted message": "Stuur een versleuteld bericht", "Send anyway": "Alsnog versturen", - "Sender device information": "Afzender apparaat informatie", - "Send Reset Email": "Stuur Reset E-mail", + "Sender device information": "Afzenderapparaatinformatie", + "Send Reset Email": "Stuur Reset-E-mail", "sent an image": "stuurde een afbeelding", "%(senderDisplayName)s sent an image.": "%(senderDisplayName)s stuurde een afbeelding.", "%(senderName)s sent an invitation to %(targetDisplayName)s to join the room.": "%(senderName)s stuurde een uitnodiging naar %(targetDisplayName)s om tot de ruimte toe te treden.", "sent a video": "stuurde een video", - "Server error": "Server fout", + "Server error": "Serverfout", "Server may be unavailable or overloaded": "De server kan onbereikbaar of overbelast zijn", "Server may be unavailable, overloaded, or search timed out :(": "De server is misschien onbereikbaar, overbelast of het zoeken duurde te lang :(", "Server may be unavailable, overloaded, or the file too big": "De server is misschien onbereikbaar, overbelast of het bestand is te groot", "Server may be unavailable, overloaded, or you hit a bug.": "De server is misschien onbereikbaar, overbelast of je bent tegen een fout aangelopen.", "Server unavailable, overloaded, or something else went wrong.": "De server is onbereikbaar, overbelast of iets anders ging fout.", - "Session ID": "Sessie ID", + "Session ID": "Sessie-ID", "%(senderName)s kicked %(targetName)s.": "%(senderName)s heeft %(targetName)s de ruimte uitgestuurd.", "Kick": "Er uit sturen", - "Kicks user with given id": "Stuurt de gebruiker met het gegeven id er uit", + "Kicks user with given id": "Stuurt de gebruiker met het gegeven ID er uit", "%(senderName)s set a profile picture.": "%(senderName)s heeft een profielfoto ingesteld.", "%(senderName)s set their display name to %(displayName)s.": "%(senderName)s heeft zijn of haar weergavenaam naar %(displayName)s veranderd.", "Set": "Instellen", "Show panel": "Paneel weergeven", - "Show Text Formatting Toolbar": "Tekst Opmaak Werkbalk Weergeven", + "Show Text Formatting Toolbar": "Tekstopmaakwerkbalk Weergeven", "Show timestamps in 12 hour format (e.g. 2:30pm)": "Laat de tijd in twaalf uur formaat zien (bijv. 2:30pm)", "Signed Out": "Uitgelogd", "Sign in": "Inloggen", @@ -569,8 +569,8 @@ "since they were invited": "sinds ze zijn uitgenodigd", "Some of your messages have not been sent.": "Een paar van je berichten zijn niet verstuurd.", "Someone": "Iemand", - "Sorry, this homeserver is using a login which is not recognised ": "Sorry, deze thuisserver gebruikt een inlog methode die niet wordt herkend. ", - "The default role for new room members is": "De standaard rol voor nieuwe ruimteleden is", + "Sorry, this homeserver is using a login which is not recognised ": "Sorry, deze thuisserver gebruikt een inlogmethode die niet wordt herkend. ", + "The default role for new room members is": "De standaardrol voor nieuwe ruimteleden is", "The main address for this room is": "Het hoofdadres voor deze ruimte is", "The phone number entered looks invalid": "Het telefoonnummer dat ingevoerd is ziet er ongeldig uit", "The signing key you provided matches the signing key you received from %(userId)s's device %(deviceId)s. Device marked as verified.": "De versleutelingssleutel die je hebt verstrekt komt overeen met de versleutelingssleutel die je hebt ontvangen van %(userId)s's apparaat %(deviceId)s. Apparaat is gemarkeerd als geverifieerd.", @@ -590,10 +590,10 @@ "These are experimental features that may break in unexpected ways": "Dit zijn experimentele functies die misschien kunnen breken op onverwachte manieren", "The visibility of existing history will be unchanged": "De zichtbaarheid van de bestaande geschiedenis zal onveranderd blijven", "This doesn't appear to be a valid email address": "Het ziet er niet naar uit dat dit een geldig e-mailadres is", - "This is a preview of this room. Room interactions have been disabled": "Dit is een voorvertoning van de ruimte. Ruimte interacties zijn uitgeschakeld", + "This is a preview of this room. Room interactions have been disabled": "Dit is een voorvertoning van de ruimte. Ruimte-interacties zijn uitgeschakeld", "This phone number is already in use": "Dit telefoonnummer is al in gebruik", "This room": "Deze ruimte", - "This room is not accessible by remote Matrix servers": "Deze ruimte is niet toegankelijk voor afgelegen Matrix servers", + "This room is not accessible by remote Matrix servers": "Deze ruimte is niet toegankelijk voor afgelegen Matrix-servers", "This room's internal ID is": "Het interne ID van deze ruimte is", "times": "keer", "To ban users": "om gebruikers te verbannen", @@ -616,8 +616,8 @@ "To use it, just wait for autocomplete results to load and tab through them.": "Om het te gebruiken, wacht tot de automatisch aangevulde resultaten geladen zijn en tab er doorheen.", "Tried to load a specific point in this room's timeline, but you do not have permission to view the message in question.": "Je probeerde een specifiek punt in de tijdlijn van deze ruimte te laden maar je hebt niet de permissie om de desbetreffende berichten te zien.", "Tried to load a specific point in this room's timeline, but was unable to find it.": "Het is niet gelukt om een specifiek punt in de tijdlijn van deze ruimte te laden.", - "Turn Markdown off": "Doe opmaak uit", - "Turn Markdown on": "Zet opmaak aan", + "Turn Markdown off": "Zet Markdown uit", + "Turn Markdown on": "Zet Markdown aan", "%(senderName)s turned on end-to-end encryption (algorithm %(algorithm)s).": "%(senderName)s heeft eind-tot-eind versleuteling aangezet (algoritme %(algorithm)s).", "Unable to add email address": "Niet mogelijk om e-mailadres toe te voegen", "Unable to remove contact information": "Niet mogelijk om contactinformatie te verwijderen", @@ -632,7 +632,7 @@ "Undecryptable": "Niet ontsleutelbaar", "Unencrypted room": "Ontsleutelde ruimte", "unencrypted": "ontsleuteld", - "Unencrypted message": "Niet versleuteld bericht", + "Unencrypted message": "Niet-versleuteld bericht", "unknown caller": "onbekende beller", "Unknown command": "Onbekende commando", "unknown device": "Onbekend apparaat", @@ -641,9 +641,9 @@ "unknown": "onbekend", "Unmute": "Niet dempen", "Unnamed Room": "Naamloze Ruimte", - "Unrecognised command:": "Onbekende commando:", - "Unrecognised room alias:": "Onbekende ruimte alias:", - "Unverified": "Niet geverifieerd", + "Unrecognised command:": "Onbekend commando:", + "Unrecognised room alias:": "Onbekend ruimte-alias:", + "Unverified": "Niet-geverifieerd", "Uploading %(filename)s and %(count)s others.zero": "Aan het uploaden %(filename)s", "Uploading %(filename)s and %(count)s others.one": "%(filename)s en %(count)s andere aan het uploaden", "Uploading %(filename)s and %(count)s others.other": "%(filename)s en %(count)s anderen aan het uploaden", @@ -654,10 +654,10 @@ "Upload file": "Bestand uploaden", "Upload new:": "Nieuwe uploaden:", "Usage": "Gebruik", - "Use compact timeline layout": "Gebruik een compacte tijdlijn indeling", + "Use compact timeline layout": "Gebruik een compacte tijdlijnindeling", "Use with caution": "Gebruik met behoedzaamheid", - "User ID": "Gebruiker ID", - "User Interface": "Gebruiker Interface", + "User ID": "Gebruikers-ID", + "User Interface": "Gebruikersinterface", "%(user)s is a": "%(user)s is een", "User name": "Gebruikersnaam", "%(userName)s (power %(powerLevelNumber)s)": "%(userName)s (macht %(powerLevelNumber)s)", @@ -671,8 +671,8 @@ "Verified key": "Geverifieerde sleutel", "Video call": "Video-oproep", "Voice call": "Spraakoproep", - "VoIP conference finished.": "VoIP vergadering beëindigd.", - "VoIP conference started.": "VoIP vergadering gestart.", + "VoIP conference finished.": "VoIP-vergadering beëindigd.", + "VoIP conference started.": "VoIP-vergadering gestart.", "VoIP is unsupported": "VoIP is niet ondersteund", "(could not connect media)": "(kan media niet verbinden)", "(no answer)": "(geen antwoord)", @@ -680,27 +680,27 @@ "(warning: cannot be disabled again!)": "(waarschuwing: kan niet meer uitgezet worden!)", "Warning!": "Waarschuwing!", "WARNING: Device already verified, but keys do NOT MATCH!": "WAARSCHUWING: Apparaat al geverifieerd, maar de sleutels KOMEN NIET OVEREEN!", - "WARNING: KEY VERIFICATION FAILED! The signing key for %(userId)s and device %(deviceId)s is \"%(fprint)s\" which does not match the provided key \"%(fingerprint)s\". This could mean your communications are being intercepted!": "WAARSCHUWING: SLEUTEL VERIFICATIE IS MISLUKT! De ondertekende sleutel voor %(userId)s en apparaat %(deviceId)s is \"%(fprint)s\" wat niet overeenkomt met de verschafte sleutel \"%(fingerprints)s\". Dit kan betekenen dat je communicatie onderschept wordt!", + "WARNING: KEY VERIFICATION FAILED! The signing key for %(userId)s and device %(deviceId)s is \"%(fprint)s\" which does not match the provided key \"%(fingerprint)s\". This could mean your communications are being intercepted!": "WAARSCHUWING: SLEUTELVERIFICATIE IS MISLUKT! De ondertekende sleutel voor %(userId)s en apparaat %(deviceId)s is \"%(fprint)s\" wat niet overeenkomt met de verschafte sleutel \"%(fingerprints)s\". Dit kan betekenen dat je communicatie onderschept wordt!", "Who can access this room?": "Wie heeft toegang tot deze ruimte?", "Who can read history?": "Wie kan de geschiedenis lezen?", "Who would you like to add to this room?": "Wie wil je aan deze ruimte toevoegen?", "Who would you like to communicate with?": "Met wie zou je willen communiceren?", "%(senderName)s withdrew %(targetName)s's invitation.": "%(sernderName)s trok %(targetName)s's uitnodiging terug.", "Would you like to accept or decline this invitation?": "Wil je deze uitnodiging accepteren of afwijzen?", - "You already have existing direct chats with this user:": "Je hebt al bestaande privé gesprekken met deze gebruiker:", + "You already have existing direct chats with this user:": "Je hebt al bestaande privé-gesprekken met deze gebruiker:", "You are already in a call.": "Je bent al in gesprek.", "You're not in any rooms yet! Press to make a room or to browse the directory": "Je zit nog niet in een ruimte! Druk op om een ruimte te maken of om door de catalogus te bladeren", "You are trying to access %(roomName)s.": "Je probeert in %(roomName)s toe te treden.", "You cannot place a call with yourself.": "Je kan geen spraakoproep met jezelf maken.", - "You cannot place VoIP calls in this browser.": "Je kan geen VoIP oproepen in deze browser doen.", + "You cannot place VoIP calls in this browser.": "Je kan geen VoIP-oproepen in deze browser doen.", "You do not have permission to post to this room": "Je hebt geen permissie om in deze ruimte te praten", "You have been banned from %(roomName)s by %(userName)s.": "Je bent verbannen van %(roomName)s door %(userName)s.", "You have been invited to join this room by %(inviterName)s": "Je bent in deze ruimte uitgenodigd door %(inviterName)s", "You have been kicked from %(roomName)s by %(userName)s.": "Je bent uit %(roomName)s gezet door %(userName)s.", "You have been logged out of all devices and will no longer receive push notifications. To re-enable notifications, sign in again on each device": "Je bent op alle apparaten uitgelegd en je zal niet langer notificaties ontvangen. Om notificaties weer aan te zetten, log op elk apparaat opnieuw in", - "You have disabled URL previews by default.": "Je hebt URL voorvertoningen standaard uitgezet.", - "You have enabled URL previews by default.": "Je hebt URL voorvertoningen standaard aangezet.", - "You have entered an invalid contact. Try using their Matrix ID or email address.": "Je hebt een ongeldig contact ingevoerd. Probeer zijn of haar Matrix ID of e-mailadres te gebruiken.", + "You have disabled URL previews by default.": "Je hebt URL-voorvertoningen standaard uitgezet.", + "You have enabled URL previews by default.": "Je hebt URL-voorvertoningen standaard aangezet.", + "You have entered an invalid contact. Try using their Matrix ID or email address.": "Je hebt een ongeldig contact ingevoerd. Probeer zijn of haar Matrix-ID of e-mailadres te gebruiken.", "You have no visible notifications": "Je hebt geen zichtbare notificaties", "You may wish to login with a different account, or add this email to this account.": "Je wilt misschien met een ander account inloggen of deze e-mail aan je account toevoegen.", "you must be a": "wat je moet zijn is een", @@ -708,14 +708,14 @@ "You need to be able to invite users to do that.": "Je moet bevoegd zijn om gebruikers uit te nodigen om dat te doen.", "You need to be logged in.": "Je moet ingelogd zijn.", "You need to enter a user name.": "Je moet een gebruikersnaam invoeren.", - "Your email address does not appear to be associated with a Matrix ID on this Homeserver.": "Het ziet er naar uit dat je e-mailadres niet met een Matrix ID geassocieerd is op deze thuisserver.", + "Your email address does not appear to be associated with a Matrix ID on this Homeserver.": "Het ziet er naar uit dat je e-mailadres niet met een Matrix-ID geassocieerd is op deze thuisserver.", "Your password has been reset": "Je wachtwoord is gereset", "Your password was successfully changed. You will not receive push notifications on other devices until you log back in to them": "Je wachtwoord is succesvol veranderd. Je zal geen notificaties op andere apparaten ontvangen totdat je er opnieuw inlogd", "You seem to be in a call, are you sure you want to quit?": "Het ziet er naar uit dat je in een gesprek zit, weet je zeker dat je wilt afsluiten?", "You seem to be uploading files, are you sure you want to quit?": "Het ziet er naar uit dat je bestanden aan het uploaden bent, weet je zeker dat je wilt afsluiten?", "You should not yet trust it to secure data": "Je moet het nog niet vertrouwen om gegevens te beveiligen", "You will not be able to undo this change as you are promoting the user to have the same power level as yourself.": "Je zal deze verandering niet terug kunnen draaien omdat je de gebruiker naar hetzelfde machtsniveau als jezelf promoot.", - "Your home server does not support device management.": "Je thuisserver ondersteund geen apparaat beheer.", + "Your home server does not support device management.": "Je thuisserver ondersteund geen apparaatbeheer.", "This server does not support authentication with a phone number.": "Deze server ondersteunt geen authenticatie met een telefoonnummer.", "Missing password.": "Het wachtwoord mist.", "Passwords don't match.": "De wachtwoorden komen niet overeen.", @@ -765,7 +765,7 @@ "%(oneUser)sleft and rejoined %(repeats)s times": "%(oneUser)s is %(repeats)s keer vertrokken en opnieuw toegetreden", "%(severalUsers)sleft and rejoined": "%(severalUsers)s zijn vertrokken en opnieuw toegetreden", "%(oneUser)sleft and rejoined": "%(oneUser)s is vertrokken en opnieuw toegetreden", - "%(severalUsers)srejected their invitations %(repeats)s times": "%(severalUsers)s hebben hun uitnodiging uitnodiging %(repeats)s keer afgewezen", + "%(severalUsers)srejected their invitations %(repeats)s times": "%(severalUsers)s hebben hun uitnodiging %(repeats)s keer afgewezen", "%(oneUser)srejected their invitation %(repeats)s times": "%(oneUser)s heeft zijn of haar uitnodiging %(repeats)s keer afgewezen", "%(severalUsers)srejected their invitations": "%(severalUsers)s hebben hun uitnodiging afgewezen", "%(oneUser)srejected their invitation": "%(oneUser)s heeft zijn of haar uitnodiging afgewezen", @@ -797,23 +797,23 @@ "%(oneUser)schanged their avatar %(repeats)s times": "%(oneUser)s heeft zijn of haar avatar %(repeats)s keer aangepast", "%(severalUsers)schanged their avatar": "%(severalUsers)s hebben hun avatar aangepast", "%(oneUser)schanged their avatar": "%(oneUser)s heeft zijn of haar avatar aangepast", - "Please select the destination room for this message": "Selecteer de destinatie ruimte voor dit bericht", + "Please select the destination room for this message": "Selecteer de destinatie-ruimte voor dit bericht", "New Password": "Nieuw wachtwoord", - "Start automatically after system login": "Start automatisch na systeem aanmelding", - "Desktop specific": "Desktop specifiek", - "Analytics": "Analisaties", - "Opt out of analytics": "Uitschrijven voor gegevens analisaties", + "Start automatically after system login": "Start automatisch na systeem-aanmelding", + "Desktop specific": "Desktop-specifiek", + "Analytics": "Gegevensanalyse", + "Opt out of analytics": "Uitschrijven voor gegevensanalyse", "Options": "Opties", - "Riot collects anonymous analytics to allow us to improve the application.": "Riot verzameld anonieme analisaties dat het mogelijk maakt om de applicatie te verbeteren.", + "Riot collects anonymous analytics to allow us to improve the application.": "Riot verzameld anonieme gegevensanalyse die het mogelijk maakt om de applicatie te verbeteren.", "Passphrases must match": "Wachtzinnen moeten overeenkomen", "Passphrase must not be empty": "Wachtzin mag niet leeg zijn", "Export room keys": "Ruimtesleutels exporteren", "Confirm passphrase": "Wachtzin bevestigen", "Import room keys": "Ruimtesleutels importeren", "File to import": "Bestand om te importeren", - "This process allows you to export the keys for messages you have received in encrypted rooms to a local file. You will then be able to import the file into another Matrix client in the future, so that client will also be able to decrypt these messages.": "Dit proces maakt het mogelijk om de sleutels van je ontvangen berichten in versleutelde ruimtes naar een lokaal bestand te exporteren. Je zal daarna in de toekomst het bestand in een ander Matrix programma kunnen importeren zodat dat programma ook deze berichten kan ontsleutelen.", - "The exported file will allow anyone who can read it to decrypt any encrypted messages that you can see, so you should be careful to keep it secure. To help with this, you should enter a passphrase below, which will be used to encrypt the exported data. It will only be possible to import the data by using the same passphrase.": "Het geëxporteerde bestand zal het voor iedereen dat het kan lezen mogelijk maken om alle berichten die jij kan zien te ontsleutelen, je zal daarom voorzichtig moeten zijn en het veilig houden. Om hiermee te helpen zou je een wachtzin moeten invoeren hieronder, deze zal dan gebruikt worden om de geëxporteerde gegevens dte versleutelen. Het is dan alleen mogelijk om de gegevens te importeren met hetzelfde wachtwoord.", - "This process allows you to import encryption keys that you had previously exported from another Matrix client. You will then be able to decrypt any messages that the other client could decrypt.": "Dit proces maakt het mogelijk om versleutelingssleutels die je eerst had geëxporteerd vanaf een ander Matrix programma te importeren. Je zal daarna alle berichten kunnen ontsleutelen die het andere programma ook kon ontsleutelen.", + "This process allows you to export the keys for messages you have received in encrypted rooms to a local file. You will then be able to import the file into another Matrix client in the future, so that client will also be able to decrypt these messages.": "Dit proces maakt het mogelijk om de sleutels van je ontvangen berichten in versleutelde ruimtes naar een lokaal bestand te exporteren. Je zal daarna in de toekomst het bestand in een ander Matrix-programma kunnen importeren zodat dat programma ook deze berichten kan ontsleutelen.", + "The exported file will allow anyone who can read it to decrypt any encrypted messages that you can see, so you should be careful to keep it secure. To help with this, you should enter a passphrase below, which will be used to encrypt the exported data. It will only be possible to import the data by using the same passphrase.": "Het geëxporteerde bestand zal het voor iedereen dat het kan lezen mogelijk maken om alle berichten die jij kan zien te ontsleutelen, je zal daarom voorzichtig moeten zijn en het veilig houden. Om hiermee te helpen zou je een wachtzin moeten invoeren hieronder, deze zal dan gebruikt worden om de geëxporteerde gegevens te versleutelen. Het is dan alleen mogelijk om de gegevens te importeren met hetzelfde wachtwoord.", + "This process allows you to import encryption keys that you had previously exported from another Matrix client. You will then be able to decrypt any messages that the other client could decrypt.": "Dit proces maakt het mogelijk om versleutelingssleutels die je eerst had geëxporteerd vanaf een ander Matrix-programma te importeren. Je zal daarna alle berichten kunnen ontsleutelen die het andere programma ook kon ontsleutelen.", "The export file will be protected with a passphrase. You should enter the passphrase here, to decrypt the file.": "Het te exporteren bestand zal beveiligd zijn met een wachtzin. Je moet hier een wachtzin invoeren om het bestand te ontsleutelen.", "You must join the room to see its files": "Je moet tot een ruimte toetreden om de bestanden te zien", "Reject all %(invitedRooms)s invites": "Alle %(invitedRooms)s uitnodigingen afslaan", @@ -826,7 +826,7 @@ "Are you sure you wish to remove (delete) this event? Note that if you delete a room name or topic change, it could undo the change.": "Weet je zeker dat je deze gebeurtenis wilt verwijderen? Wees er wel van bewust dat als je een ruimtenaam of onderwerp verwijderd je de verandering ongedaan kunt maken.", "Unknown error": "Onbekende fout", "Incorrect password": "Incorrect wachtwoord", - "This will make your account permanently unusable. You will not be able to re-register the same user ID.": "Dit zal je account permanent onbruikbaar maken. Je zal ook niet opnieuw kunnen registreren met hetzelfde gebruikers ID.", + "This will make your account permanently unusable. You will not be able to re-register the same user ID.": "Dit zal je account permanent onbruikbaar maken. Je zal ook niet opnieuw kunnen registreren met hetzelfde gebruikers-ID.", "This action is irreversible.": "Deze actie is onomkeerbaar.", "To continue, please enter your password.": "Om verder te gaan, voer je wachtwoord in.", "To verify that this device can be trusted, please contact its owner using some other means (e.g. in person or a phone call) and ask them whether the key they see in their User Settings for this device matches the key below:": "Om te verifiëren dat dit apparaat vertrouwd kan worden, contacteer de eigenaar op een andere manier (bijv. persoonlijk of via een telefoontje) en vraag of de sleutel die ze zien in de Gebruikersinstellingen voor dit apparaat overeenkomt met de onderstaande sleutel:", @@ -855,8 +855,8 @@ "Add User": "Gebruiker Toevoegen", "This Home Server would like to make sure you are not a robot": "Deze thuisserver wil er zeker van zijn dat je geen robot bent", "Sign in with CAS": "Inloggen met CAS", - "You can use the custom server options to sign into other Matrix servers by specifying a different Home server URL.": "Je kan de aangepaste server opties gebruiken om bij andere Matrix servers in te loggen door een andere thuisserver URL te specificeren.", - "This allows you to use this app with an existing Matrix account on a different home server.": "Dit maakt het mogelijk om deze applicatie te gebruiken met een bestaand Matrix account op een andere thuisserver.", + "You can use the custom server options to sign into other Matrix servers by specifying a different Home server URL.": "Je kan de aangepaste server opties gebruiken om bij andere Matrix-servers in te loggen door een andere thuisserver-URL te specificeren.", + "This allows you to use this app with an existing Matrix account on a different home server.": "Dit maakt het mogelijk om deze applicatie te gebruiken met een bestaand Matrix-account op een andere thuisserver.", "You can also set a custom identity server but this will typically prevent interaction with users based on email address.": "Je kan ook een aangepaste identiteitsserver instellen maar dit zal waarschijnlijk interactie met gebruikers gebaseerd op een e-mailadres voorkomen.", "Please check your email to continue registration.": "Bekijk je e-mail om door te gaan met de registratie.", "Token incorrect": "Bewijs incorrect", @@ -864,10 +864,10 @@ "Please enter the code it contains:": "Voer de code in die het bevat:", "If you don't specify an email address, you won't be able to reset your password. Are you sure?": "Als je geen e-mailadres specificeert zal je niet je wachtwoord kunnen resetten. Weet je het zeker?", "You are registering with %(SelectedTeamName)s": "Je registreert je met %(SelectedTeamName)s", - "Default server": "Standaard server", + "Default server": "Standaardserver", "Custom server": "Aangepaste server", - "Home server URL": "Thuisserver URL", - "Identity server URL": "Identiteitsserver URL", + "Home server URL": "Thuisserver-URL", + "Identity server URL": "Identiteitsserver-URL", "What does this mean?": "Wat betekent dit?", "Error decrypting audio": "Fout met het ontsleutelen van de audio", "Error decrypting image": "Fout met het ontsleutelen van de afbeelding", @@ -875,13 +875,13 @@ "This image cannot be displayed.": "Deze afbeelding kan niet worden weergeven.", "Error decrypting video": "Fout met het ontsleutelen van de video", "Add an Integration": "Voeg een integratie toe", - "You are about to be taken to a third-party site so you can authenticate your account for use with %(integrationsUrl)s. Do you wish to continue?": "Je wordt zo naar een derde-partij website verbonden zodat je het account kan legitimeren voor gebruik met %(integrationsUrl)s. Wil je doorgaan?", - "Removed or unknown message type": "Verwijderd of onbekend bericht type", - "Disable URL previews by default for participants in this room": "Zet URL voorvertoningen standaard uit voor deelnemers aan deze ruimte", - "Disable URL previews for this room (affects only you)": "Zet URL voorvertoningen uit voor deze ruimte (heeft alleen effect op jou)", - "URL previews are %(globalDisableUrlPreview)s by default for participants in this room.": "URL voorvertoningen staan standaard %(globalDisableUrlPreview)s voor deelnemers aan deze ruimte.", - "URL Previews": "URL Voorvertoningen", - "Enable URL previews for this room (affects only you)": "URL voorvertoningen in deze ruimte aanzetten (heeft alleen effect op jou)", + "You are about to be taken to a third-party site so you can authenticate your account for use with %(integrationsUrl)s. Do you wish to continue?": "Je wordt zo naar een derde-partij-website verbonden zodat je het account kan legitimeren voor gebruik met %(integrationsUrl)s. Wil je doorgaan?", + "Removed or unknown message type": "Verwijderd of onbekend berichttype", + "Disable URL previews by default for participants in this room": "Zet URL-voorvertoningen standaard uit voor deelnemers aan deze ruimte", + "Disable URL previews for this room (affects only you)": "Zet URL-voorvertoningen uit voor deze ruimte (heeft alleen effect op jou)", + "URL previews are %(globalDisableUrlPreview)s by default for participants in this room.": "URL-voorvertoningen staan standaard %(globalDisableUrlPreview)s voor deelnemers aan deze ruimte.", + "URL Previews": "URL-Voorvertoningen", + "Enable URL previews for this room (affects only you)": "URL-voorvertoningen in deze ruimte aanzetten (heeft alleen effect op jou)", "Drop file here to upload": "Bestand hier laten vallen om te uploaden", " (unsupported)": " (niet ondersteund)", "Ongoing conference call%(supportedText)s.": "Lopend vergaderingsgesprek %(supportedText)s.", @@ -904,9 +904,9 @@ "Username not available": "Gebruikersnaam niet beschikbaar", "Something went wrong!": "Iets ging niet goed!", "This will be your account name on the homeserver, or you can pick a different server.": "Dit zal je account naam worden op de thuisserver of je kan een verschillende server pakken.", - "If you already have a Matrix account you can log in instead.": "Als je al een Matrix account hebt kan je in plaats daarvan inloggen.", - "Your browser does not support the required cryptography extensions": "Je browser ondersteunt de benodigde cryptografie extensies niet", - "Not a valid Riot keyfile": "Niet een geldig Riot sleutelbestand", + "If you already have a Matrix account you can log in instead.": "Als je al een Matrix-account hebt kan je in plaats daarvan inloggen.", + "Your browser does not support the required cryptography extensions": "Je browser ondersteunt de benodigde cryptografie-extensies niet", + "Not a valid Riot keyfile": "Niet een geldig Riot-sleutelbestand", "Authentication check failed: incorrect password?": "Authenticatie controle gefaald: incorrect wachtwoord?", "Disable Peer-to-Peer for 1:1 calls": "Peer-to-Peer voor 1:1 oproepen uitschakelen", "Do you want to set an email address?": "Wil je een e-mailadres instellen?", @@ -916,7 +916,7 @@ "Start verification": "Verificatie starten", "Share without verifying": "Delen zonder verificatie", "Ignore request": "Verzoek negeren", - "You added a new device '%(displayName)s', which is requesting encryption keys.": "Je hebt een nieuwe apparaat '%(displayName)s' toegevoegd die om versleutelingssleutels vraagt.", + "You added a new device '%(displayName)s', which is requesting encryption keys.": "Je hebt een nieuw apparaat '%(displayName)s' toegevoegd dat om versleutelingssleutels vraagt.", "Your unverified device '%(displayName)s' is requesting encryption keys.": "Je niet geverifieerde apparaat '%(displayName)s' vraagt naar versleutelingssleutels.", "Encryption key request": "Verzoek voor versleutelingssleutel", "Define the power level of a user": "Definieer het machtsniveau van een gebruiker", @@ -927,18 +927,18 @@ "Delete widget": "Widget verwijderen", "Do you want to load widget from URL:": "Wil je de widget laden van de URL:", "Edit": "Wijzigen", - "Enable automatic language detection for syntax highlighting": "Automatische taaldetectie voor zinsbouw markeringen aanzetten", + "Enable automatic language detection for syntax highlighting": "Automatische taaldetectie voor zinsbouwmarkeringen aanzetten", "Hide Apps": "Apps verbergen", "Hide join/leave messages (invites/kicks/bans unaffected)": "Toetreed/verlaat berichten verbergen (uitnodigingen/verwijderingen/verbanningen zullen ongeschonden blijven)", "Hide avatar and display name changes": "Avatar en weergavenaam wijzigingen verbergen", - "Integrations Error": "Integraties Fout", + "Integrations Error": "Integratiesfout", "Publish this room to the public in %(domain)s's room directory?": "Deze ruimte publiekelijk maken in %(domain)s's ruimte catalogus?", "Matrix Apps": "Matrix Apps", "AM": "AM", "PM": "PM", - "NOTE: Apps are not end-to-end encrypted": "OPMERKING: Apps zijn niet eind-tot-eind versleuteld", + "NOTE: Apps are not end-to-end encrypted": "OPMERKING: Apps zijn niet end-to-endbeveiligd", "Revoke widget access": "Toegang tot widget intrekken", - "Sets the room topic": "Wijzigt het ruimte onderwerp", + "Sets the room topic": "Wijzigt het ruimte-onderwerp", "Show Apps": "Apps Weergeven", "The maximum permitted number of widgets have already been added to this room.": "Het maximum aantal toegestane widgets is al aan deze ruimte toegevoegd.", "To get started, please pick a username!": "Om te beginnen, kies een gebruikersnaam!", @@ -947,24 +947,24 @@ "You are not in this room.": "Je zit niet in deze ruimte.", "You do not have permission to do that in this room.": "Je hebt geen permissie om dat te doen in deze ruimte.", "Verifies a user, device, and pubkey tuple": "Verifieert een gebruiker, apparaat en pubkey tupel", - "Autocomplete Delay (ms):": "Automatisch aanvullen vertraging (ms):", + "Autocomplete Delay (ms):": "Automatisch-aanvullen-vertraging (ms):", "This Home server does not support groups": "Deze thuisserver ondersteunt geen groepen", "Loading device info...": "Apparaat info aan het laden...", "Groups": "Groepen", "Create a new group": "Maak een nieuwe groep", "Create Group": "Groep Aanmaken", - "Group Name": "Groepnaam", + "Group Name": "Groepsnaam", "Example": "Voorbeeld", "Create": "Creëer", - "Group ID": "Groep ID", + "Group ID": "Groeps-ID", "+example:%(domain)s": "+voorbeeld:%(domain)s", - "Group IDs must be of the form +localpart:%(domain)s": "Groep IDs moeten er als +lokaalgedeelte:%(domain)s uit zien", - "It is currently only possible to create groups on your own home server: use a group ID ending with %(domain)s": "Het is momenteel mogelijk om groepen op je eigen thuisserver aan te maken: gebruik een groep ID dat eindigt met %(domain)s", + "Group IDs must be of the form +localpart:%(domain)s": "Groeps-IDs moeten er als +lokaalgedeelte:%(domain)s uit zien", + "It is currently only possible to create groups on your own home server: use a group ID ending with %(domain)s": "Het is momenteel mogelijk om groepen op je eigen thuisserver aan te maken: gebruik een groeps-ID dat eindigt met %(domain)s", "Room creation failed": "Het aanmaken van de ruimte is niet gelukt", "You are a member of these groups:": "Je bent een deelnemer van deze groepen:", - "Create a group to represent your community! Define a set of rooms and your own custom homepage to mark out your space in the Matrix universe.": "Maak een groep aan om je gemeenschap te representateren! Defineer een set van ruimtes en maak je eigen aangepaste homepagina om je eigen plek in het Matrix universum te creëren.", + "Create a group to represent your community! Define a set of rooms and your own custom homepage to mark out your space in the Matrix universe.": "Maak een groep aan om je gemeenschap te representateren! Defineer een set van ruimtes en maak je eigen aangepaste homepagina om je eigen plek in het Matrix-universum te creëren.", "Join an existing group": "Treed tot een bestaande groep toe", - "To join an exisitng group you'll have to know its group identifier; this will look something like +example:matrix.org.": "Om tot een bestaande groep toe te treden moet je groep identificatie weten; dit zal er ongeveer uit zien als +voorbeeld:matrix.org.", + "To join an exisitng group you'll have to know its group identifier; this will look something like +example:matrix.org.": "Om tot een bestaande groep toe te treden moet je groepsidentificatie weten; dit zal er ongeveer uit zien als +voorbeeld:matrix.org.", "Featured Rooms:": "Prominente Ruimtes:", "Error whilst fetching joined groups": "Er is een fout opgetreden tijdens het ophalen van de tot toegretreden groepen", "Featured Users:": "Prominente Gebruikers:", @@ -972,8 +972,9 @@ "Automatically replace plain text Emoji": "Automatisch normale tekst vervangen met Emoji", "Failed to upload image": "Het is niet gelukt om de afbeelding te uploaden", "Failed to update group": "Het is niet gelukt om de groep bij te werken", - "Hide avatars in user and room mentions": "Avatars in gebruiker en ruimte vermeldingen verbergen", + "Hide avatars in user and room mentions": "Avatars in gebruiker- en ruimte-vermeldingen verbergen", "%(widgetName)s widget added by %(senderName)s": "%(widgetName)s widget toegevoegd door %(senderName)s", "%(widgetName)s widget removed by %(senderName)s": "%(widgetName)s widget verwijderd door %(senderName)s", - "Robot check is currently unavailable on desktop - please use a web browser": "Robot check is momenteel niet beschikbaar op de desktop - gebruik in plaats daarvan een webbrowser" + "Robot check is currently unavailable on desktop - please use a web browser": "Robot check is momenteel niet beschikbaar op de desktop - gebruik in plaats daarvan een webbrowser", + "%(widgetName)s widget modified by %(senderName)s": "%(widgetName)s widget aangepast door %(senderName)s" } From 16621d0e1d0055a3dd19748f221a9ed8b0f3171a Mon Sep 17 00:00:00 2001 From: "Iru Cai (vimacs)" Date: Wed, 6 Sep 2017 11:18:28 +0000 Subject: [PATCH 23/83] Translated using Weblate (Chinese (Simplified)) Currently translated at 77.2% (751 of 972 strings) Translation: Riot Web/matrix-react-sdk Translate-URL: https://translate.riot.im/projects/riot-web/matrix-react-sdk/zh_Hans/ --- src/i18n/strings/zh_Hans.json | 49 ++++++++++++++++++++++++++++++++++- 1 file changed, 48 insertions(+), 1 deletion(-) diff --git a/src/i18n/strings/zh_Hans.json b/src/i18n/strings/zh_Hans.json index 77c2232619..bc032df675 100644 --- a/src/i18n/strings/zh_Hans.json +++ b/src/i18n/strings/zh_Hans.json @@ -705,5 +705,52 @@ "Unable to add email address": "无法添加电子邮件地址", "Failed to update group": "更新群组失败", "Automatically replace plain text Emoji": "文字、表情自动转换", - "Join an existing group": "试图加入一个不存在的群组" + "Join an existing group": "试图加入一个不存在的群组", + "To reset your password, enter the email address linked to your account": "要重置你的密码,请输入关联你的帐号的电子邮箱地址", + "Unable to restore previous session": "无法恢复上一个会话", + "Unable to verify email address.": "无法验证电子邮箱地址。", + "Unknown room %(roomId)s": "未知聊天室 %(roomId)s", + "Unknown (user, device) pair:": "未知(用户,设备)对:", + "Unrecognised command:": "无法识别的命令:", + "Unrecognised room alias:": "无法识别的聊天室别名:", + "Use with caution": "谨慎使用", + "User Interface": "用户界面", + "%(user)s is a": "%(user)s 是一个", + "User name": "用户名", + "(no answer)": "(没有回答)", + "(warning: cannot be disabled again!)": "(警告:无法再被禁用!)", + "WARNING: Device already verified, but keys do NOT MATCH!": "警告:设备已经验证,但密钥不匹配!", + "Who can access this room?": "谁可以访问这个聊天室?", + "Who would you like to add to this room?": "你想把谁加入这个聊天室?", + "Who would you like to communicate with?": "你想和谁交流?", + "You are already in a call.": "你已经在一个通话之中。", + "You do not have permission to do that in this room.": "你没有权限在这个聊天室里面做那件事。", + "You are trying to access %(roomName)s.": "你正在尝试访问 %(roomName)s.", + "You cannot place VoIP calls in this browser.": "你不能在这个浏览器中发起 VoIP 通话。", + "You do not have permission to post to this room": "你没有发送到这个聊天室的权限", + "You have been invited to join this room by %(inviterName)s": "你已经被 %(inviterName)s 邀请加入这个聊天室", + "You seem to be in a call, are you sure you want to quit?": "你好像在一个通话中,你确定要退出吗?", + "You seem to be uploading files, are you sure you want to quit?": "你好像正在上传文件,你确定要退出吗?", + "You should not yet trust it to secure data": "你不应该相信它来保护你的数据", + "Upload an avatar:": "上传一个头像:", + "This doesn't look like a valid email address.": "这看起来不是一个合法的电子邮件地址。", + "This doesn't look like a valid phone number.": "这看起来不是一个合法的电话号码。", + "User names may only contain letters, numbers, dots, hyphens and underscores.": "用户名只可以包含字母、数字、点、连字号和下划线。", + "An unknown error occurred.": "一个未知错误出现了。", + "An error occurred: %(error_string)s": "一个错误出现了: %(error_string)s", + "Encrypt room": "加密聊天室", + "There are no visible files in this room": "这个聊天室里面没有可见的文件", + "Active call": "活跃的通话", + "Verify...": "验证...", + "Error decrypting audio": "解密音频时出错", + "Error decrypting image": "解密图像时出错", + "Error decrypting video": "解密视频时出错", + " (unsupported)": "(不支持)", + "Updates": "更新", + "Check for update": "检查更新", + "%(senderDisplayName)s removed the room avatar.": "%(senderDisplayName)s 移除了聊天室头像。", + "Something went wrong!": "出了点问题!", + "If you already have a Matrix account you can log in instead.": "如果你已经有一个 Matrix 帐号,你可以登录。", + "Do you want to set an email address?": "你要设置一个电子邮箱地址吗?", + "Room creation failed": "创建聊天室失败" } From 9dd98d1085dbd807742613934e4d722890884d63 Mon Sep 17 00:00:00 2001 From: David Baker Date: Wed, 6 Sep 2017 13:25:57 +0100 Subject: [PATCH 24/83] Prepare changelog for v0.10.3 --- CHANGELOG.md | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index af82ef2e1f..090f5a49da 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,9 @@ +Changes in [0.10.3](https://github.com/matrix-org/matrix-react-sdk/releases/tag/v0.10.3) (2017-09-06) +===================================================================================================== +[Full Changelog](https://github.com/matrix-org/matrix-react-sdk/compare/v0.10.3-rc.2...v0.10.3) + + * No changes + Changes in [0.10.3-rc.2](https://github.com/matrix-org/matrix-react-sdk/releases/tag/v0.10.3-rc.2) (2017-09-05) =============================================================================================================== [Full Changelog](https://github.com/matrix-org/matrix-react-sdk/compare/v0.10.3-rc.1...v0.10.3-rc.2) From f5cf2aece2ac39a172b2b08adc6b66c006c4790c Mon Sep 17 00:00:00 2001 From: David Baker Date: Wed, 6 Sep 2017 13:25:58 +0100 Subject: [PATCH 25/83] v0.10.3 --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index e1fbfb58d7..38a647ff67 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "matrix-react-sdk", - "version": "0.10.3-rc.2", + "version": "0.10.3", "description": "SDK for matrix.org using React", "author": "matrix.org", "repository": { From 609d61d53c55eae0660fb01724bb51518ec5f46c Mon Sep 17 00:00:00 2001 From: David Baker Date: Wed, 6 Sep 2017 17:40:58 +0100 Subject: [PATCH 26/83] Revert "Implement sticky date separators" --- package.json | 1 - src/DateUtils.js | 44 --- src/components/structures/MessagePanel.js | 9 +- src/components/structures/ScrollPanel.js | 278 +++++++++--------- src/components/structures/TimelinePanel.js | 1 + .../structures/TimelinePanel-test.js | 3 + 6 files changed, 143 insertions(+), 193 deletions(-) diff --git a/package.json b/package.json index bb7f33492d..38a647ff67 100644 --- a/package.json +++ b/package.json @@ -73,7 +73,6 @@ "react-addons-css-transition-group": "15.3.2", "react-dom": "^15.4.0", "react-gemini-scrollbar": "matrix-org/react-gemini-scrollbar#5e97aef", - "react-sticky": "^6.0.1", "sanitize-html": "^1.14.1", "text-encoding-utf-8": "^1.0.1", "url": "^0.11.0", diff --git a/src/DateUtils.js b/src/DateUtils.js index e7be394c17..78eef57eae 100644 --- a/src/DateUtils.js +++ b/src/DateUtils.js @@ -30,18 +30,6 @@ function getDaysArray() { ]; } -function getLongDaysArray() { - return [ - _t('Sunday'), - _t('Monday'), - _t('Tuesday'), - _t('Wednesday'), - _t('Thursday'), - _t('Friday'), - _t('Saturday'), - ]; -} - function getMonthsArray() { return [ _t('Jan'), @@ -108,38 +96,6 @@ module.exports = { }); }, - formatDateSeparator: function(date) { - const days = getDaysArray(); - const longDays = getLongDaysArray(); - const months = getMonthsArray(); - - const today = new Date(); - const yesterday = new Date(); - yesterday.setDate(today.getDate() - 1); - - if (date.toDateString() === today.toDateString()) { - return _t('Today'); - } else if (date.toDateString() === yesterday.toDateString()) { - return _t('Yesterday'); - } else if (today.getTime() - date.getTime() < 6 * 24 * 60 * 60 * 1000) { - return longDays[date.getDay()]; - } else if (today.getTime() - date.getTime() < 365 * 24 * 60 * 60 * 1000) { - return _t('%(weekDayName)s, %(monthName)s %(day)s', { - weekDayName: days[date.getDay()], - monthName: months[date.getMonth()], - day: date.getDate(), - fullYear: date.getFullYear(), - }); - } else { - return _t('%(weekDayName)s, %(monthName)s %(day)s %(fullYear)s', { - weekDayName: days[date.getDay()], - monthName: months[date.getMonth()], - day: date.getDate(), - fullYear: date.getFullYear(), - }); - } - }, - formatTime: function(date, showTwelveHour=false) { if (showTwelveHour) { return twelveHourTime(date); diff --git a/src/components/structures/MessagePanel.js b/src/components/structures/MessagePanel.js index aad4e1957a..e5884973c6 100644 --- a/src/components/structures/MessagePanel.js +++ b/src/components/structures/MessagePanel.js @@ -61,6 +61,9 @@ module.exports = React.createClass({ // for pending messages. ourUserId: React.PropTypes.string, + // true to suppress the date at the start of the timeline + suppressFirstDateSeparator: React.PropTypes.bool, + // whether to show read receipts showReadReceipts: React.PropTypes.bool, @@ -514,10 +517,10 @@ module.exports = React.createClass({ _wantsDateSeparator: function(prevEvent, nextEventDate) { if (prevEvent == null) { - // First event in the panel always wants a DateSeparator - return true; + // first event in the panel: depends if we could back-paginate from + // here. + return !this.props.suppressFirstDateSeparator; } - const prevEventDate = prevEvent.getDate(); if (!nextEventDate || !prevEventDate) { return false; diff --git a/src/components/structures/ScrollPanel.js b/src/components/structures/ScrollPanel.js index 3ea699798e..a8a2ec181b 100644 --- a/src/components/structures/ScrollPanel.js +++ b/src/components/structures/ScrollPanel.js @@ -17,7 +17,6 @@ limitations under the License. var React = require("react"); var ReactDOM = require("react-dom"); var GeminiScrollbar = require('react-gemini-scrollbar'); -import { StickyContainer } from 'react-sticky'; import Promise from 'bluebird'; var KeyCode = require('../../KeyCode'); @@ -78,52 +77,111 @@ if (DEBUG_SCROLL) { * scroll down further. If stickyBottom is disabled, we just save the scroll * offset as normal. */ -export default class ScrollPanel extends StickyContainer { +module.exports = React.createClass({ + displayName: 'ScrollPanel', - constructor() { - super(); - this.onResize = this.onResize.bind(this); - this.onScroll = this.onScroll.bind(this); - } + propTypes: { + /* stickyBottom: if set to true, then once the user hits the bottom of + * the list, any new children added to the list will cause the list to + * scroll down to show the new element, rather than preserving the + * existing view. + */ + stickyBottom: React.PropTypes.bool, - componentWillMount() { + /* startAtBottom: if set to true, the view is assumed to start + * scrolled to the bottom. + * XXX: It's likley this is unecessary and can be derived from + * stickyBottom, but I'm adding an extra parameter to ensure + * behaviour stays the same for other uses of ScrollPanel. + * If so, let's remove this parameter down the line. + */ + startAtBottom: React.PropTypes.bool, + + /* onFillRequest(backwards): a callback which is called on scroll when + * the user nears the start (backwards = true) or end (backwards = + * false) of the list. + * + * This should return a promise; no more calls will be made until the + * promise completes. + * + * The promise should resolve to true if there is more data to be + * retrieved in this direction (in which case onFillRequest may be + * called again immediately), or false if there is no more data in this + * directon (at this time) - which will stop the pagination cycle until + * the user scrolls again. + */ + onFillRequest: React.PropTypes.func, + + /* onUnfillRequest(backwards): a callback which is called on scroll when + * there are children elements that are far out of view and could be removed + * without causing pagination to occur. + * + * This function should accept a boolean, which is true to indicate the back/top + * of the panel and false otherwise, and a scroll token, which refers to the + * first element to remove if removing from the front/bottom, and last element + * to remove if removing from the back/top. + */ + onUnfillRequest: React.PropTypes.func, + + /* onScroll: a callback which is called whenever any scroll happens. + */ + onScroll: React.PropTypes.func, + + /* onResize: a callback which is called whenever the Gemini scroll + * panel is resized + */ + onResize: React.PropTypes.func, + + /* className: classnames to add to the top-level div + */ + className: React.PropTypes.string, + + /* style: styles to add to the top-level div + */ + style: React.PropTypes.object, + }, + + getDefaultProps: function() { + return { + stickyBottom: true, + startAtBottom: true, + onFillRequest: function(backwards) { return Promise.resolve(false); }, + onUnfillRequest: function(backwards, scrollToken) {}, + onScroll: function() {}, + }; + }, + + componentWillMount: function() { this._pendingFillRequests = {b: null, f: null}; this.resetScrollState(); - } + }, - componentDidMount() { + componentDidMount: function() { this.checkFillState(); - } + }, - componentDidUpdate() { + componentDidUpdate: function() { // after adding event tiles, we may need to tweak the scroll (either to // keep at the bottom of the timeline, or to maintain the view after // adding events to the top). // // This will also re-check the fill state, in case the paginate was inadequate this.checkScroll(); - } + }, - componentWillUnmount() { + componentWillUnmount: function() { // set a boolean to say we've been unmounted, which any pending // promises can use to throw away their results. // // (We could use isMounted(), but facebook have deprecated that.) this.unmounted = true; - } + }, - onScroll(ev) { + onScroll: function(ev) { var sn = this._getScrollNode(); debuglog("Scroll event: offset now:", sn.scrollTop, "_lastSetScroll:", this._lastSetScroll); - // Set the node and notify subscribers of the StickyContainer - // By extending StickyContainer, we can set the scroll node to be that of the - // ScrolPanel to allow any `` children to be sticky, namely DateSeparators. - this.node = sn; - // Update subscribers - arbitrarily nested `` children - this.notifySubscribers(ev); - // Sometimes we see attempts to write to scrollTop essentially being // ignored. (Or rather, it is successfully written, but on the next // scroll event, it's been reset again). @@ -159,27 +217,27 @@ export default class ScrollPanel extends StickyContainer { this.props.onScroll(ev); this.checkFillState(); - } + }, - onResize() { + onResize: function() { this.props.onResize(); this.checkScroll(); this.refs.geminiPanel.forceUpdate(); - } + }, // after an update to the contents of the panel, check that the scroll is // where it ought to be, and set off pagination requests if necessary. - checkScroll() { + checkScroll: function() { this._restoreSavedScrollState(); this.checkFillState(); - } + }, // return true if the content is fully scrolled down right now; else false. // // note that this is independent of the 'stuckAtBottom' state - it is simply // about whether the the content is scrolled down right now, irrespective of // whether it will stay that way when the children update. - isAtBottom() { + isAtBottom: function() { var sn = this._getScrollNode(); // there seems to be some bug with flexbox/gemini/chrome/richvdh's @@ -189,7 +247,7 @@ export default class ScrollPanel extends StickyContainer { // that we're at the bottom when we're still a few pixels off. return sn.scrollHeight - Math.ceil(sn.scrollTop) <= sn.clientHeight + 3; - } + }, // returns the vertical height in the given direction that can be removed from // the content box (which has a height of scrollHeight, see checkFillState) without @@ -222,17 +280,17 @@ export default class ScrollPanel extends StickyContainer { // |#########| - | // |#########| | // `---------' - - _getExcessHeight(backwards) { + _getExcessHeight: function(backwards) { var sn = this._getScrollNode(); if (backwards) { return sn.scrollTop - sn.clientHeight - UNPAGINATION_PADDING; } else { return sn.scrollHeight - (sn.scrollTop + 2*sn.clientHeight) - UNPAGINATION_PADDING; } - } + }, // check the scroll state and send out backfill requests if necessary. - checkFillState() { + checkFillState: function() { if (this.unmounted) { return; } @@ -271,10 +329,10 @@ export default class ScrollPanel extends StickyContainer { // need to forward-fill this._maybeFill(false); } - } + }, // check if unfilling is possible and send an unfill request if necessary - _checkUnfillState(backwards) { + _checkUnfillState: function(backwards) { let excessHeight = this._getExcessHeight(backwards); if (excessHeight <= 0) { return; @@ -315,10 +373,10 @@ export default class ScrollPanel extends StickyContainer { this.props.onUnfillRequest(backwards, markerScrollToken); }, UNFILL_REQUEST_DEBOUNCE_MS); } - } + }, // check if there is already a pending fill request. If not, set one off. - _maybeFill(backwards) { + _maybeFill: function(backwards) { var dir = backwards ? 'b' : 'f'; if (this._pendingFillRequests[dir]) { debuglog("ScrollPanel: Already a "+dir+" fill in progress - not starting another"); @@ -350,7 +408,7 @@ export default class ScrollPanel extends StickyContainer { this.checkFillState(); } }).done(); - } + }, /* get the current scroll state. This returns an object with the following * properties: @@ -366,9 +424,9 @@ export default class ScrollPanel extends StickyContainer { * the number of pixels the bottom of the tracked child is above the * bottom of the scroll panel. */ - getScrollState() { + getScrollState: function() { return this.scrollState; - } + }, /* reset the saved scroll state. * @@ -382,46 +440,46 @@ export default class ScrollPanel extends StickyContainer { * no use if no children exist yet, or if you are about to replace the * child list.) */ - resetScrollState() { + resetScrollState: function() { this.scrollState = {stuckAtBottom: this.props.startAtBottom}; - } + }, /** * jump to the top of the content. */ - scrollToTop() { + scrollToTop: function() { this._setScrollTop(0); this._saveScrollState(); - } + }, /** * jump to the bottom of the content. */ - scrollToBottom() { + scrollToBottom: function() { // the easiest way to make sure that the scroll state is correctly // saved is to do the scroll, then save the updated state. (Calculating // it ourselves is hard, and we can't rely on an onScroll callback // happening, since there may be no user-visible change here). this._setScrollTop(Number.MAX_VALUE); this._saveScrollState(); - } + }, /** * Page up/down. * * mult: -1 to page up, +1 to page down */ - scrollRelative(mult) { + scrollRelative: function(mult) { var scrollNode = this._getScrollNode(); var delta = mult * scrollNode.clientHeight * 0.5; this._setScrollTop(scrollNode.scrollTop + delta); this._saveScrollState(); - } + }, /** * Scroll up/down in response to a scroll key */ - handleScrollKey(ev) { + handleScrollKey: function(ev) { switch (ev.keyCode) { case KeyCode.PAGE_UP: if (!ev.ctrlKey && !ev.shiftKey && !ev.altKey && !ev.metaKey) { @@ -447,7 +505,7 @@ export default class ScrollPanel extends StickyContainer { } break; } - } + }, /* Scroll the panel to bring the DOM node with the scroll token * `scrollToken` into view. @@ -460,7 +518,7 @@ export default class ScrollPanel extends StickyContainer { * node (specifically, the bottom of it) will be positioned. If omitted, it * defaults to 0. */ - scrollToToken(scrollToken, pixelOffset, offsetBase) { + scrollToToken: function(scrollToken, pixelOffset, offsetBase) { pixelOffset = pixelOffset || 0; offsetBase = offsetBase || 0; @@ -482,11 +540,11 @@ export default class ScrollPanel extends StickyContainer { // ... then make it so. this._restoreSavedScrollState(); - } + }, // set the scrollTop attribute appropriately to position the given child at the // given offset in the window. A helper for _restoreSavedScrollState. - _scrollToToken(scrollToken, pixelOffset) { + _scrollToToken: function(scrollToken, pixelOffset) { /* find the dom node with the right scrolltoken */ var node; var messages = this.refs.itemlist.children; @@ -518,9 +576,9 @@ export default class ScrollPanel extends StickyContainer { this._setScrollTop(scrollNode.scrollTop + scrollDelta); } - } + }, - _saveScrollState() { + _saveScrollState: function() { if (this.props.stickyBottom && this.isAtBottom()) { this.scrollState = { stuckAtBottom: true }; debuglog("ScrollPanel: Saved scroll state", this.scrollState); @@ -558,9 +616,9 @@ export default class ScrollPanel extends StickyContainer { } else { debuglog("ScrollPanel: unable to save scroll state: found no children in the viewport"); } - } + }, - _restoreSavedScrollState() { + _restoreSavedScrollState: function() { var scrollState = this.scrollState; var scrollNode = this._getScrollNode(); @@ -570,9 +628,9 @@ export default class ScrollPanel extends StickyContainer { this._scrollToToken(scrollState.trackedScrollToken, scrollState.pixelOffset); } - } + }, - _setScrollTop(scrollTop) { + _setScrollTop: function(scrollTop) { var scrollNode = this._getScrollNode(); var prevScroll = scrollNode.scrollTop; @@ -594,12 +652,12 @@ export default class ScrollPanel extends StickyContainer { debuglog("ScrollPanel: set scrollTop:", scrollNode.scrollTop, "requested:", scrollTop, "_lastSetScroll:", this._lastSetScroll); - } + }, /* get the DOM node which has the scrollTop property we care about for our * message panel. */ - _getScrollNode() { + _getScrollNode: function() { if (this.unmounted) { // this shouldn't happen, but when it does, turn the NPE into // something more meaningful. @@ -607,91 +665,21 @@ export default class ScrollPanel extends StickyContainer { } return this.refs.geminiPanel.scrollbar.getViewElement(); - } + }, - render() { + render: function() { // TODO: the classnames on the div and ol could do with being updated to // reflect the fact that we don't necessarily contain a list of messages. // it's not obvious why we have a separate div and ol anyway. - return ( - -
-
    - {this.props.children} -
-
-
- ); - } -} - -ScrollPanel.propTypes = { - /* stickyBottom: if set to true, then once the user hits the bottom of - * the list, any new children added to the list will cause the list to - * scroll down to show the new element, rather than preserving the - * existing view. - */ - stickyBottom: React.PropTypes.bool, - - /* startAtBottom: if set to true, the view is assumed to start - * scrolled to the bottom. - * XXX: It's likley this is unecessary and can be derived from - * stickyBottom, but I'm adding an extra parameter to ensure - * behaviour stays the same for other uses of ScrollPanel. - * If so, let's remove this parameter down the line. - */ - startAtBottom: React.PropTypes.bool, - - /* onFillRequest(backwards): a callback which is called on scroll when - * the user nears the start (backwards = true) or end (backwards = - * false) of the list. - * - * This should return a promise; no more calls will be made until the - * promise completes. - * - * The promise should resolve to true if there is more data to be - * retrieved in this direction (in which case onFillRequest may be - * called again immediately), or false if there is no more data in this - * directon (at this time) - which will stop the pagination cycle until - * the user scrolls again. - */ - onFillRequest: React.PropTypes.func, - - /* onUnfillRequest(backwards): a callback which is called on scroll when - * there are children elements that are far out of view and could be removed - * without causing pagination to occur. - * - * This function should accept a boolean, which is true to indicate the back/top - * of the panel and false otherwise, and a scroll token, which refers to the - * first element to remove if removing from the front/bottom, and last element - * to remove if removing from the back/top. - */ - onUnfillRequest: React.PropTypes.func, - - /* onScroll: a callback which is called whenever any scroll happens. - */ - onScroll: React.PropTypes.func, - - /* onResize: a callback which is called whenever the Gemini scroll - * panel is resized - */ - onResize: React.PropTypes.func, - - /* className: classnames to add to the top-level div - */ - className: React.PropTypes.string, - - /* style: styles to add to the top-level div - */ - style: React.PropTypes.object, -}; - -ScrollPanel.defaultProps = { - stickyBottom: true, - startAtBottom: true, - onFillRequest: function(backwards) { return Promise.resolve(false); }, - onUnfillRequest: function(backwards, scrollToken) {}, - onScroll: function() {}, -}; + return ( +
+
    + {this.props.children} +
+
+
+ ); + }, +}); diff --git a/src/components/structures/TimelinePanel.js b/src/components/structures/TimelinePanel.js index ebd9784b6f..862c3f46d0 100644 --- a/src/components/structures/TimelinePanel.js +++ b/src/components/structures/TimelinePanel.js @@ -1147,6 +1147,7 @@ var TimelinePanel = React.createClass({ highlightedEventId={ this.props.highlightedEventId } readMarkerEventId={ this.state.readMarkerEventId } readMarkerVisible={ this.state.readMarkerVisible } + suppressFirstDateSeparator={ this.state.canBackPaginate } showUrlPreview={ this.props.showUrlPreview } showReadReceipts={ this.props.showReadReceipts } ourUserId={ MatrixClientPeg.get().credentials.userId } diff --git a/test/components/structures/TimelinePanel-test.js b/test/components/structures/TimelinePanel-test.js index c13d149ed0..98ec65b8e8 100644 --- a/test/components/structures/TimelinePanel-test.js +++ b/test/components/structures/TimelinePanel-test.js @@ -234,6 +234,7 @@ describe('TimelinePanel', function() { // 5 times, and we should have given up paginating expect(client.paginateEventTimeline.callCount).toEqual(5); expect(messagePanel.props.backPaginating).toBe(false); + expect(messagePanel.props.suppressFirstDateSeparator).toBe(false); // now, if we update the events, there shouldn't be any // more requests. @@ -338,6 +339,7 @@ describe('TimelinePanel', function() { awaitScroll().then(() => { // we should now have loaded the first few events expect(messagePanel.props.backPaginating).toBe(false); + expect(messagePanel.props.suppressFirstDateSeparator).toBe(true); // back-paginate until we hit the start return backPaginate(); @@ -345,6 +347,7 @@ describe('TimelinePanel', function() { // hopefully, we got to the start of the timeline expect(messagePanel.props.backPaginating).toBe(false); + expect(messagePanel.props.suppressFirstDateSeparator).toBe(false); var events = scryEventTiles(panel); expect(events[0].props.mxEvent).toBe(timeline.getEvents()[0]); From 720715e60ec01ce74110fe0aff300c836e2dd4fb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Kevin=20N=C3=A9meth?= Date: Wed, 6 Sep 2017 16:46:33 +0000 Subject: [PATCH 27/83] Translated using Weblate (Hungarian) Currently translated at 100.0% (972 of 972 strings) Translation: Riot Web/matrix-react-sdk Translate-URL: https://translate.riot.im/projects/riot-web/matrix-react-sdk/hu/ --- src/i18n/strings/hu.json | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/i18n/strings/hu.json b/src/i18n/strings/hu.json index e935f63cff..a567eb4ca9 100644 --- a/src/i18n/strings/hu.json +++ b/src/i18n/strings/hu.json @@ -953,7 +953,7 @@ "You are a member of these groups:": "Ezeknek a csoportoknak vagy a tagja:", "Create a group to represent your community! Define a set of rooms and your own custom homepage to mark out your space in the Matrix universe.": "Hozz létre csoportot a közösség meghatározásához! Jelölj ki szobákat és saját kezdőoldalt amivel meghatározhatod a territóriumodat a Matrix univerzumában.", "Join an existing group": "Csatlakozz meglévő csoporthoz", - "To join an exisitng group you'll have to know its group identifier; this will look something like +example:matrix.org.": "Ahhoz, hogy meglévő csoporthoz csatlakozhass tudnod kell a csoport azonosítóját ami valahogy így nézhet ki: +példa:matrix.org.", + "To join an exisitng group you'll have to know its group identifier; this will look something like +example:matrix.org.": "Ahhoz, hogy meglévő csoporthoz csatlakozhass tudnod kell a csoport azonosítóját ami valahogy így nézhet ki: +example:matrix.org.", "Featured Rooms:": "Kiemelt szobák:", "Error whilst fetching joined groups": "Hiba a csatlakozott csoportok betöltésénél", "Featured Users:": "Kiemelt felhasználók:", @@ -970,5 +970,6 @@ "The maximum permitted number of widgets have already been added to this room.": "A maximálisan megengedett számú kisalkalmazás már hozzá van adva a szobához.", "%(widgetName)s widget added by %(senderName)s": "%(widgetName)s kisalkalmazást %(senderName)s hozzáadta", "%(widgetName)s widget removed by %(senderName)s": "%(widgetName)s kisalkalmazást %(senderName)s eltávolította", - "Robot check is currently unavailable on desktop - please use a web browser": "Robot ellenőrzés az asztali verzióban nem érhető el - használd a web böngészőt" + "Robot check is currently unavailable on desktop - please use a web browser": "Robot ellenőrzés az asztali verzióban nem érhető el - használd a web böngészőt", + "%(widgetName)s widget modified by %(senderName)s": "%(widgetName) kisalkalmazást %(senderName) módosította" } From d71f15adf4d65faf0ba06b9ec72cccdde2ed785c Mon Sep 17 00:00:00 2001 From: David Baker Date: Wed, 6 Sep 2017 22:51:10 +0100 Subject: [PATCH 28/83] Remove unused scrollStateMap from LoggedinView --- src/components/structures/LoggedInView.js | 9 --------- 1 file changed, 9 deletions(-) diff --git a/src/components/structures/LoggedInView.js b/src/components/structures/LoggedInView.js index 0790a5766e..147707b6fc 100644 --- a/src/components/structures/LoggedInView.js +++ b/src/components/structures/LoggedInView.js @@ -81,10 +81,6 @@ export default React.createClass({ // stash the MatrixClient in case we log out before we are unmounted this._matrixClient = this.props.matrixClient; - // _scrollStateMap is a map from room id to the scroll state returned by - // RoomView.getScrollState() - this._scrollStateMap = {}; - CallMediaHandler.loadDevices(); document.addEventListener('keydown', this._onKeyDown); @@ -116,10 +112,6 @@ export default React.createClass({ return Boolean(MatrixClientPeg.get()); }, - getScrollStateForRoom: function(roomId) { - return this._scrollStateMap[roomId]; - }, - canResetTimelineInRoom: function(roomId) { if (!this.refs.roomView) { return true; @@ -248,7 +240,6 @@ export default React.createClass({ opacity={this.props.middleOpacity} collapsedRhs={this.props.collapse_rhs} ConferenceHandler={this.props.ConferenceHandler} - scrollStateMap={this._scrollStateMap} />; if (!this.props.collapse_rhs) right_panel = ; break; From 8e5c8b4fc219ef9b44db671526b8e9326b5cfe8b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jerzy=20Ko=C5=82osowski?= Date: Tue, 5 Sep 2017 20:01:53 +0000 Subject: [PATCH 29/83] Translated using Weblate (Polish) Currently translated at 64.8% (630 of 972 strings) Translation: Riot Web/matrix-react-sdk Translate-URL: https://translate.riot.im/projects/riot-web/matrix-react-sdk/pl/ --- src/i18n/strings/pl.json | 75 ++++++++++++++++++++++++++++++++++++++-- 1 file changed, 73 insertions(+), 2 deletions(-) diff --git a/src/i18n/strings/pl.json b/src/i18n/strings/pl.json index faa0efa8b1..9a7fff892e 100644 --- a/src/i18n/strings/pl.json +++ b/src/i18n/strings/pl.json @@ -460,7 +460,7 @@ "joined and left": "dołączył i wyszedł", "joined": "dołączył", "%(targetName)s joined the room.": "%(targetName)s dołączył do pokoju.", - "Joins room with given alias": "", + "Joins room with given alias": "Dołącz do pokoju z podanym aliasem", "Jump to first unread message.": "Przeskocz do pierwszej nieprzeczytanej wiadomości.", "%(senderName)s kicked %(targetName)s.": "%(senderName)s wyrzucił %(targetName)s.", "Kick": "Wyrzuć", @@ -559,5 +559,76 @@ "Results from DuckDuckGo": "Wyniki z DuckDuckGo", "Return to app": "Wróć do aplikacji", "Return to login screen": "Wróć do ekranu logowania", - "Riot does not have permission to send you notifications - please check your browser settings": "Riot nie ma uprawnień, by wysyłać ci powiadomienia - sprawdź ustawienia swojej przeglądarki" + "Riot does not have permission to send you notifications - please check your browser settings": "Riot nie ma uprawnień, by wysyłać ci powiadomienia - sprawdź ustawienia swojej przeglądarki", + "Hide join/leave messages (invites/kicks/bans unaffected)": "Ukryj wiadomości o dołączeniu/opuszczeniu (nie obejmuje zaproszeń/wyrzuceń/banów)", + "Hide read receipts": "Ukryj potwierdzenia odczytu", + "Historical": "Historyczne", + "Resetting password will currently reset any end-to-end encryption keys on all devices, making encrypted chat history unreadable, unless you first export your room keys and re-import them afterwards. In future this will be improved.": "Resetowanie hasła zresetuje klucze szyfrowania końcówka-do-końcówki na wszystkich urządzeniach, co spowoduje, że nie będzie się dało odczytać zaszyfrowanej historii czatu, chyba że najpierw wyeksportujesz swoje klucze i ponownie je zaimportujesz. W przyszłości będzie to poprawione.", + "Riot was not given permission to send notifications - please try again": "Riot nie otrzymał uprawnień do wysyłania powiadomień - proszę spróbuj ponownie", + "riot-web version:": "wersja riot-web:", + "Room %(roomId)s not visible": "Pokój %(roomId)s nie jest widoczny", + "Room Colour": "Kolor pokoju", + "Room contains unknown devices": "Pokój zawiera nieznane urządzenia", + "Room name (optional)": "Nazwa pokoju (opcjonalna)", + "%(roomName)s does not exist.": "%(roomName)s nie istnieje.", + "%(roomName)s is not accessible at this time.": "%(roomName)s nie jest dostępny w tym momencie.", + "Rooms": "Pokoje", + "Save": "Zapisz", + "Scroll to bottom of page": "Przewiń do końca strony", + "Scroll to unread messages": "Przewiń do nieprzeczytanych wiadomości", + "Search failed": "Wyszukiwanie nie powiodło się", + "Searches DuckDuckGo for results": "Przeszukaj DuckDuckGo dla wyników", + "Searching known users": "Przeszukaj znanych użytkowników", + "Seen by %(userName)s at %(dateTime)s": "Widziane przez %(userName)s o %(dateTime)s", + "Send a message (unencrypted)": "Wyślij wiadomość (nieszyfrowaną)", + "Send an encrypted message": "Wyślij szyfrowaną wiadomość", + "Send anyway": "Wyślij mimo to", + "Sender device information": "Informacja o urządzeniu nadawcy", + "Send Invites": "Wyślij zaproszenie", + "Send Reset Email": "Wyślij e-mail resetujący hasło", + "sent an image": "wysłano obraz", + "%(senderDisplayName)s sent an image.": "%(senderDisplayName)s wysłał obraz.", + "%(senderName)s sent an invitation to %(targetDisplayName)s to join the room.": "%(senderName)s wysłał zaproszenie do %(targetDisplayName)s do dołączenia do pokoju.", + "sent a video": "wysłał wideo", + "Server error": "Błąd serwera", + "Server may be unavailable or overloaded": "Serwer może być niedostępny lub przeciążony", + "Server may be unavailable, overloaded, or search timed out :(": "Serwer może być niedostępny, przeciążony, lub upłynął czas wyszukiwania :(", + "Server may be unavailable, overloaded, or the file too big": "Serwer może być niedostępny, przeciążony, lub plik jest za duży", + "Server may be unavailable, overloaded, or you hit a bug.": "Serwer może być niedostępny, przeciążony, lub trafiłeś na błąd.", + "Server unavailable, overloaded, or something else went wrong.": "Serwer może być niedostępny, przeciążony, lub coś innego poszło źle.", + "Session ID": "Identyfikator sesji", + "%(senderName)s set a profile picture.": "%(senderName)s ustawił zdjęcie profilowe.", + "%(senderName)s set their display name to %(displayName)s.": "%(senderName)s ustawił swoją nazwę na %(displayName)s.", + "Set": "Ustaw", + "Sets the room topic": "Ustaw temat pokoju", + "Show Apps": "Pokaż aplikacje", + "Show panel": "Pokaż panel", + "Show Text Formatting Toolbar": "Pokaż pasek narzędzi formatowania tekstu", + "Show timestamps in 12 hour format (e.g. 2:30pm)": "Pokaż czas w formacie 12-sto godzinnym (n.p. 2:30pm)", + "Signed Out": "Wylogowano", + "Sign in": "Zaloguj", + "Sign out": "Wyloguj", + "since the point in time of selecting this option": "od momentu zaznaczenia tej opcji", + "since they joined": "od momentu dołączenia", + "since they were invited": "od momentu zaproszenia", + "Some of your messages have not been sent.": "Niektóre z twoich wiadomości nie zostały wysłane.", + "Someone": "Ktoś", + "Sorry, this homeserver is using a login which is not recognised ": "Przepraszamy, ten serwer używa loginu który nie jest rozpoznawany ", + "Start a chat": "Rozpocznij rozmowę", + "Start authentication": "Rozpocznij uwierzytelnienie", + "Start Chat": "Rozpocznij rozmowę", + "Submit": "Wyślij", + "Success": "Sukces", + "tag as %(tagName)s": "oznaczył jako %(tagName)s", + "tag direct chat": "oznaczył bezpośrednią rozmowę", + "Tagged as: ": "Oznaczone jako: ", + "The default role for new room members is": "Domyślną rolą dla nowych członków pokoju jest", + "The main address for this room is": "Głównym adresem dla tego pokoju jest", + "The maximum permitted number of widgets have already been added to this room.": "Do tego pokoju dodano już maksymalną dozwoloną liczbę widżetów.", + "The phone number entered looks invalid": "Wprowadzony numer telefonu wygląda na niepoprawny", + "The signing key you provided matches the signing key you received from %(userId)s's device %(deviceId)s. Device marked as verified.": "Podany klucz podpisu odpowiada kluczowi podpisania otrzymanemu z urządzenia %(userId)s %(deviceId)s. Urządzenie oznaczone jako zweryfikowane.", + "This action cannot be performed by a guest user. Please register to be able to do this.": "Ta czynność nie może być wykonana przez gościa. Proszę się zarejestrować, aby móc ją wykonać.", + "This email address is already in use": "Podany adres e-mail jest już w użyciu", + "This email address was not found": "Podany adres e-mail nie został znaleziony", + "%(actionVerb)s this person?": "%(actionVerb)s tą osobę?" } From e1319d38382e0b1386a47156abb1728fb39d6498 Mon Sep 17 00:00:00 2001 From: Ramon Vilar Date: Thu, 7 Sep 2017 12:37:55 +0000 Subject: [PATCH 30/83] Added translation using Weblate (Catalan) --- src/i18n/strings/ca.json | 1 + 1 file changed, 1 insertion(+) create mode 100644 src/i18n/strings/ca.json diff --git a/src/i18n/strings/ca.json b/src/i18n/strings/ca.json new file mode 100644 index 0000000000..9e26dfeeb6 --- /dev/null +++ b/src/i18n/strings/ca.json @@ -0,0 +1 @@ +{} \ No newline at end of file From 408b8c18ea89d0c2fa714f4e34ec82e455273d42 Mon Sep 17 00:00:00 2001 From: David Baker Date: Thu, 7 Sep 2017 17:08:36 +0100 Subject: [PATCH 31/83] Introduce a RoomScrollStateStore to keep the place we're scrolled to in rooms. This mainly eleimates the extra, superfluous onRoomViewStoreUpdate callback that happened when the previous room saved back its scroll state. Moving the scroll state to a separate store means we can have this not emit events because nothing needs to know when the scroll state changes. --- src/components/structures/RoomView.js | 42 ++++++++++++++------------- src/stores/RoomScrollStateStore.js | 37 +++++++++++++++++++++++ src/stores/RoomViewStore.js | 30 ------------------- 3 files changed, 59 insertions(+), 50 deletions(-) create mode 100644 src/stores/RoomScrollStateStore.js diff --git a/src/components/structures/RoomView.js b/src/components/structures/RoomView.js index 87bed1ed08..02a333ee82 100644 --- a/src/components/structures/RoomView.js +++ b/src/components/structures/RoomView.js @@ -47,6 +47,7 @@ import KeyCode from '../../KeyCode'; import UserProvider from '../../autocomplete/UserProvider'; import RoomViewStore from '../../stores/RoomViewStore'; +import RoomScrollStateStore from '../../stores/RoomScrollStateStore'; let DEBUG = false; let debuglog = function() {}; @@ -163,7 +164,6 @@ module.exports = React.createClass({ roomLoadError: RoomViewStore.getRoomLoadError(), joining: RoomViewStore.isJoining(), initialEventId: RoomViewStore.getInitialEventId(), - initialEventPixelOffset: RoomViewStore.getInitialEventPixelOffset(), isInitialEventHighlighted: RoomViewStore.isInitialEventHighlighted(), forwardingEvent: RoomViewStore.getForwardingEvent(), shouldPeek: RoomViewStore.shouldPeek(), @@ -191,18 +191,32 @@ module.exports = React.createClass({ newState.room = MatrixClientPeg.get().getRoom(newState.roomId); } + if (this.state.roomId !== newState.roomId) { + // Store the scroll state for the previous room so that we can return to this + // position when viewing this room in future. + if (this.state.roomId) { + RoomScrollStateStore.setScrollState(this.state.roomId, this._getScrollState()); + } + + // ...and get the scroll state for the new room + + // If an event ID wasn't specified, default to the one saved for this room + // via update_scroll_state. Assume initialEventPixelOffset should be set. + if (!newState.initialEventId) { + const roomScrollState = RoomScrollStateStore.getScrollState(newState.roomId); + if (roomScrollState) { + newState.initialEventId = roomScrollState.focussedEvent; + newState.initialEventPixelOffset = roomScrollState.pixelOffset; + } + } + } + // Clear the search results when clicking a search result (which changes the // currently scrolled to event, this.state.initialEventId). if (this.state.initialEventId !== newState.initialEventId) { newState.searchResults = null; } - // Store the scroll state for the previous room so that we can return to this - // position when viewing this room in future. - if (this.state.roomId !== newState.roomId) { - this._updateScrollMap(this.state.roomId); - } - this.setState(newState, () => { // At this point, this.state.roomId could be null (e.g. the alias might not // have been resolved yet) so anything called here must handle this case. @@ -340,7 +354,7 @@ module.exports = React.createClass({ this.unmounted = true; // update the scroll map before we get unmounted - this._updateScrollMap(this.state.roomId); + RoomScrollStateStore.setScrollState(this.state.roomId, this._getScrollState()); if (this.refs.roomView) { // disconnect the D&D event listeners from the room view. This @@ -617,18 +631,6 @@ module.exports = React.createClass({ }); }, - _updateScrollMap(roomId) { - // No point updating scroll state if the room ID hasn't been resolved yet - if (!roomId) { - return; - } - dis.dispatch({ - action: 'update_scroll_state', - room_id: roomId, - scroll_state: this._getScrollState(), - }); - }, - onRoom: function(room) { if (!room || room.roomId !== this.state.roomId) { return; diff --git a/src/stores/RoomScrollStateStore.js b/src/stores/RoomScrollStateStore.js new file mode 100644 index 0000000000..a1d46a29b8 --- /dev/null +++ b/src/stores/RoomScrollStateStore.js @@ -0,0 +1,37 @@ +/* +Copyright 2017 New Vector Ltd + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +/** + * Stores where the user has scrolled to in each room + */ +class RoomScrollStateStore { + constructor() { + this._scrollStateMap = {}; + } + + getScrollState(roomId) { + return this._scrollStateMap[roomId]; + } + + setScrollState(roomId, scrollState) { + this._scrollStateMap[roomId] = scrollState; + } +} + +if (global.mx_RoomScrollStateStore === undefined) { + global.mx_RoomScrollStateStore = new RoomScrollStateStore(); +} +export default global.mx_RoomScrollStateStore; diff --git a/src/stores/RoomViewStore.js b/src/stores/RoomViewStore.js index bd9d3ea0fa..bd1fff600d 100644 --- a/src/stores/RoomViewStore.js +++ b/src/stores/RoomViewStore.js @@ -30,8 +30,6 @@ const INITIAL_STATE = { // The event to scroll to when the room is first viewed initialEventId: null, - // The offset to display the initial event at (see scrollStateMap) - initialEventPixelOffset: null, // Whether to highlight the initial event isInitialEventHighlighted: false, @@ -41,20 +39,6 @@ const INITIAL_STATE = { roomLoading: false, // Any error that has occurred during loading roomLoadError: null, - // A map from room id to scroll state. - // - // If there is no special scroll state (ie, we are following the live - // timeline), the scroll state is null. Otherwise, it is an object with - // the following properties: - // - // focussedEvent: the ID of the 'focussed' event. Typically this is - // the last event fully visible in the viewport, though if we - // have done an explicit scroll to an explicit event, it will be - // that event. - // - // pixelOffset: the number of pixels the window is scrolled down - // from the focussedEvent. - scrollStateMap: {}, forwardingEvent: null, }; @@ -115,9 +99,6 @@ class RoomViewStore extends Store { case 'on_logged_out': this.reset(); break; - case 'update_scroll_state': - this._updateScrollState(payload); - break; case 'forward_event': this._setState({ forwardingEvent: payload.event, @@ -132,7 +113,6 @@ class RoomViewStore extends Store { roomId: payload.room_id, roomAlias: payload.room_alias, initialEventId: payload.event_id, - initialEventPixelOffset: undefined, isInitialEventHighlighted: payload.highlighted, forwardingEvent: null, roomLoading: false, @@ -145,16 +125,6 @@ class RoomViewStore extends Store { newState.joining = false; } - // If an event ID wasn't specified, default to the one saved for this room - // via update_scroll_state. Assume initialEventPixelOffset should be set. - if (!newState.initialEventId) { - const roomScrollState = this._state.scrollStateMap[payload.room_id]; - if (roomScrollState) { - newState.initialEventId = roomScrollState.focussedEvent; - newState.initialEventPixelOffset = roomScrollState.pixelOffset; - } - } - if (this._state.forwardingEvent) { dis.dispatch({ action: 'send_event', From 7f44ac740346b06934850834214e6506b4a4e62a Mon Sep 17 00:00:00 2001 From: David Baker Date: Thu, 7 Sep 2017 17:15:19 +0100 Subject: [PATCH 32/83] Remove now unused stuff from RoomViewStore --- src/stores/RoomViewStore.js | 14 -------------- 1 file changed, 14 deletions(-) diff --git a/src/stores/RoomViewStore.js b/src/stores/RoomViewStore.js index bd1fff600d..17fcc97160 100644 --- a/src/stores/RoomViewStore.js +++ b/src/stores/RoomViewStore.js @@ -211,15 +211,6 @@ class RoomViewStore extends Store { }); } - _updateScrollState(payload) { - // Clobber existing scroll state for the given room ID - const newScrollStateMap = this._state.scrollStateMap; - newScrollStateMap[payload.room_id] = payload.scroll_state; - this._setState({ - scrollStateMap: newScrollStateMap, - }); - } - reset() { this._state = Object.assign({}, INITIAL_STATE); } @@ -234,11 +225,6 @@ class RoomViewStore extends Store { return this._state.initialEventId; } - // The offset to display the initial event at (see scrollStateMap) - getInitialEventPixelOffset() { - return this._state.initialEventPixelOffset; - } - // Whether to highlight the initial event isInitialEventHighlighted() { return this._state.isInitialEventHighlighted; From 82d1afcc47e7515ba093c5be56ef68f357411540 Mon Sep 17 00:00:00 2001 From: David Baker Date: Thu, 7 Sep 2017 17:16:32 +0100 Subject: [PATCH 33/83] Correct comment --- src/components/structures/RoomView.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/components/structures/RoomView.js b/src/components/structures/RoomView.js index 02a333ee82..69760499a1 100644 --- a/src/components/structures/RoomView.js +++ b/src/components/structures/RoomView.js @@ -201,7 +201,7 @@ module.exports = React.createClass({ // ...and get the scroll state for the new room // If an event ID wasn't specified, default to the one saved for this room - // via update_scroll_state. Assume initialEventPixelOffset should be set. + // in the scroll state store. Assume initialEventPixelOffset should be set. if (!newState.initialEventId) { const roomScrollState = RoomScrollStateStore.getScrollState(newState.roomId); if (roomScrollState) { From 3df379cb499ede1bff9383bad62b1ef0cbba0622 Mon Sep 17 00:00:00 2001 From: Michael Telatynski <7t3chguy@gmail.com> Date: Thu, 7 Sep 2017 18:54:41 +0100 Subject: [PATCH 34/83] fix radio for theme selection Signed-off-by: Michael Telatynski <7t3chguy@gmail.com> --- src/components/structures/UserSettings.js | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/components/structures/UserSettings.js b/src/components/structures/UserSettings.js index 3c139f77a6..e67991ac12 100644 --- a/src/components/structures/UserSettings.js +++ b/src/components/structures/UserSettings.js @@ -729,6 +729,7 @@ module.exports = React.createClass({ // to rebind the onChange each time we render const onChange = (e) => { if (e.target.checked) { + this._syncedSettings[setting.id] = setting.value; UserSettingsStore.setSyncedSetting(setting.id, setting.value); } dis.dispatch({ @@ -741,7 +742,7 @@ module.exports = React.createClass({ type="radio" name={ setting.id } value={ setting.value } - defaultChecked={ this._syncedSettings[setting.id] === setting.value } + checked={ this._syncedSettings[setting.id] === setting.value } onChange={ onChange } />