From cac5f20a2806214581c1846cdb395dcf3d5f2d15 Mon Sep 17 00:00:00 2001 From: Samantaz Fox Date: Mon, 22 Mar 2021 21:49:06 +0000 Subject: [PATCH 01/11] Move locales definition to i18n.cr --- src/invidious.cr | 30 ------------------------------ src/invidious/helpers/i18n.cr | 30 ++++++++++++++++++++++++++++++ 2 files changed, 30 insertions(+), 30 deletions(-) diff --git a/src/invidious.cr b/src/invidious.cr index 581e0782..ae20e13e 100644 --- a/src/invidious.cr +++ b/src/invidious.cr @@ -65,36 +65,6 @@ SOFTWARE = { "branch" => "#{CURRENT_BRANCH}", } -LOCALES = { - "ar" => load_locale("ar"), - "de" => load_locale("de"), - "el" => load_locale("el"), - "en-US" => load_locale("en-US"), - "eo" => load_locale("eo"), - "es" => load_locale("es"), - "fa" => load_locale("fa"), - "fi" => load_locale("fi"), - "fr" => load_locale("fr"), - "he" => load_locale("he"), - "hr" => load_locale("hr"), - "id" => load_locale("id"), - "is" => load_locale("is"), - "it" => load_locale("it"), - "ja" => load_locale("ja"), - "nb-NO" => load_locale("nb-NO"), - "nl" => load_locale("nl"), - "pl" => load_locale("pl"), - "pt-BR" => load_locale("pt-BR"), - "pt-PT" => load_locale("pt-PT"), - "ro" => load_locale("ro"), - "ru" => load_locale("ru"), - "sv" => load_locale("sv-SE"), - "tr" => load_locale("tr"), - "uk" => load_locale("uk"), - "zh-CN" => load_locale("zh-CN"), - "zh-TW" => load_locale("zh-TW"), -} - YT_POOL = YoutubeConnectionPool.new(YT_URL, capacity: CONFIG.pool_size, timeout: 2.0, use_quic: CONFIG.use_quic) # CLI diff --git a/src/invidious/helpers/i18n.cr b/src/invidious/helpers/i18n.cr index 0faa2e32..45a3f1ae 100644 --- a/src/invidious/helpers/i18n.cr +++ b/src/invidious/helpers/i18n.cr @@ -1,3 +1,33 @@ +LOCALES = { + "ar" => load_locale("ar"), + "de" => load_locale("de"), + "el" => load_locale("el"), + "en-US" => load_locale("en-US"), + "eo" => load_locale("eo"), + "es" => load_locale("es"), + "fa" => load_locale("fa"), + "fi" => load_locale("fi"), + "fr" => load_locale("fr"), + "he" => load_locale("he"), + "hr" => load_locale("hr"), + "id" => load_locale("id"), + "is" => load_locale("is"), + "it" => load_locale("it"), + "ja" => load_locale("ja"), + "nb-NO" => load_locale("nb-NO"), + "nl" => load_locale("nl"), + "pl" => load_locale("pl"), + "pt-BR" => load_locale("pt-BR"), + "pt-PT" => load_locale("pt-PT"), + "ro" => load_locale("ro"), + "ru" => load_locale("ru"), + "sv" => load_locale("sv-SE"), + "tr" => load_locale("tr"), + "uk" => load_locale("uk"), + "zh-CN" => load_locale("zh-CN"), + "zh-TW" => load_locale("zh-TW"), +} + def load_locale(name) return JSON.parse(File.read("locales/#{name}.json")).as_h end From d5d0cb6a0c179b0ea657572a464489dd40a3544d Mon Sep 17 00:00:00 2001 From: Samantaz Fox Date: Mon, 22 Mar 2021 23:57:32 +0000 Subject: [PATCH 02/11] Add spec (test case) for locale files consistency --- spec/locales_spec.cr | 31 +++++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) create mode 100644 spec/locales_spec.cr diff --git a/spec/locales_spec.cr b/spec/locales_spec.cr new file mode 100644 index 00000000..0bdfc13b --- /dev/null +++ b/spec/locales_spec.cr @@ -0,0 +1,31 @@ +require "spec" +require "json" +require "../src/invidious/helpers/i18n.cr" + +describe "Locales" do + + describe "#consistency" do + locales_list = LOCALES.keys.select! { |key| key != "en-US" } + + locales_list.each do |locale| + puts "\nChecking locale #{locale}" + failed = false + + # Use "en-US" as the reference + LOCALES["en-US"].each_key do |ref_key| + # Catch exception in order to give a hint on what caused + # the failure, and test one locale completely before failing + begin + LOCALES[locale].has_key?(ref_key).should be_true + rescue + failed = true + puts " Missing key in locale #{locale}: '#{ref_key}'" + end + end + + # Throw failed assertion exception in here + failed.should be_false + end + end + +end From e3544bf4bc138a4f449e3eb4a1a32f454fac9aa7 Mon Sep 17 00:00:00 2001 From: Samantaz Fox Date: Tue, 23 Mar 2021 04:03:10 +0100 Subject: [PATCH 03/11] Add missing fields to locales (part 1) Updated ar.json (Arabic) Updated de.json (German) Updated eo.json (Esperanto) Updated es.json (Spanish) Updated fr.json (French) Updated hr.json (Hungarian) Updated id.json (Indonesian) Updated is.json (Icelandic) --- locales/ar.json | 29 ++++++++++++++++++++++++++++- locales/de.json | 27 +++++++++++++++++++++++++++ locales/eo.json | 27 +++++++++++++++++++++++++++ locales/es.json | 27 +++++++++++++++++++++++++++ locales/fr.json | 27 +++++++++++++++++++++++++++ locales/hr.json | 27 +++++++++++++++++++++++++++ locales/id.json | 27 +++++++++++++++++++++++++++ locales/is.json | 27 +++++++++++++++++++++++++++ 8 files changed, 217 insertions(+), 1 deletion(-) diff --git a/locales/ar.json b/locales/ar.json index d184395e..b326fa80 100644 --- a/locales/ar.json +++ b/locales/ar.json @@ -333,5 +333,32 @@ "Videos": "الفيديوهات", "Playlists": "قوائم التشغيل", "Community": "المجتمع", + "relevance": "", + "rating": "", + "date": "", + "views": "", + "content_type": "", + "duration": "", + "features": "", + "sort": "", + "hour": "", + "today": "", + "week": "", + "month": "", + "year": "", + "video": "", + "channel": "", + "playlist": "", + "movie": "", + "show": "", + "hd": "", + "subtitles": "", + "creative_commons": "", + "3d": "", + "live": "", + "4k": "", + "location": "", + "hdr": "", + "filter": "", "Current version: ": "الإصدار الحالي: " -} \ No newline at end of file +} diff --git a/locales/de.json b/locales/de.json index 82c99128..eff559fb 100644 --- a/locales/de.json +++ b/locales/de.json @@ -333,5 +333,32 @@ "Videos": "Videos", "Playlists": "Wiedergabelisten", "Community": "Gemeinschaft", + "relevance": "", + "rating": "", + "date": "", + "views": "", + "content_type": "", + "duration": "", + "features": "", + "sort": "", + "hour": "", + "today": "", + "week": "", + "month": "", + "year": "", + "video": "", + "channel": "", + "playlist": "", + "movie": "", + "show": "", + "hd": "", + "subtitles": "", + "creative_commons": "", + "3d": "", + "live": "", + "4k": "", + "location": "", + "hdr": "", + "filter": "", "Current version: ": "Aktuelle Version: " } \ No newline at end of file diff --git a/locales/eo.json b/locales/eo.json index 1123b2df..de120b0e 100644 --- a/locales/eo.json +++ b/locales/eo.json @@ -333,5 +333,32 @@ "Videos": "Filmetoj", "Playlists": "Ludlistoj", "Community": "Komunumo", + "relevance": "", + "rating": "", + "date": "", + "views": "", + "content_type": "", + "duration": "", + "features": "", + "sort": "", + "hour": "", + "today": "", + "week": "", + "month": "", + "year": "", + "video": "", + "channel": "", + "playlist": "", + "movie": "", + "show": "", + "hd": "", + "subtitles": "", + "creative_commons": "", + "3d": "", + "live": "", + "4k": "", + "location": "", + "hdr": "", + "filter": "", "Current version: ": "Nuna versio: " } \ No newline at end of file diff --git a/locales/es.json b/locales/es.json index 5af3f9bd..e571865f 100644 --- a/locales/es.json +++ b/locales/es.json @@ -333,5 +333,32 @@ "Videos": "Vídeos", "Playlists": "Listas de reproducción", "Community": "Comunidad", + "relevance": "", + "rating": "", + "date": "", + "views": "", + "content_type": "", + "duration": "", + "features": "", + "sort": "", + "hour": "", + "today": "", + "week": "", + "month": "", + "year": "", + "video": "", + "channel": "", + "playlist": "", + "movie": "", + "show": "", + "hd": "", + "subtitles": "", + "creative_commons": "", + "3d": "", + "live": "", + "4k": "", + "location": "", + "hdr": "", + "filter": "", "Current version: ": "Versión actual: " } \ No newline at end of file diff --git a/locales/fr.json b/locales/fr.json index c79d30d7..639e27b2 100644 --- a/locales/fr.json +++ b/locales/fr.json @@ -333,5 +333,32 @@ "Videos": "Vidéos", "Playlists": "Listes de lecture", "Community": "Communauté", + "relevance": "", + "rating": "", + "date": "", + "views": "", + "content_type": "", + "duration": "", + "features": "", + "sort": "", + "hour": "", + "today": "", + "week": "", + "month": "", + "year": "", + "video": "", + "channel": "", + "playlist": "", + "movie": "", + "show": "", + "hd": "", + "subtitles": "", + "creative_commons": "", + "3d": "", + "live": "", + "4k": "", + "location": "", + "hdr": "", + "filter": "", "Current version: ": "Version actuelle : " } \ No newline at end of file diff --git a/locales/hr.json b/locales/hr.json index ec633795..28177b06 100644 --- a/locales/hr.json +++ b/locales/hr.json @@ -384,5 +384,32 @@ "Videos": "Videa", "Playlists": "Playliste", "Community": "Zajednica", + "relevance": "", + "rating": "", + "date": "", + "views": "", + "content_type": "", + "duration": "", + "features": "", + "sort": "", + "hour": "", + "today": "", + "week": "", + "month": "", + "year": "", + "video": "", + "channel": "", + "playlist": "", + "movie": "", + "show": "", + "hd": "", + "subtitles": "", + "creative_commons": "", + "3d": "", + "live": "", + "4k": "", + "location": "", + "hdr": "", + "filter": "", "Current version: ": "Trenutačna verzija: " } \ No newline at end of file diff --git a/locales/id.json b/locales/id.json index 943a23f4..03b97fd6 100644 --- a/locales/id.json +++ b/locales/id.json @@ -384,5 +384,32 @@ "Videos": "Video", "Playlists": "Daftar putar", "Community": "Komunitas", + "relevance": "", + "rating": "", + "date": "", + "views": "", + "content_type": "", + "duration": "", + "features": "", + "sort": "", + "hour": "", + "today": "", + "week": "", + "month": "", + "year": "", + "video": "", + "channel": "", + "playlist": "", + "movie": "", + "show": "", + "hd": "", + "subtitles": "", + "creative_commons": "", + "3d": "", + "live": "", + "4k": "", + "location": "", + "hdr": "", + "filter": "", "Current version: ": "Versi saat ini: " } \ No newline at end of file diff --git a/locales/is.json b/locales/is.json index e4cb21f0..49bdec7c 100644 --- a/locales/is.json +++ b/locales/is.json @@ -348,5 +348,32 @@ "Video mode": "Myndband ham", "Videos": "Myndbönd", "Playlists": "Spilunarlistar", + "relevance": "", + "rating": "", + "date": "", + "views": "", + "content_type": "", + "duration": "", + "features": "", + "sort": "", + "hour": "", + "today": "", + "week": "", + "month": "", + "year": "", + "video": "", + "channel": "", + "playlist": "", + "movie": "", + "show": "", + "hd": "", + "subtitles": "", + "creative_commons": "", + "3d": "", + "live": "", + "4k": "", + "location": "", + "hdr": "", + "filter": "", "Current version: ": "Núverandi útgáfa: " } \ No newline at end of file From 6933a049b1738c4f33f07c2c23481487bf149755 Mon Sep 17 00:00:00 2001 From: Samantaz Fox Date: Tue, 23 Mar 2021 05:03:55 +0100 Subject: [PATCH 04/11] Add missing fields to locales (part 2) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Updated ja.json (Japanese) Updated nb-NO.json (Norwegian Bokmål) Updated nl.json (Dutch) Updated pl.json (Polish) Updated pt-BR.json (Portuguese, Brazil) Updated ro.json (Romanian) Updated ru.json (Russian) --- locales/ja.json | 27 +++++++++++++++++++++++++++ locales/nb-NO.json | 27 +++++++++++++++++++++++++++ locales/nl.json | 27 +++++++++++++++++++++++++++ locales/pl.json | 27 +++++++++++++++++++++++++++ locales/pt-BR.json | 27 +++++++++++++++++++++++++++ locales/ro.json | 29 ++++++++++++++++++++++++++++- locales/ru.json | 29 ++++++++++++++++++++++++++++- 7 files changed, 191 insertions(+), 2 deletions(-) diff --git a/locales/ja.json b/locales/ja.json index 7d8ef74f..f1c3265a 100644 --- a/locales/ja.json +++ b/locales/ja.json @@ -384,5 +384,32 @@ "Videos": "動画", "Playlists": "プレイリスト", "Community": "コミュニティ", + "relevance": "", + "rating": "", + "date": "", + "views": "", + "content_type": "", + "duration": "", + "features": "", + "sort": "", + "hour": "", + "today": "", + "week": "", + "month": "", + "year": "", + "video": "", + "channel": "", + "playlist": "", + "movie": "", + "show": "", + "hd": "", + "subtitles": "", + "creative_commons": "", + "3d": "", + "live": "", + "4k": "", + "location": "", + "hdr": "", + "filter": "", "Current version: ": "現在のバージョン: " } \ No newline at end of file diff --git a/locales/nb-NO.json b/locales/nb-NO.json index 06e57284..90b3028f 100644 --- a/locales/nb-NO.json +++ b/locales/nb-NO.json @@ -333,5 +333,32 @@ "Videos": "Videoer", "Playlists": "Spillelister", "Community": "Gemenskap", + "relevance": "", + "rating": "", + "date": "", + "views": "", + "content_type": "", + "duration": "", + "features": "", + "sort": "", + "hour": "", + "today": "", + "week": "", + "month": "", + "year": "", + "video": "", + "channel": "", + "playlist": "", + "movie": "", + "show": "", + "hd": "", + "subtitles": "", + "creative_commons": "", + "3d": "", + "live": "", + "4k": "", + "location": "", + "hdr": "", + "filter": "", "Current version: ": "Gjeldende versjon: " } \ No newline at end of file diff --git a/locales/nl.json b/locales/nl.json index c837037f..77e655e9 100644 --- a/locales/nl.json +++ b/locales/nl.json @@ -333,6 +333,33 @@ "Videos": "Video's", "Playlists": "Afspeellijsten", "Community": "Gemeenschap", + "relevance": "", + "rating": "", + "date": "", + "views": "", + "content_type": "", + "duration": "", + "features": "", + "sort": "", + "hour": "", + "today": "", + "week": "", + "month": "", + "year": "", + "video": "", + "channel": "", + "playlist": "", + "movie": "", + "show": "", + "hd": "", + "subtitles": "", + "creative_commons": "", + "3d": "", + "live": "", + "4k": "", + "location": "", + "hdr": "", + "filter": "", "Current version: ": "Huidige versie: ", "Download is disabled.": "Downloaden is uitgeschakeld." } \ No newline at end of file diff --git a/locales/pl.json b/locales/pl.json index eba3cc11..c612beaf 100644 --- a/locales/pl.json +++ b/locales/pl.json @@ -333,5 +333,32 @@ "Videos": "Filmy", "Playlists": "Playlisty", "Community": "Społeczność", + "relevance": "", + "rating": "", + "date": "", + "views": "", + "content_type": "", + "duration": "", + "features": "", + "sort": "", + "hour": "", + "today": "", + "week": "", + "month": "", + "year": "", + "video": "", + "channel": "", + "playlist": "", + "movie": "", + "show": "", + "hd": "", + "subtitles": "", + "creative_commons": "", + "3d": "", + "live": "", + "4k": "", + "location": "", + "hdr": "", + "filter": "", "Current version: ": "Aktualna wersja: " } \ No newline at end of file diff --git a/locales/pt-BR.json b/locales/pt-BR.json index d462012c..8a361dd7 100644 --- a/locales/pt-BR.json +++ b/locales/pt-BR.json @@ -333,5 +333,32 @@ "Videos": "Vídeos", "Playlists": "Listas de reprodução", "Community": "Comunidade", + "relevance": "", + "rating": "", + "date": "", + "views": "", + "content_type": "", + "duration": "", + "features": "", + "sort": "", + "hour": "", + "today": "", + "week": "", + "month": "", + "year": "", + "video": "", + "channel": "", + "playlist": "", + "movie": "", + "show": "", + "hd": "", + "subtitles": "", + "creative_commons": "", + "3d": "", + "live": "", + "4k": "", + "location": "", + "hdr": "", + "filter": "", "Current version: ": "Versão atual: " } \ No newline at end of file diff --git a/locales/ro.json b/locales/ro.json index 86ae9330..df8e1bb3 100644 --- a/locales/ro.json +++ b/locales/ro.json @@ -333,5 +333,32 @@ "Videos": "Videoclipuri", "Playlists": "Liste de redare", "Community": "Comunitate", + "relevance": "", + "rating": "", + "date": "", + "views": "", + "content_type": "", + "duration": "", + "features": "", + "sort": "", + "hour": "", + "today": "", + "week": "", + "month": "", + "year": "", + "video": "", + "channel": "", + "playlist": "", + "movie": "", + "show": "", + "hd": "", + "subtitles": "", + "creative_commons": "", + "3d": "", + "live": "", + "4k": "", + "location": "", + "hdr": "", + "filter": "", "Current version: ": "Versiunea actuală: " -} \ No newline at end of file +} diff --git a/locales/ru.json b/locales/ru.json index 77da364b..5fd5078c 100644 --- a/locales/ru.json +++ b/locales/ru.json @@ -333,5 +333,32 @@ "Videos": "Видео", "Playlists": "Плейлисты", "Community": "Сообщество", + "relevance": "", + "rating": "", + "date": "", + "views": "", + "content_type": "", + "duration": "", + "features": "", + "sort": "", + "hour": "", + "today": "", + "week": "", + "month": "", + "year": "", + "video": "", + "channel": "", + "playlist": "", + "movie": "", + "show": "", + "hd": "", + "subtitles": "", + "creative_commons": "", + "3d": "", + "live": "", + "4k": "", + "location": "", + "hdr": "", + "filter": "", "Current version: ": "Текущая версия: " -} \ No newline at end of file +} From 3829bdf198ebfbd0aaae70ff83fd9ae2c3776117 Mon Sep 17 00:00:00 2001 From: Samantaz Fox Date: Tue, 23 Mar 2021 22:11:29 +0100 Subject: [PATCH 05/11] Add missing fields to locales (part 3) Updated el.json (Greek) Updated fa.json (Persian) Updated fi.json (Finnish) Updated it.json (Italian) Updated pt-PT.json (Portuguese, Portugal) Updated sv-SE.json (Swedish) Updated tr.json (Turkish) Updated uk.json (Ukrainian) Updated zh-CN.json (Chinese, China) Updated zh-TW.json (Chinese, Taiwan) --- locales/el.json | 27 +++++++++++++++++++++++++++ locales/fa.json | 27 +++++++++++++++++++++++++++ locales/fi.json | 27 +++++++++++++++++++++++++++ locales/it.json | 27 +++++++++++++++++++++++++++ locales/pt-PT.json | 27 +++++++++++++++++++++++++++ locales/sv-SE.json | 27 +++++++++++++++++++++++++++ locales/tr.json | 27 +++++++++++++++++++++++++++ locales/uk.json | 29 ++++++++++++++++++++++++++++- locales/zh-CN.json | 27 +++++++++++++++++++++++++++ locales/zh-TW.json | 27 +++++++++++++++++++++++++++ 10 files changed, 271 insertions(+), 1 deletion(-) diff --git a/locales/el.json b/locales/el.json index a3dbafb4..ec68b13a 100644 --- a/locales/el.json +++ b/locales/el.json @@ -348,5 +348,32 @@ "Videos": "Βίντεο", "Playlists": "Λίστες Αναπαραγωγής", "Community": "Κοινότητα", + "relevance": "", + "rating": "", + "date": "", + "views": "", + "content_type": "", + "duration": "", + "features": "", + "sort": "", + "hour": "", + "today": "", + "week": "", + "month": "", + "year": "", + "video": "", + "channel": "", + "playlist": "", + "movie": "", + "show": "", + "hd": "", + "subtitles": "", + "creative_commons": "", + "3d": "", + "live": "", + "4k": "", + "location": "", + "hdr": "", + "filter": "", "Current version: ": "Τρέχουσα έκδοση: " } \ No newline at end of file diff --git a/locales/fa.json b/locales/fa.json index ef77c775..b51931d7 100644 --- a/locales/fa.json +++ b/locales/fa.json @@ -350,5 +350,32 @@ "Videos": "ویدیو ها", "Playlists": "لیست های پخش", "Community": "اجتماع", + "relevance": "", + "rating": "", + "date": "", + "views": "", + "content_type": "", + "duration": "", + "features": "", + "sort": "", + "hour": "", + "today": "", + "week": "", + "month": "", + "year": "", + "video": "", + "channel": "", + "playlist": "", + "movie": "", + "show": "", + "hd": "", + "subtitles": "", + "creative_commons": "", + "3d": "", + "live": "", + "4k": "", + "location": "", + "hdr": "", + "filter": "", "Current version: ": "نسخه فعلی: " } \ No newline at end of file diff --git a/locales/fi.json b/locales/fi.json index 6bf785ac..692ac017 100644 --- a/locales/fi.json +++ b/locales/fi.json @@ -350,5 +350,32 @@ "Videos": "Videot", "Playlists": "Soittolistat", "Community": "Yhteisö", + "relevance": "", + "rating": "", + "date": "", + "views": "", + "content_type": "", + "duration": "", + "features": "", + "sort": "", + "hour": "", + "today": "", + "week": "", + "month": "", + "year": "", + "video": "", + "channel": "", + "playlist": "", + "movie": "", + "show": "", + "hd": "", + "subtitles": "", + "creative_commons": "", + "3d": "", + "live": "", + "4k": "", + "location": "", + "hdr": "", + "filter": "", "Current version: ": "Tämänhetkinen versio: " } \ No newline at end of file diff --git a/locales/it.json b/locales/it.json index b09cf4f0..ec72e2e4 100644 --- a/locales/it.json +++ b/locales/it.json @@ -348,5 +348,32 @@ "Videos": "Video", "Playlists": "Playlist", "Community": "Comunità", + "relevance": "", + "rating": "", + "date": "", + "views": "", + "content_type": "", + "duration": "", + "features": "", + "sort": "", + "hour": "", + "today": "", + "week": "", + "month": "", + "year": "", + "video": "", + "channel": "", + "playlist": "", + "movie": "", + "show": "", + "hd": "", + "subtitles": "", + "creative_commons": "", + "3d": "", + "live": "", + "4k": "", + "location": "", + "hdr": "", + "filter": "", "Current version: ": "Versione attuale: " } \ No newline at end of file diff --git a/locales/pt-PT.json b/locales/pt-PT.json index 6d3fb704..90bfea5f 100644 --- a/locales/pt-PT.json +++ b/locales/pt-PT.json @@ -350,5 +350,32 @@ "Videos": "Vídeos", "Playlists": "Listas de reprodução", "Community": "Comunidade", + "relevance": "", + "rating": "", + "date": "", + "views": "", + "content_type": "", + "duration": "", + "features": "", + "sort": "", + "hour": "", + "today": "", + "week": "", + "month": "", + "year": "", + "video": "", + "channel": "", + "playlist": "", + "movie": "", + "show": "", + "hd": "", + "subtitles": "", + "creative_commons": "", + "3d": "", + "live": "", + "4k": "", + "location": "", + "hdr": "", + "filter": "", "Current version: ": "Versão atual: " } \ No newline at end of file diff --git a/locales/sv-SE.json b/locales/sv-SE.json index 1f3e5eaf..1cdab99a 100644 --- a/locales/sv-SE.json +++ b/locales/sv-SE.json @@ -333,5 +333,32 @@ "Videos": "Videor", "Playlists": "Spellistor", "Community": "Gemenskap", + "relevance": "", + "rating": "", + "date": "", + "views": "", + "content_type": "", + "duration": "", + "features": "", + "sort": "", + "hour": "", + "today": "", + "week": "", + "month": "", + "year": "", + "video": "", + "channel": "", + "playlist": "", + "movie": "", + "show": "", + "hd": "", + "subtitles": "", + "creative_commons": "", + "3d": "", + "live": "", + "4k": "", + "location": "", + "hdr": "", + "filter": "", "Current version: ": "Nuvarande version: " } \ No newline at end of file diff --git a/locales/tr.json b/locales/tr.json index b87f4732..0dd68b52 100644 --- a/locales/tr.json +++ b/locales/tr.json @@ -341,5 +341,32 @@ "Videos": "Videolar", "Playlists": "Oynatma listeleri", "Community": "Topluluk", + "relevance": "", + "rating": "", + "date": "", + "views": "", + "content_type": "", + "duration": "", + "features": "", + "sort": "", + "hour": "", + "today": "", + "week": "", + "month": "", + "year": "", + "video": "", + "channel": "", + "playlist": "", + "movie": "", + "show": "", + "hd": "", + "subtitles": "", + "creative_commons": "", + "3d": "", + "live": "", + "4k": "", + "location": "", + "hdr": "", + "filter": "", "Current version: ": "Şu anki sürüm: " } \ No newline at end of file diff --git a/locales/uk.json b/locales/uk.json index 3e5de1e3..9c34f46e 100644 --- a/locales/uk.json +++ b/locales/uk.json @@ -333,5 +333,32 @@ "Videos": "Відео", "Playlists": "Плейлисти", "Community": "Спільнота", + "relevance": "", + "rating": "", + "date": "", + "views": "", + "content_type": "", + "duration": "", + "features": "", + "sort": "", + "hour": "", + "today": "", + "week": "", + "month": "", + "year": "", + "video": "", + "channel": "", + "playlist": "", + "movie": "", + "show": "", + "hd": "", + "subtitles": "", + "creative_commons": "", + "3d": "", + "live": "", + "4k": "", + "location": "", + "hdr": "", + "filter": "", "Current version: ": "Поточна версія: " -} \ No newline at end of file +} diff --git a/locales/zh-CN.json b/locales/zh-CN.json index a45b52bd..ae2ea0b4 100644 --- a/locales/zh-CN.json +++ b/locales/zh-CN.json @@ -333,5 +333,32 @@ "Videos": "视频", "Playlists": "播放列表", "Community": "社区", + "relevance": "", + "rating": "", + "date": "", + "views": "", + "content_type": "", + "duration": "", + "features": "", + "sort": "", + "hour": "", + "today": "", + "week": "", + "month": "", + "year": "", + "video": "", + "channel": "", + "playlist": "", + "movie": "", + "show": "", + "hd": "", + "subtitles": "", + "creative_commons": "", + "3d": "", + "live": "", + "4k": "", + "location": "", + "hdr": "", + "filter": "", "Current version: ": "当前版本: " } \ No newline at end of file diff --git a/locales/zh-TW.json b/locales/zh-TW.json index 42218073..d472e487 100644 --- a/locales/zh-TW.json +++ b/locales/zh-TW.json @@ -348,5 +348,32 @@ "Videos": "影片", "Playlists": "播放清單", "Community": "社群", + "relevance": "", + "rating": "", + "date": "", + "views": "", + "content_type": "", + "duration": "", + "features": "", + "sort": "", + "hour": "", + "today": "", + "week": "", + "month": "", + "year": "", + "video": "", + "channel": "", + "playlist": "", + "movie": "", + "show": "", + "hd": "", + "subtitles": "", + "creative_commons": "", + "3d": "", + "live": "", + "4k": "", + "location": "", + "hdr": "", + "filter": "", "Current version: ": "目前版本: " } \ No newline at end of file From ad9fe3be0928c6a13dd2e95134a594d43cfabc5f Mon Sep 17 00:00:00 2001 From: Samantaz Fox Date: Thu, 25 Mar 2021 00:57:41 +0100 Subject: [PATCH 06/11] Add missing fields to locales (part 4) Updated el.json (Greek) Updated fa.json (Persian) Updated fi.json (Finnish) Updated it.json (Italian) Updated pt-PT.json (Portuguese, Portugal) Updated zh-TW.json (Chinese, Taiwan) --- locales/el.json | 95 +++++++++++++++++++++++++++-------------- locales/fa.json | 102 ++++++++++++++++++++++++++++++--------------- locales/fi.json | 102 ++++++++++++++++++++++++++++++--------------- locales/it.json | 95 +++++++++++++++++++++++++++-------------- locales/pt-PT.json | 102 ++++++++++++++++++++++++++++++--------------- locales/zh-TW.json | 95 +++++++++++++++++++++++++++-------------- 6 files changed, 396 insertions(+), 195 deletions(-) diff --git a/locales/el.json b/locales/el.json index ec68b13a..9ee9f50f 100644 --- a/locales/el.json +++ b/locales/el.json @@ -1,9 +1,16 @@ { - "`x` subscribers.([^.,0-9]|^)1([^.,0-9]|$)": "`x` συνδρομητές.([^.,0-9]|^)1([^.,0-9]|$)", - "`x` subscribers.": "`x` συνδρομητές.", - "`x` videos.([^.,0-9]|^)1([^.,0-9]|$)": "`x` βίντεο.([^.,0-9]|^)1([^.,0-9]|$)", - "`x` videos.": "`x` βίντεο.", - "`x` playlists": "`x` λίστες αναπαραγωγής", + "`x` subscribers": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` συνδρομητές", + "": "`x` συνδρομητές" + }, + "`x` videos": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` βίντεο", + "": "`x` βίντεο" + }, + "`x` playlists": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` λίστες αναπαραγωγής", + "": "" + }, "LIVE": "ΖΩΝΤΑΝΑ", "Shared `x` ago": "Μοιράστηκε πριν από `x`", "Unsubscribe": "Απεγγραφή", @@ -115,16 +122,22 @@ "Subscription manager": "Διαχειριστής συνδρομών", "Token manager": "Διαχειριστής διασυνδέσεων", "Token": "Διασύνδεση", - "`x` subscriptions.([^.,0-9]|^)1([^.,0-9]|$)": "`x` συνδρομή", - "`x` subscriptions.": "`x` συνδρομές.", - "`x` tokens.([^.,0-9]|^)1([^.,0-9]|$)": "`x` διασύνδεση", - "`x` tokens.": "`x` διασυνδέσεις.", + "`x` subscriptions": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` συνδρομή", + "": "`x` συνδρομές" + }, + "`x` tokens": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` διασύνδεση", + "": "`x` διασυνδέσεις" + }, "Import/export": "Εισαγωγή/εξαγωγή", "unsubscribe": "κατάργηση συνδρομής", "revoke": "ανάκληση", "Subscriptions": "Συνδρομές", - "`x` unseen notifications.([^.,0-9]|^)1([^.,0-9]|$)": "`x` καινούρια ειδοποίηση", - "`x` unseen notifications.": "`x` καινούριες ειδοποιήσεις.", + "`x` unseen notifications": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` καινούρια ειδοποίηση", + "": "`x` καινούριες ειδοποιήσεις" + }, "search": "αναζήτηση", "Log out": "Αποσύνδεση", "Released under the AGPLv3 by Omar Roth.": "Κυκλοφορεί υπό την άδεια AGPLv3 από τον Omar Roth.", @@ -154,8 +167,10 @@ "Whitelisted regions: ": "Επιτρεπτές περιοχές: ", "Blacklisted regions: ": "Μη-επιτρεπτές περιοχές: ", "Shared `x`": "Μοιράστηκε το `x`", - "`x` views.([^.,0-9]|^)1([^.,0-9]|$)": "`x` προβολή", - "`x` views.": "`x` προβολές.", + "`x` views": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` προβολή", + "": "`x` προβολές." + }, "Premieres in `x`": "Πρώτη προβολή σε `x`", "Premieres `x`": "Επίσημη πρώτη παράσταση του `x`", "Hi! Looks like you have JavaScript turned off. Click here to view comments, keep in mind they may take a bit longer to load.": "Γεια! Φαίνεται πως έχετε απενεργοποιήσει το JavaScript. Πατήστε εδώ για προβολή σχολίων, αλλά έχετε υπ'όψιν σας πως ίσως φορτώσουν πιο αργά.", @@ -186,12 +201,16 @@ "This channel does not exist.": "Αυτό το κανάλι δεν υπάρχει.", "Could not get channel info.": "Αδύναμια εύρεσης πληροφοριών καναλιού.", "Could not fetch comments": "Αδυναμία λήψης σχολίων", - "View `x` replies.([^.,0-9]|^)1([^.,0-9]|$)": "Προβολή `x` απάντησης", - "View `x` replies.": "Προβολή `x` απαντήσεων.", + "View `x` replies": { + "([^.,0-9]|^)1([^.,0-9]|$)": "Προβολή `x` απάντησης", + "": "Προβολή `x` απαντήσεων" + }, "`x` ago": "Πριν `x`", "Load more": "Φόρτωση περισσότερων", - "`x` points.([^.,0-9]|^)1([^.,0-9]|$)": "`x` βαθμός", - "`x` points.": "`x` βαθμοί.", + "`x` points": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` βαθμός", + "": "`x` βαθμοί" + }, "Could not create mix.": "Αδυναμία δημιουργίας μίξης.", "Empty playlist": "Κενή λίστα αναπαραγωγής", "Not a playlist.": "Μη έγκυρη λίστα αναπαραγωγής.", @@ -309,20 +328,34 @@ "Yiddish": "Γίντις", "Yoruba": "Γιορούμπα", "Zulu": "Ζουλού", - "`x` years.([^.,0-9]|^)1([^.,0-9]|$)": "`x` χρόνο", - "`x` years.": "`x` χρόνια.", - "`x` months.([^.,0-9]|^)1([^.,0-9]|$)": "`x` μήνα", - "`x` months.": "`x` μήνες.", - "`x` weeks.([^.,0-9]|^)1([^.,0-9]|$)": "`x` εβδομάδα", - "`x` weeks.": "`x` εβδομάδες.", - "`x` days.([^.,0-9]|^)1([^.,0-9]|$)": "`x` ημέρα", - "`x` days.": "`x` ημέρες.", - "`x` hours.([^.,0-9]|^)1([^.,0-9]|$)": "`x` ώρα", - "`x` hours.": "`x` ώρες.", - "`x` minutes.([^.,0-9]|^)1([^.,0-9]|$)": "`x` λεπτό", - "`x` minutes.": "`x` λεπτά.", - "`x` seconds.([^.,0-9]|^)1([^.,0-9]|$)": "`x` δευτερόλεπτο", - "`x` seconds.": "`x` δευτερόλεπτα.", + "`x` years": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` χρόνο", + "": "`x` χρόνια" + }, + "`x` months": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` μήνα", + "": "`x` μήνες" + }, + "`x` weeks": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` εβδομάδα", + "": "`x` εβδομάδες" + }, + "`x` days": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` ημέρα", + "": "`x` ημέρες" + }, + "`x` hours": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` ώρα", + "": "`x` ώρες" + }, + "`x` minutes": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` λεπτό", + "": "`x` λεπτά" + }, + "`x` seconds": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` δευτερόλεπτο", + "": "`x` δευτερόλεπτα" + }, "Fallback comments: ": "Εναλλακτικά σχόλια: ", "Popular": "Δημοφιλή", "Search": "", diff --git a/locales/fa.json b/locales/fa.json index b51931d7..a973b78d 100644 --- a/locales/fa.json +++ b/locales/fa.json @@ -1,10 +1,16 @@ { - "`x` subscribers.([^.,0-9]|^)1([^.,0-9]|$)": "`x` مشترکان.([^.,0-9]|^)1([^.,0-9]|$)", - "`x` subscribers.": "`x` مشترکان.", - "`x` videos.([^.,0-9]|^)1([^.,0-9]|$)": "`x` ویدیو ها.([^.,0-9]|^)1([^.,0-9]|$)", - "`x` videos.": "`x` ویدیو ها.", - "`x` playlists.([^.,0-9]|^)1([^.,0-9]|$)": "`x` لیست های پخش.([^.,0-9]|^)1([^.,0-9]|$)", - "`x` playlists.": "`x` لیست های پخش.", + "`x` subscribers": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` مشترکان", + "": "`x` مشترکان" + }, + "`x` videos": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` ویدیو ها", + "": "`x` ویدیو ها" + }, + "`x` playlists": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` لیست های پخش", + "": "`x` لیست های پخش" + }, "LIVE": "زنده", "Shared `x` ago": "به اشتراک گذاشته شده `x` پیش", "Unsubscribe": "لغو اشتراک", @@ -116,16 +122,22 @@ "Subscription manager": "مدیریت اشتراک", "Token manager": "مدیر توکن", "Token": "توکن", - "`x` subscriptions.([^.,0-9]|^)1([^.,0-9]|$)": "`x` اشتراک ها.([^.,0-9]|^)1([^.,0-9]|$)", - "`x` subscriptions.": "`x` اشتراک ها.", - "`x` tokens.([^.,0-9]|^)1([^.,0-9]|$)": "`x` توکن ها.([^.,0-9]|^)1([^.,0-9]|$)", - "`x` tokens.": "`x` توکن ها.", + "`x` subscriptions": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` اشتراک ها", + "": "`x` اشتراک ها" + }, + "`x` tokens": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` توکن ها", + "": "`x` توکن ها" + }, "Import/export": "وارد کردن/خارج کردن", "unsubscribe": "لغو اشتراک", "revoke": "ابطال", "Subscriptions": "اشتراک ها", - "`x` unseen notifications.([^.,0-9]|^)1([^.,0-9]|$)": "`x` اعلان نادیده.([^.,0-9]|^)1([^.,0-9]|$)", - "`x` unseen notifications.": "`x` اعلان نادیده.", + "`x` unseen notifications": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` اعلان نادیده", + "": "`x` اعلان نادیده" + }, "search": "جستجو", "Log out": "خروج", "Released under the AGPLv3 by Omar Roth.": "منتشر شده تحت مجوز AGPLv3 توسط Omar Roth.", @@ -155,15 +167,19 @@ "Whitelisted regions: ": "مناطق لیست سفید: ", "Blacklisted regions: ": "مناطق لیست سیاه: ", "Shared `x`": "به اشتراک گذاشته شده `x`", - "`x` views.([^.,0-9]|^)1([^.,0-9]|$)": "`x` بازدید.([^.,0-9]|^)1([^.,0-9]|$)", - "`x` views.": "`x` بازدید.", + "`x` views": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` بازدید", + "": "`x` بازدید" + }, "Premieres in `x`": "برای اولین بار در `x`", "Premieres `x`": "برای اولین بار `x`", "Hi! Looks like you have JavaScript turned off. Click here to view comments, keep in mind they may take a bit longer to load.": "سلام! مثل اینکه تو جاوا اسکریپت رو خاموش کرده ای. اینجا کلیک کن تا نظرات را ببینی، این رو یادت باشه که ممکنه بارگذاری اونها کمی طول بکشه.", "View YouTube comments": "نمایش نظرات یوتیوب", "View more comments on Reddit": "نمایش نظرات بیشتر در ردیت", - "View `x` comments.([^.,0-9]|^)1([^.,0-9]|$)": "نمایش `x` نظرات.([^.,0-9]|^)1([^.,0-9]|$)", - "View `x` comments.": "نمایش `x` نظرات.", + "View `x` comments": { + "([^.,0-9]|^)1([^.,0-9]|$)": "نمایش `x` نظرات", + "": "نمایش `x` نظرات" + }, "View Reddit comments": "نمایش نظرات ردیت", "Hide replies": "مخفی کردن پاسخ ها", "Show replies": "نمایش پاسخ ها", @@ -188,12 +204,16 @@ "This channel does not exist.": "این کانال وجود ندارد.", "Could not get channel info.": "نمیتوان اطلاعات کانال را دریافت کرد.", "Could not fetch comments": "نمیتوان نظرات را دریافت کرد", - "View `x` replies.([^.,0-9]|^)1([^.,0-9]|$)": "نمایش `x` پاسخ ها.([^.,0-9]|^)1([^.,0-9]|$)", - "View `x` replies.": "نمایش `x` پاسخ ها.", + "View `x` replies": { + "([^.,0-9]|^)1([^.,0-9]|$)": "نمایش `x` پاسخ ها", + "": "نمایش `x` پاسخ ها" + }, "`x` ago": "`x` پیش", "Load more": "بارگذاری بیشتر", - "`x` points.([^.,0-9]|^)1([^.,0-9]|$)": "`x` نقطه ها.([^.,0-9]|^)1([^.,0-9]|$)", - "`x` points.": "`x` نقطه ها.", + "`x` points": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` نقطه ها", + "": "`x` نقطه ها" + }, "Could not create mix.": "نمیتوان میکس ساخت.", "Empty playlist": "لیست پخش خالی", "Not a playlist.": "یک لیست پخش نیست.", @@ -311,20 +331,34 @@ "Yiddish": "ییدیش", "Yoruba": "یوروبایی", "Zulu": "زولو", - "`x` years.([^.,0-9]|^)1([^.,0-9]|$)": "`x` سال.([^.,0-9]|^)1([^.,0-9]|$)", - "`x` years.": "`x` سال.", - "`x` months.([^.,0-9]|^)1([^.,0-9]|$)": "`x` ماه.([^.,0-9]|^)1([^.,0-9]|$)", - "`x` months.": "`x` ماه.", - "`x` weeks.([^.,0-9]|^)1([^.,0-9]|$)": "`x` هفته.([^.,0-9]|^)1([^.,0-9]|$)", - "`x` weeks.": "`x` هفته.", - "`x` days.([^.,0-9]|^)1([^.,0-9]|$)": "`x` روز.([^.,0-9]|^)1([^.,0-9]|$)", - "`x` days.": "`x` روز.", - "`x` hours.([^.,0-9]|^)1([^.,0-9]|$)": "`x` ساعت.([^.,0-9]|^)1([^.,0-9]|$)", - "`x` hours.": "`x` ساعت.", - "`x` minutes.([^.,0-9]|^)1([^.,0-9]|$)": "`x` دقیقه.([^.,0-9]|^)1([^.,0-9]|$)", - "`x` minutes.": "`x` دقیقه.", - "`x` seconds.([^.,0-9]|^)1([^.,0-9]|$)": "`x` ثانیه.([^.,0-9]|^)1([^.,0-9]|$)", - "`x` seconds.": "`x` ثانیه.", + "`x` years": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` سال.", + "": "`x` سال." + }, + "`x` months": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` ماه", + "": "`x` ماه" + }, + "`x` weeks": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` هفته", + "": "`x` هفته" + }, + "`x` days": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` روز", + "": "`x` روز." + }, + "`x` hours": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` ساعت", + "": "`x` ساعت." + }, + "`x` minutes": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` دقیقه", + "": "`x` دقیقه" + }, + "`x` seconds": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` ثانیه", + "`x` seconds.": "`x` ثانیه" + }, "Fallback comments: ": "نظرات عقب گرد: ", "Popular": "محبوب", "Search": "", diff --git a/locales/fi.json b/locales/fi.json index 692ac017..a009cdb6 100644 --- a/locales/fi.json +++ b/locales/fi.json @@ -1,10 +1,16 @@ { - "`x` subscribers.([^.,0-9]|^)1([^.,0-9]|$)": "`x` tilaaja", - "`x` subscribers.": "`x` tilaajaa.", - "`x` videos.([^.,0-9]|^)1([^.,0-9]|$)": "`x` video", - "`x` videos.": "`x` videota.", - "`x` playlists.([^.,0-9]|^)1([^.,0-9]|$)": "`x` soittolista.([^.,0-9]|^)1([^.,0-9]|$)", - "`x` playlists.": "`x` soittolistaa.", + "`x` subscribers": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` tilaaja", + "": "`x` tilaajaa" + }, + "`x` videos": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` video", + "": "`x` videota" + }, + "`x` playlists": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` soittolista", + "": "`x` soittolistaa" + }, "LIVE": "SUORA", "Shared `x` ago": "Jaettu `x` sitten", "Unsubscribe": "Peruuta tilaus", @@ -116,16 +122,22 @@ "Subscription manager": "Tilausten hallinnoija", "Token manager": "Tunnusten hallinnoija", "Token": "Tunnus", - "`x` subscriptions.([^.,0-9]|^)1([^.,0-9]|$)": "`x` tilausta.([^.,0-9]|^)1([^.,0-9]|$)", - "`x` subscriptions.": "`x` tilausta.", - "`x` tokens.([^.,0-9]|^)1([^.,0-9]|$)": "`x` tunnistetta.([^.,0-9]|^)1([^.,0-9]|$)", - "`x` tokens.": "`x` tunnistetta.", + "`x` subscriptions": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` tilausta", + "": "`x` tilausta" + }, + "`x` tokens": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` tunnistetta", + "": "`x` tunnistetta" + }, "Import/export": "Tuo/vie", "unsubscribe": "peru tilaus", "revoke": "kumoa", "Subscriptions": "Tilaukset", - "`x` unseen notifications.([^.,0-9]|^)1([^.,0-9]|$)": "`x` näkemätöntä ilmoitusta.([^.,0-9]|^)1([^.,0-9]|$)", - "`x` unseen notifications.": "`x` näkemätöntä ilmoitusta.", + "`x` unseen notifications": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` näkemätöntä ilmoitusta", + "": "`x` näkemätöntä ilmoitusta" + }, "search": "haku", "Log out": "Kirjaudu ulos", "Released under the AGPLv3 by Omar Roth.": "Julkaissut AGPLv3-lisenssillä: Omar Roth.", @@ -155,15 +167,19 @@ "Whitelisted regions: ": "valkolistatut alueet: ", "Blacklisted regions: ": "mustalla listalla olevat alueet: ", "Shared `x`": "Jaettu `x`", - "`x` views.([^.,0-9]|^)1([^.,0-9]|$)": "`x` katselukertaa.([^.,0-9]|^)1([^.,0-9]|$)", - "`x` views.": "`x` katselukertaa.", + "`x` views": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` katselukertaa", + "": "`x` katselukertaa" + }, "Premieres in `x`": "Ensiesitykseen aikaa `x`", "Premieres `x`": "Ensiesitykseen `x`", "Hi! Looks like you have JavaScript turned off. Click here to view comments, keep in mind they may take a bit longer to load.": "Hei! Vaikuttaa siltä, että sinulla on JavaScript pois käytöstä. Klikkaa tästä nähdäksesi kommentit, huomioi että lataamisessa voi kestää melko kauan.", "View YouTube comments": "Näytä YouTube-kommentit", "View more comments on Reddit": "Katso lisää kommentteja Redditissä", - "View `x` comments.([^.,0-9]|^)1([^.,0-9]|$)": "Näytä `x` komenttia.([^.,0-9]|^)1([^.,0-9]|$)", - "View `x` comments.": "Näytä `x` kommenttia.", + "View `x` comments": { + "([^.,0-9]|^)1([^.,0-9]|$)": "Näytä `x` komenttia", + "": "Näytä `x` kommenttia" + }, "View Reddit comments": "Näytä Reddit-kommentit", "Hide replies": "Piilota vastaukset", "Show replies": "Näytä vastaukset", @@ -188,12 +204,16 @@ "This channel does not exist.": "Tätä kanavaa ei ole olemassa.", "Could not get channel info.": "Kanavatietoa ei saatu ladattua.", "Could not fetch comments": "Kommenttien nouto epäonnistui", - "View `x` replies.([^.,0-9]|^)1([^.,0-9]|$)": "Näytä `x` vastausta.([^.,0-9]|^)1([^.,0-9]|$)", - "View `x` replies.": "Näytä `x` vastausta.", + "View `x` replies": { + "([^.,0-9]|^)1([^.,0-9]|$)": "Näytä `x` vastausta", + "": "Näytä `x` vastausta" + }, "`x` ago": "`x` sitten", "Load more": "Lataa lisää", - "`x` points.([^.,0-9]|^)1([^.,0-9]|$)": "`x` pistettä.([^.,0-9]|^)1([^.,0-9]|$)", - "`x` points.": "`x` pistettä.", + "`x` points": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` pistettä", + "": "`x` pistettä" + }, "Could not create mix.": "Sekoituksen luominen epäonnistui.", "Empty playlist": "Tyhjennä soittolista", "Not a playlist.": "Ei ole soittolista.", @@ -311,20 +331,34 @@ "Yiddish": "jiddiš", "Yoruba": "joruba", "Zulu": "zulu", - "`x` years.([^.,0-9]|^)1([^.,0-9]|$)": "`x` vuotta.([^.,0-9]|^)1([^.,0-9]|$)", - "`x` years.": "`x` vuotta.", - "`x` months.([^.,0-9]|^)1([^.,0-9]|$)": "`x` kuukautta.([^.,0-9]|^)1([^.,0-9]|$)", - "`x` months.": "`x` kuukautta.", - "`x` weeks.([^.,0-9]|^)1([^.,0-9]|$)": "`x` viikkoa.([^.,0-9]|^)1([^.,0-9]|$)", - "`x` weeks.": "`x` viikkoa.", - "`x` days.([^.,0-9]|^)1([^.,0-9]|$)": "`x` päivää.([^.,0-9]|^)1([^.,0-9]|$)", - "`x` days.": "`x` päivää.", - "`x` hours.([^.,0-9]|^)1([^.,0-9]|$)": "`x` tuntia.([^.,0-9]|^)1([^.,0-9]|$)", - "`x` hours.": "`x` tuntia.", - "`x` minutes.([^.,0-9]|^)1([^.,0-9]|$)": "`x` minuuttia.([^.,0-9]|^)1([^.,0-9]|$)", - "`x` minutes.": "`x` minuuttia.", - "`x` seconds.([^.,0-9]|^)1([^.,0-9]|$)": "`x` sekuntia.([^.,0-9]|^)1([^.,0-9]|$)", - "`x` seconds.": "`x` sekuntia.", + "`x` years": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` vuotta", + "": "`x` vuotta" + }, + "`x` months": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` kuukautta", + "": "`x` kuukautta" + }, + "`x` weeks": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` viikkoa", + "": "`x` viikkoa" + }, + "`x` days": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` päivää", + "": "`x` päivää" + }, + "`x` hours": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` tuntia", + "": "`x` tuntia" + }, + "`x` minutes": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` minuuttia", + "": "`x` minuuttia" + }, + "`x` seconds": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` sekuntia", + "": "`x` sekuntia" + }, "Fallback comments: ": "varakommentit: ", "Popular": "Suosittu", "Search": "", diff --git a/locales/it.json b/locales/it.json index ec72e2e4..354cf884 100644 --- a/locales/it.json +++ b/locales/it.json @@ -1,9 +1,16 @@ { - "`x` subscribers..([^.,0-9]|^)1([^.,0-9]|$)": "`x` iscritto", - "`x` subscribers..": "`x` iscritti.", - "`x` videos..([^.,0-9]|^)1([^.,0-9]|$)": "`x` video", - "`x` videos..": "`x` video.", - "`x` playlists": "`x` playlist", + "`x` subscribers": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` iscritto", + "": "`x` iscritti" + }, + "`x` videos": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` video", + "": "`x` video" + }, + "`x` playlists": { + "([^.,0-9]|^)1([^.,0-9]|$)": "", + "": "`x` playlist" + }, "LIVE": "IN DIRETTA", "Shared `x` ago": "Condiviso `x` fa", "Unsubscribe": "Disiscriviti", @@ -115,16 +122,22 @@ "Subscription manager": "Gestione delle iscrizioni", "Token manager": "Gestione dei gettoni", "Token": "Gettone", - "`x` subscriptions..([^.,0-9]|^)1([^.,0-9]|$)": "`x` iscrizione", - "`x` subscriptions..": "`x` iscrizioni.", - "`x` tokens..([^.,0-9]|^)1([^.,0-9]|$)": "`x` gettone", - "`x` tokens..": "`x` gettoni.", + "`x` subscriptions": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` iscrizione", + "": "`x` iscrizioni" + }, + "`x` tokens": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` gettone", + "": "`x` gettoni" + }, "Import/export": "Importa/esporta", "unsubscribe": "disiscriviti", "revoke": "revoca", "Subscriptions": "Iscrizioni", - "`x` unseen notifications..([^.,0-9]|^)1([^.,0-9]|$)": "`x` notifica non visualizzata", - "`x` unseen notifications..": "`x` notifiche non visualizzate.", + "`x` unseen notifications": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` notifica non visualizzata", + "": "`x` notifiche non visualizzate" + }, "search": "Cerca", "Log out": "Esci", "Released under the AGPLv3 by Omar Roth.": "Pubblicato con licenza AGPLv3 da Omar Roth.", @@ -154,8 +167,10 @@ "Whitelisted regions: ": "Regioni in lista bianca: ", "Blacklisted regions: ": "Regioni in lista nera: ", "Shared `x`": "Condiviso `x`", - "`x` views..([^.,0-9]|^)1([^.,0-9]|$)": "`x` visualizzazione", - "`x` views..": "`x` visualizzazioni.", + "`x` views": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` visualizzazione", + "": "`x` visualizzazioni" + }, "Premieres in `x`": "In anteprima in `x`", "Premieres `x`": "In anteprima `x`", "Hi! Looks like you have JavaScript turned off. Click here to view comments, keep in mind they may take a bit longer to load.": "Ciao! Sembra che tu abbia disattivato JavaScript. Clicca qui per visualizzare i commenti. Considera che potrebbe volerci più tempo.", @@ -186,12 +201,16 @@ "This channel does not exist.": "Questo canale non esiste.", "Could not get channel info.": "Impossibile ottenere le informazioni del canale.", "Could not fetch comments": "Impossibile recuperare i commenti", - "View `x` replies..([^.,0-9]|^)1([^.,0-9]|$)": "Visualizza `x` risposta", - "View `x` replies..": "Visualizza `x` risposte.", + "View `x` replies": { + "([^.,0-9]|^)1([^.,0-9]|$)": "Visualizza `x` risposta", + "": "Visualizza `x` risposte" + }, "`x` ago": "`x` fa", "Load more": "Carica altro", - "`x` points..([^.,0-9]|^)1([^.,0-9]|$)": "`x` punto", - "`x` points..": "`x` punti.", + "`x` points": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` punto", + "": "`x` punti" + }, "Could not create mix.": "Impossibile creare il mix.", "Empty playlist": "Playlist vuota", "Not a playlist.": "Non è una playlist.", @@ -309,20 +328,34 @@ "Yiddish": "Yiddish", "Yoruba": "Yoruba", "Zulu": "Zulu", - "`x` years..([^.,0-9]|^)1([^.,0-9]|$)": "`x` anno", - "`x` years..": "`x` anni.", - "`x` months..([^.,0-9]|^)1([^.,0-9]|$)": "`x` mese", - "`x` months..": "`x` mesi.", - "`x` weeks..([^.,0-9]|^)1([^.,0-9]|$)": "`x` settimana", - "`x` weeks..": "`x` settimane.", - "`x` days..([^.,0-9]|^)1([^.,0-9]|$)": "`x` giorno", - "`x` days..": "`x` giorni.", - "`x` hours..([^.,0-9]|^)1([^.,0-9]|$)": "`x` ora", - "`x` hours..": "`x` ore.", - "`x` minutes..([^.,0-9]|^)1([^.,0-9]|$)": "`x` minuto", - "`x` minutes..": "`x` minuti.", - "`x` seconds..([^.,0-9]|^)1([^.,0-9]|$)": "`x` secondo", - "`x` seconds..": "`x` secondi.", + "`x` years": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` anno", + "": "`x` anni" + }, + "`x` months": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` mese", + "": "`x` mesi" + }, + "`x` weeks": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` settimana", + "": "`x` settimane" + }, + "`x` days": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` giorno", + "": "`x` giorni" + }, + "`x` hours": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` ora", + "": "`x` ore" + }, + "`x` minutes": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` minuto", + "": "`x` minuti" + }, + "`x` seconds": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` secondo", + "": "`x` secondi" + }, "Fallback comments: ": "Commenti alternativi: ", "Popular": "Popolare", "Search": "", diff --git a/locales/pt-PT.json b/locales/pt-PT.json index 90bfea5f..cfdb4a4b 100644 --- a/locales/pt-PT.json +++ b/locales/pt-PT.json @@ -1,10 +1,16 @@ { - "`x` subscribers..([^.,0-9]|^)1([^.,0-9]|$)": "`x` subscritores..([^.,0-9]|^)1([^.,0-9]|$)", - "`x` subscribers..": "`x` subscritores.", - "`x` videos..([^.,0-9]|^)1([^.,0-9]|$)": "`x` videos..([^.,0-9]|^)1([^.,0-9]|$)", - "`x` videos..": "`x` vídeos.", - "`x` playlists..([^.,0-9]|^)1([^.,0-9]|$)": "`x` listas de reprodução.", - "`x` playlists..": "`x` listas de reprodução.", + "`x` subscribers": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` subscritores", + "": "`x` subscritores" + }, + "`x` videos": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` videos", + "": "`x` vídeos" + }, + "`x` playlists": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` listas de reprodução", + "": "`x` listas de reprodução" + }, "LIVE": "Em direto", "Shared `x` ago": "Partilhado `x` atrás", "Unsubscribe": "Anular subscrição", @@ -116,16 +122,22 @@ "Subscription manager": "Gerir subscrições", "Token manager": "Gerir tokens", "Token": "Token", - "`x` subscriptions..([^.,0-9]|^)1([^.,0-9]|$)": "`x` subscrições.", - "`x` subscriptions..": "`x` subscrições.", - "`x` tokens..([^.,0-9]|^)1([^.,0-9]|$)": "`x` tokens.", - "`x` tokens..": "`x` tokens.", + "`x` subscriptions": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` subscrições", + "": "`x` subscrições" + }, + "`x` tokens": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` tokens", + "": "`x` tokens" + }, "Import/export": "Importar/Exportar", "unsubscribe": "Anular subscrição", "revoke": "revogar", "Subscriptions": "Subscrições", - "`x` unseen notifications..([^.,0-9]|^)1([^.,0-9]|$)": "`x` notificações não vistas.", - "`x` unseen notifications..": "`x` notificações não vistas.", + "`x` unseen notifications": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` notificações não vistas", + "": "`x` notificações não vistas" + }, "search": "Pesquisar", "Log out": "Terminar sessão", "Released under the AGPLv3 by Omar Roth.": "Publicado sob a licença AGPLv3, por Omar Roth.", @@ -155,15 +167,19 @@ "Whitelisted regions: ": "Regiões permitidas: ", "Blacklisted regions: ": "Regiões bloqueadas: ", "Shared `x`": "Partilhado `x`", - "`x` views..([^.,0-9]|^)1([^.,0-9]|$)": "`x` visualizações.", - "`x` views..": "`x` visualizações.", + "`x` views": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` visualizações", + "": "`x` visualizações" + }, "Premieres in `x`": "Estreias em 'x'", "Premieres `x`": "Estreias 'x'", "Hi! Looks like you have JavaScript turned off. Click here to view comments, keep in mind they may take a bit longer to load.": "Oi! Parece que JavaScript está desativado. Clique aqui para ver os comentários, entretanto eles podem levar mais tempo para carregar.", "View YouTube comments": "Ver comentários do YouTube", "View more comments on Reddit": "Ver mais comentários no Reddit", - "View `x` comments..([^.,0-9]|^)1([^.,0-9]|$)": "Ver `x` comentários.", - "View `x` comments..": "Ver `x` comentários.", + "View `x` comments": { + "([^.,0-9]|^)1([^.,0-9]|$)": "Ver `x` comentários", + "": "Ver `x` comentários" + }, "View Reddit comments": "Ver comentários do Reddit", "Hide replies": "Ocultar respostas", "Show replies": "Mostrar respostas", @@ -188,12 +204,16 @@ "This channel does not exist.": "Este canal não existe.", "Could not get channel info.": "Não foi possível obter as informações do canal.", "Could not fetch comments": "Não foi possível obter os comentários", - "View `x` replies..([^.,0-9]|^)1([^.,0-9]|$)": "Ver `x` respostas.", - "View `x` replies..": "Ver `x` respostas.", + "View `x` replies": { + "([^.,0-9]|^)1([^.,0-9]|$)": "Ver `x` respostas", + "": "Ver `x` respostas" + }, "`x` ago": "`x` atrás", "Load more": "Carregar mais", - "`x` points..([^.,0-9]|^)1([^.,0-9]|$)": "'x' pontos.", - "`x` points..": "'x' pontos.", + "`x` points": { + "([^.,0-9]|^)1([^.,0-9]|$)": "'x' pontos", + "": "'x' pontos" + }, "Could not create mix.": "Não foi possível criar mistura.", "Empty playlist": "Lista de reprodução vazia", "Not a playlist.": "Não é uma lista de reprodução.", @@ -311,20 +331,34 @@ "Yiddish": "Iídiche", "Yoruba": "Ioruba", "Zulu": "Zulu", - "`x` years..([^.,0-9]|^)1([^.,0-9]|$)": "`x` anos.", - "`x` years..": "`x` anos.", - "`x` months..([^.,0-9]|^)1([^.,0-9]|$)": "`x` meses.", - "`x` months..": "`x` meses.", - "`x` weeks..([^.,0-9]|^)1([^.,0-9]|$)": "`x` semanas.", - "`x` weeks..": "`x` semanas.", - "`x` days..([^.,0-9]|^)1([^.,0-9]|$)": "`x` dias.", - "`x` days..": "`x` dias.", - "`x` hours..([^.,0-9]|^)1([^.,0-9]|$)": "`x` horas.", - "`x` hours..": "`x` horas.", - "`x` minutes..([^.,0-9]|^)1([^.,0-9]|$)": "`x` minutos.", - "`x` minutes..": "`x` minutos.", - "`x` seconds..([^.,0-9]|^)1([^.,0-9]|$)": "`x` segundos.", - "`x` seconds..": "`x` segundos.", + "`x` years": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` anos", + "": "`x` anos" + }, + "`x` months": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` meses", + "": "`x` meses" + }, + "`x` weeks": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` semanas", + "": "`x` semanas" + }, + "`x` days": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` dias", + "": "`x` dias" + }, + "`x` hours": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` horas", + "": "`x` horas" + }, + "`x` minutes": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` minutos", + "": "`x` minutos" + }, + "`x` seconds": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` segundos", + "": "`x` segundos" + }, "Fallback comments: ": "Comentários alternativos: ", "Popular": "Popular", "Search": "", diff --git a/locales/zh-TW.json b/locales/zh-TW.json index d472e487..3ed81c71 100644 --- a/locales/zh-TW.json +++ b/locales/zh-TW.json @@ -1,9 +1,16 @@ { - "`x` subscribers.([^.,0-9]|^)1([^.,0-9]|$)": "`x` 個訂閱者", - "`x` subscribers.": "`x` 個訂閱者", - "`x` videos.([^.,0-9]|^)1([^.,0-9]|$)": "`x` 部影片", - "`x` videos.": "`x` 部影片", - "`x` playlists": "`x` 播放清單", + "`x` subscribers": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` 個訂閱者", + "": "`x` 個訂閱者" + }, + "`x` videos": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` 部影片", + "": "`x` 部影片" + }, + "`x` playlists": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` 播放清單", + "": "" + }, "LIVE": "直播", "Shared `x` ago": "`x` 前分享", "Unsubscribe": "取消訂閱", @@ -115,16 +122,22 @@ "Subscription manager": "訂閱管理員", "Token manager": "Token 管理員", "Token": "Token", - "`x` subscriptions.([^.,0-9]|^)1([^.,0-9]|$)": "`x` 個訂閱", - "`x` subscriptions.": "`x` 個訂閱", - "`x` tokens.([^.,0-9]|^)1([^.,0-9]|$)": "`x` token", - "`x` tokens.": "`x` 個存取金鑰", + "`x` subscriptions": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` 個訂閱", + "": "`x` 個訂閱" + }, + "`x` tokens": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` token", + "": "`x` 個存取金鑰" + }, "Import/export": "匯入/匯出", "unsubscribe": "取消訂閱", "revoke": "撤銷", "Subscriptions": "訂閱", - "`x` unseen notifications.([^.,0-9]|^)1([^.,0-9]|$)": "`x` 個未讀的通知", - "`x` unseen notifications.": "`x` 個未讀的通知", + "`x` unseen notifications": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` 個未讀的通知", + "": "`x` 個未讀的通知" + }, "search": "搜尋", "Log out": "登出", "Released under the AGPLv3 by Omar Roth.": "Omar Roth 以 AGPLv3 釋出。", @@ -154,8 +167,10 @@ "Whitelisted regions: ": "白名單區域: ", "Blacklisted regions: ": "黑名單區域: ", "Shared `x`": "`x` 發佈", - "`x` views.([^.,0-9]|^)1([^.,0-9]|$)": "`x` 次檢視", - "`x` views.": "`x` 次檢視", + "`x` views": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` 次檢視", + "": "`x` 次檢視" + }, "Premieres in `x`": "首映於 `x`", "Premieres `x`": "首映於 `x`", "Hi! Looks like you have JavaScript turned off. Click here to view comments, keep in mind they may take a bit longer to load.": "嗨!看來您將 JavaScript 關閉了。點擊這裡以檢視留言,請注意,它們可能需要比較長的時間載入。", @@ -186,12 +201,16 @@ "This channel does not exist.": "此頻道不存在。", "Could not get channel info.": "無法取得頻道資訊。", "Could not fetch comments": "無法擷取留言", - "View `x` replies.([^.,0-9]|^)1([^.,0-9]|$)": "檢視 `x` 則回覆", - "View `x` replies.": "檢視 `x` 則回覆", + "View `x` replies": { + "([^.,0-9]|^)1([^.,0-9]|$)": "檢視 `x` 則回覆", + "": "檢視 `x` 則回覆" + }, "`x` ago": "`x` 以前", "Load more": "載入更多", - "`x` points.([^.,0-9]|^)1([^.,0-9]|$)": "`x` 點", - "`x` points.": "`x` 點", + "`x` points": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` 點", + "": "`x` 點" + }, "Could not create mix.": "無法建立混合。", "Empty playlist": "空的播放清單", "Not a playlist.": "不是播放清單。", @@ -309,20 +328,34 @@ "Yiddish": "意第緒語", "Yoruba": "約魯巴語", "Zulu": "祖魯語", - "`x` years.([^.,0-9]|^)1([^.,0-9]|$)": "`x` 年", - "`x` years.": "`x` 年", - "`x` months.([^.,0-9]|^)1([^.,0-9]|$)": "`x` 月", - "`x` months.": "`x` 月", - "`x` weeks.([^.,0-9]|^)1([^.,0-9]|$)": "`x` 週", - "`x` weeks.": "`x` 週", - "`x` days.([^.,0-9]|^)1([^.,0-9]|$)": "`x` 天", - "`x` days.": "`x` 天", - "`x` hours.([^.,0-9]|^)1([^.,0-9]|$)": "`x` 小時", - "`x` hours.": "`x` 小時", - "`x` minutes.([^.,0-9]|^)1([^.,0-9]|$)": "`x` 天", - "`x` minutes.": "`x` 分鐘", - "`x` seconds.([^.,0-9]|^)1([^.,0-9]|$)": "`x` 秒", - "`x` seconds.": "`x` 秒", + "`x` years": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` 年", + "": "`x` 年" + }, + "`x` months": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` 月", + "": "`x` 月" + }, + "`x` weeks": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` 週", + "": "`x` 週" + }, + "`x` days": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` 天", + "": "`x` 天" + }, + "`x` hours": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` 小時", + "": "`x` 小時" + }, + "`x` minutes": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` 天", + "": "`x` 分鐘" + }, + "`x` seconds": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` 秒", + "": "`x` 秒" + }, "Fallback comments: ": "汰退留言: ", "Popular": "熱門頻道", "Search": "", From 0e000e44aac08b385cee93d2120330b441299c6f Mon Sep 17 00:00:00 2001 From: Samantaz Fox Date: Thu, 25 Mar 2021 01:40:55 +0100 Subject: [PATCH 07/11] Make the linter happy, again --- spec/locales_spec.cr | 2 -- 1 file changed, 2 deletions(-) diff --git a/spec/locales_spec.cr b/spec/locales_spec.cr index 0bdfc13b..6a083ee7 100644 --- a/spec/locales_spec.cr +++ b/spec/locales_spec.cr @@ -3,7 +3,6 @@ require "json" require "../src/invidious/helpers/i18n.cr" describe "Locales" do - describe "#consistency" do locales_list = LOCALES.keys.select! { |key| key != "en-US" } @@ -27,5 +26,4 @@ describe "Locales" do failed.should be_false end end - end From 21f91415008c60a31c4de24a792983db0c1581bc Mon Sep 17 00:00:00 2001 From: Samantaz Fox Date: Sun, 28 Mar 2021 03:58:12 +0200 Subject: [PATCH 08/11] Add missing fields to locales (part 5) * Also includes minor fixes when I could (french, italian, icelandic) * Added a new line at the end of en-US translation. Updated ar.json (Arabic) Updated el.json (Greek) Updated fa.json (Persian) Updated fr.json (French) Updated is.json (Icelandic) Updated it.json (Italian) Updated tr.json (Turkish) Updated zh-TW.json (Chinese, Taiwan) --- locales/ar.json | 85 ++++++++++++++++++++++++++++-------- locales/el.json | 5 ++- locales/fa.json | 2 +- locales/fr.json | 87 +++++++++++++++++++++++++++++-------- locales/is.json | 104 +++++++++++++++++++++++++++++--------------- locales/it.json | 5 ++- locales/tr.json | 105 ++++++++++++++++++++++++++++++++------------- locales/zh-TW.json | 5 ++- 8 files changed, 294 insertions(+), 104 deletions(-) diff --git a/locales/ar.json b/locales/ar.json index b326fa80..540e4df0 100644 --- a/locales/ar.json +++ b/locales/ar.json @@ -1,7 +1,16 @@ { - "`x` subscribers": "`x` المشتركين", - "`x` videos": "`x` الفيديوهات", - "`x` playlists": "`x` قوائم التشغيل", + "`x` subscribers": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` المشتركين", + "": "`x` المشتركين" + }, + "`x` videos": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` الفيديوهات", + "": "`x` الفيديوهات" + }, + "`x` playlists": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` قوائم التشغيل", + "": "`x` قوائم التشغيل" + }, "LIVE": "مباشر", "Shared `x` ago": "تم رفع الفيديو منذ `x`", "Unsubscribe": "إلغاء الإشتراك", @@ -113,13 +122,22 @@ "Subscription manager": "مدير الإشتراكات", "Token manager": "إداره الرمز", "Token": "الرمز", - "`x` subscriptions": "`x` مشتركين", - "`x` tokens": "`x` رموز", + "`x` subscriptions": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` مشتركين", + "": "`x` مشتركين" + }, + "`x` tokens": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` رموز", + "": "`x` رموز" + }, "Import/export": "إضافة\\إستخراج", "unsubscribe": "إلغاء الإشتراك", "revoke": "مسح", "Subscriptions": "الإشتراكات", - "`x` unseen notifications": "`x` إشعارات لم تشاهدها بعد", + "`x` unseen notifications": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` إشعارات لم تشاهدها بعد", + "": "`x` إشعارات لم تشاهدها بعد" + }, "search": "بحث", "Log out": "تسجيل الخروج", "Released under the AGPLv3 by Omar Roth.": "تم الإنشاء تحت AGPLv3 بواسطة عمر روث.", @@ -149,13 +167,19 @@ "Whitelisted regions: ": "الدول المسموح فيها هذا الفيديو: ", "Blacklisted regions: ": "الدول الحظور فيها هذا الفيديو: ", "Shared `x`": "شارك منذ `x`", - "`x` views": "`x` مشاهدات", + "`x` views": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` مشاهدات", + "": "`x` مشاهدات" + }, "Premieres in `x`": "يعرض فى `x`", "Premieres `x`": "يعرض `x`", "Hi! Looks like you have JavaScript turned off. Click here to view comments, keep in mind they may take a bit longer to load.": "اهلا! يبدو ان الجافاسكريبت معطلة. اضغط هنا لعرض التعليقات, ضع فى إعتبارك انها ستأخذ وقت اطول للعرض.", "View YouTube comments": "عرض تعليقات اليوتيوب", "View more comments on Reddit": "عرض المزيد من التعليقات على\\من موقع Reddit", - "View `x` comments": "عرض `x` تعليقات", + "View `x` comments": { + "([^.,0-9]|^)1([^.,0-9]|$)": "عرض `x` تعليقات", + "": "عرض `x` تعليقات" + }, "View Reddit comments": "عرض تعليقات ريدإت Reddit", "Hide replies": "إخفاء الردود", "Show replies": "عرض الردود", @@ -180,10 +204,16 @@ "This channel does not exist.": "القناة غير موجودة.", "Could not get channel info.": "لم يستطع الحصول على معلومات القناة.", "Could not fetch comments": "لم يتمكن من إحضار التعليقات", - "View `x` replies": "عرض `x` ردود", + "View `x` replies": { + "([^.,0-9]|^)1([^.,0-9]|$)": "عرض `x` ردود", + "": "عرض `x` ردود" + }, "`x` ago": "`x` منذ", "Load more": "عرض المزيد", - "`x` points": "`x` نقاط", + "`x` points": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` نقاط", + "": "`x` نقاط" + }, "Could not create mix.": "لم يستطع عمل خلط.", "Empty playlist": "قائمة التشغيل فارغة", "Not a playlist.": "قائمة التشغيل غير صالحة.", @@ -301,13 +331,34 @@ "Yiddish": "اليديشية", "Yoruba": "اليوروبا", "Zulu": "الزولو", - "`x` years": "`x` سنوات", - "`x` months": "`x` شهور", - "`x` weeks": "`x` اسابيع", - "`x` days": "`x` ايام", - "`x` hours": "`x` ساعات", - "`x` minutes": "`x` دقائق", - "`x` seconds": "`x` ثوانى", + "`x` years": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` سنوات", + "": "`x` سنوات" + }, + "`x` months": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` شهور", + "": "`x` شهور" + }, + "`x` weeks": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` اسابيع", + "": "`x` اسابيع" + }, + "`x` days": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` ايام", + "": "`x` ايام" + }, + "`x` hours": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` ساعات", + "": "`x` ساعات" + }, + "`x` minutes": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` دقائق", + "": "`x` دقائق" + }, + "`x` seconds": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` ثوانى", + "": "`x` ثوانى" + }, "Fallback comments: ": "التعليقات البديلة: ", "Popular": "الأكثر شعبية", "Search": "", diff --git a/locales/el.json b/locales/el.json index 9ee9f50f..96d7fe7d 100644 --- a/locales/el.json +++ b/locales/el.json @@ -176,7 +176,10 @@ "Hi! Looks like you have JavaScript turned off. Click here to view comments, keep in mind they may take a bit longer to load.": "Γεια! Φαίνεται πως έχετε απενεργοποιήσει το JavaScript. Πατήστε εδώ για προβολή σχολίων, αλλά έχετε υπ'όψιν σας πως ίσως φορτώσουν πιο αργά.", "View YouTube comments": "Προβολή σχολίων από το YouTube", "View more comments on Reddit": "Προβολή περισσότερων σχολίων στο Reddit", - "View `x` comments": "Προβολή `x` σχολίων", + "View `x` comments": { + "([^.,0-9]|^)1([^.,0-9]|$)": "Προβολή `x` σχολίων", + "": "Προβολή `x` σχολίων" + }, "View Reddit comments": "Προβολή σχολίων από το Reddit", "Hide replies": "Απόκρυψη απαντήσεων", "Show replies": "Προβολή απαντήσεων", diff --git a/locales/fa.json b/locales/fa.json index a973b78d..837237d3 100644 --- a/locales/fa.json +++ b/locales/fa.json @@ -357,7 +357,7 @@ }, "`x` seconds": { "([^.,0-9]|^)1([^.,0-9]|$)": "`x` ثانیه", - "`x` seconds.": "`x` ثانیه" + "": "`x` ثانیه" }, "Fallback comments: ": "نظرات عقب گرد: ", "Popular": "محبوب", diff --git a/locales/fr.json b/locales/fr.json index 639e27b2..3b494c59 100644 --- a/locales/fr.json +++ b/locales/fr.json @@ -1,7 +1,16 @@ { - "`x` subscribers": "`x` abonnés", - "`x` videos": "`x` vidéos", - "`x` playlists": "`x` listes de lecture", + "`x` subscribers": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` abonné", + "": "`x` abonnés" + }, + "`x` videos": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` vidéo", + "": "`x` vidéos" + }, + "`x` playlists": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` liste de lecture", + "": "`x` listes de lecture" + }, "LIVE": "EN DIRECT", "Shared `x` ago": "Ajoutée il y a `x`", "Unsubscribe": "Se désabonner", @@ -91,7 +100,7 @@ "Only show unwatched: ": "Afficher uniquement les vidéos qui n'ont pas été regardées : ", "Only show notifications (if there are any): ": "Afficher uniquement les notifications (s'il y en a) : ", "Enable web notifications": "Activer les notifications web", - "`x` uploaded a video": "`x` a partagé(e) une vidéo", + "`x` uploaded a video": "`x` a partagé une vidéo", "`x` is live": "`x` est en direct", "Data preferences": "Préférences liées aux données", "Clear watch history": "Supprimer l'historique des vidéos regardées", @@ -113,13 +122,22 @@ "Subscription manager": "Gestionnaire d'abonnement", "Token manager": "Gestionnaire de tokens", "Token": "Token", - "`x` subscriptions": "`x` abonnements", - "`x` tokens": "`x` tokens", + "`x` subscriptions": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` abonnements", + "": "`x` abonnements" + }, + "`x` tokens": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` token", + "": "`x` tokens" + }, "Import/export": "Importer/Exporter", "unsubscribe": "se désabonner", "revoke": "révoquer", "Subscriptions": "Abonnements", - "`x` unseen notifications": "`x` notifications non vues", + "`x` unseen notifications": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` notification non vue", + "": "`x` notifications non vues" + }, "search": "rechercher", "Log out": "Déconnexion", "Released under the AGPLv3 by Omar Roth.": "Publié sous licence AGPLv3 par Omar Roth.", @@ -149,13 +167,19 @@ "Whitelisted regions: ": "Régions sur liste blanche : ", "Blacklisted regions: ": "Régions sur liste noire : ", "Shared `x`": "Ajoutée le `x`", - "`x` views": "`x` vues", + "`x` views": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` vues", + "": "`x` vues" + }, "Premieres in `x`": "Première dans `x`", "Premieres `x`": "Première le `x`", "Hi! Looks like you have JavaScript turned off. Click here to view comments, keep in mind they may take a bit longer to load.": "Il semblerait que JavaScript soit désactivé. Cliquez ici pour voir les commentaires, mais gardez à l'esprit que le chargement peut prendre plus de temps.", "View YouTube comments": "Voir les commentaires YouTube", "View more comments on Reddit": "Voir plus de commentaires sur Reddit", - "View `x` comments": "Voir `x` commentaires", + "View `x` comments": { + "([^.,0-9]|^)1([^.,0-9]|$)": "Voir `x` commentaire", + "": "Voir `x` commentaires" + }, "View Reddit comments": "Voir les commentaires Reddit", "Hide replies": "Masquer les réponses", "Show replies": "Afficher les réponses", @@ -180,10 +204,16 @@ "This channel does not exist.": "Cette chaine n'existe pas.", "Could not get channel info.": "Impossible de charger les informations de cette chaîne.", "Could not fetch comments": "Impossible de charger les commentaires", - "View `x` replies": "Voir `x` réponses", + "View `x` replies": { + "([^.,0-9]|^)1([^.,0-9]|$)": "Voir `x` réponse", + "": "Voir `x` réponses" + }, "`x` ago": "il y a `x`", "Load more": "Voir plus", - "`x` points": "`x` points", + "`x` points": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` point", + "": "`x` points" + }, "Could not create mix.": "Impossible de charger cette liste de lecture.", "Empty playlist": "La liste de lecture est vide", "Not a playlist.": "La liste de lecture est invalide.", @@ -301,13 +331,34 @@ "Yiddish": "Yiddish", "Yoruba": "Yoruba", "Zulu": "Zoulou", - "`x` years": "`x` ans", - "`x` months": "`x` mois", - "`x` weeks": "`x` semaines", - "`x` days": "`x` jours", - "`x` hours": "`x` heures", - "`x` minutes": "`x` minutes", - "`x` seconds": "`x` secondes", + "`x` years": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` an", + "": "`x` ans" + }, + "`x` months": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` mois", + "": "`x` mois" + }, + "`x` weeks": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` semaine", + "": "`x` semaines" + }, + "`x` days": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` jour", + "": "`x` jours" + }, + "`x` hours": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` heure", + "": "`x` heures" + }, + "`x` minutes": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` minute", + "": "`x` minutes" + }, + "`x` seconds": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` seconde", + "": "`x` secondes" + }, "Fallback comments: ": "Commentaires alternatifs : ", "Popular": "Populaire", "Search": "", diff --git a/locales/is.json b/locales/is.json index 49bdec7c..8bf1ad8f 100644 --- a/locales/is.json +++ b/locales/is.json @@ -1,9 +1,16 @@ { - "`x` subscribers": "`x`áskrifendur", - "`x` videos": "`x` myndbönd", - "`x` playlists": "`x` spilunarlistar", - "`x` subscribers.": "`x` áskrifandar.", - "`x` videos.": "`x` myndbönd.", + "`x` subscribers": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` áskrifandar", + "": "`x` áskrifendur" + }, + "`x` videos": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` myndband", + "": "`x` myndbönd" + }, + "`x` playlists": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` spilunarlist", + "": "`x` spilunarlistar" + }, "LIVE": "BEINT", "Shared `x` ago": "Deilt `x` síðan", "Unsubscribe": "Afskrá", @@ -113,18 +120,24 @@ "Report statistics: ": "Skrá talnagögn? ", "Save preferences": "Vista stillingar", "Subscription manager": "Áskriftarstjóri", - "`x` subscriptions": "`x` áskrifendur", - "`x` tokens": "`x` tákn", "Token manager": "Táknstjóri", "Token": "Tákn", - "`x` subscriptions.": "`x` áskriftir.", - "`x` tokens.": "`x` tákn.", - "`x` unseen notifications": "`x` óséðar tilkynningar", + "`x` subscriptions": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` áskriftur", + "": "`x` áskriftir" + }, + "`x` tokens": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` tákn", + "": "`x` tákn" + }, "Import/export": "Flytja inn/út", "unsubscribe": "afskrá", "revoke": "afturkalla", "Subscriptions": "Áskriftir", - "`x` unseen notifications.": "`x` óséðar tilkynningar.", + "`x` unseen notifications": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` óséðar tilkynning", + "": "`x` óséðar tilkynningar" + }, "search": "leita", "Log out": "Útskrá", "Released under the AGPLv3 by Omar Roth.": "Útgefið undir AGPLv3 eftir Omar Roth.", @@ -149,19 +162,24 @@ "Genre: ": "Tegund: ", "License: ": "Notkunarleyfi: ", "Family friendly? ": "Fjölskylduvænt? ", - "`x` views": "`x` áhorf", "Wilson score: ": "Wilson stig: ", "Engagement: ": "Þátttöku: ", "Whitelisted regions: ": "Svæði á hvítum lista: ", "Blacklisted regions: ": "Svæði á svörtum lista: ", "Shared `x`": "Deilt `x`", - "`x` views.": "`x` áhorf.", + "`x` views": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` áhorf", + "": "`x` áhorf" + }, "Premieres in `x`": "Frumflutt eftir `x`", "Premieres `x`": "Frumflutt `x`", "Hi! Looks like you have JavaScript turned off. Click here to view comments, keep in mind they may take a bit longer to load.": "Hæ! Lítur út eins og þú hafir slökkt á JavaScript. Smelltu hér til að skoða ummæli, hafðu í huga að þær geta tekið aðeins lengri tíma að hlaða.", "View YouTube comments": "Skoða YouTube ummæli", "View more comments on Reddit": "Skoða fleiri ummæli á Reddit", - "View `x` comments": "Skoða `x` ummæli", + "View `x` comments": { + "([^.,0-9]|^)1([^.,0-9]|$)": "Skoða `x` ummæli", + "": "Skoða `x` ummæli" + }, "View Reddit comments": "Skoða Reddit ummæli", "Hide replies": "Fela svör", "Show replies": "Sýna svör", @@ -180,18 +198,22 @@ "Password cannot be empty": "Lykilorð má ekki vera autt", "Password cannot be longer than 55 characters": "Lykilorð má ekki vera lengra en 55 stafir", "Please log in": "Vinsamlegast skráðu þig inn", - "View `x` replies": "Skoða `x` svör", "Invidious Private Feed for `x`": "Invidious Persónulegur Straumur fyrir `x`", "channel:`x`": "rás:`x`", - "`x` points": "`x` stig", "Deleted or invalid channel": "Eytt eða ógild rás", "This channel does not exist.": "Þessi rás er ekki til.", "Could not get channel info.": "Ekki tókst að fá rásarupplýsingar.", "Could not fetch comments": "Ekki tókst að sækja ummæli", - "View `x` replies.": "Skoða `x` svör.", + "View `x` replies": { + "([^.,0-9]|^)1([^.,0-9]|$)": "Skoða `x` svar", + "": "Skoða `x` svör" + }, "`x` ago": "`x` síðan", "Load more": "Hlaða meira", - "`x` points.": "`x` stig.", + "`x` points": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` stig", + "": "`x` stig" + }, "Could not create mix.": "Ekki tókst að búa til blöndu.", "Empty playlist": "Tómur spilunarlisti", "Not a playlist.": "Ekki spilunarlisti.", @@ -301,13 +323,6 @@ "Turkish": "Tyrkneska", "Ukrainian": "Úkraníska", "Urdu": "Úrdú", - "`x` years": "`x` ár", - "`x` months": "`x` mánuði", - "`x` weeks": "`x` vikur", - "`x` days": "`x` daga", - "`x` hours": "`x` klukkustundir", - "`x` minutes": "`x` mínútur", - "`x` seconds": "`x` sekúndur", "Uzbek": "Úsbekíska", "Vietnamese": "Víetnamska", "Welsh": "Velska", @@ -316,13 +331,34 @@ "Yiddish": "Jiddíska", "Yoruba": "Jórúba", "Zulu": "Zúlú", - "`x` years.": "`x` ár.", - "`x` months.": "`x` mánuði.", - "`x` weeks.": "`x` vikur.", - "`x` days.": "`x` dagar.", - "`x` hours.": "`x` klukkustundir.", - "`x` minutes.": "`x` mínútur.", - "`x` seconds.": "`x` sekúndur.", + "`x` years": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` ár", + "": "`x` ár" + }, + "`x` months": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` mánuð", + "": "`x` mánuði" + }, + "`x` weeks": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` vika", + "": "`x` vikur" + }, + "`x` days": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` dagur", + "": "`x` dagar" + }, + "`x` hours": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` klukkustund", + "": "`x` klukkustundir" + }, + "`x` minutes": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` mínúta", + "": "`x` mínútur" + }, + "`x` seconds": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` sekúnda", + "": "`x` sekúndur" + }, "Fallback comments: ": "Vara ummæli: ", "Popular": "Vinsælt", "Search": "", @@ -331,7 +367,6 @@ "Rating: ": "Einkunn: ", "Language: ": "Tungumál: ", "View as playlist": "Skoða sem spilunarlista", - "Community": "Samfélag", "Default": "Sjálfgefið", "Music": "Tónlist", "Gaming": "Tólvuleikja", @@ -348,6 +383,7 @@ "Video mode": "Myndband ham", "Videos": "Myndbönd", "Playlists": "Spilunarlistar", + "Community": "Samfélag", "relevance": "", "rating": "", "date": "", @@ -376,4 +412,4 @@ "hdr": "", "filter": "", "Current version: ": "Núverandi útgáfa: " -} \ No newline at end of file +} diff --git a/locales/it.json b/locales/it.json index 354cf884..66471725 100644 --- a/locales/it.json +++ b/locales/it.json @@ -176,7 +176,10 @@ "Hi! Looks like you have JavaScript turned off. Click here to view comments, keep in mind they may take a bit longer to load.": "Ciao! Sembra che tu abbia disattivato JavaScript. Clicca qui per visualizzare i commenti. Considera che potrebbe volerci più tempo.", "View YouTube comments": "Visualizza i commenti da YouTube", "View more comments on Reddit": "Visualizza più commenti su Reddit", - "View `x` comments": "Visualizza `x` commenti", + "View `x` comments": { + "([^.,0-9]|^)1([^.,0-9]|$)": "Visualizza `x` commento", + "": "Visualizza `x` commenti" + }, "View Reddit comments": "Visualizza i commenti da Reddit", "Hide replies": "Nascondi le risposte", "Show replies": "Mostra le risposte", diff --git a/locales/tr.json b/locales/tr.json index 0dd68b52..ba9bd0ba 100644 --- a/locales/tr.json +++ b/locales/tr.json @@ -1,9 +1,16 @@ { - "`x` subscribers": "`x` abone", - "`x` videos": "`x` video", - "`x` playlists": "`x` çalma listesi", - "`x` subscribers.": "`x` abone.", - "`x` videos.": "`x` video.", + "`x` subscribers": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` abone", + "": "`x` abone" + }, + "`x` videos": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` video", + "": "`x` video" + }, + "`x` playlists": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` çalma listesi", + "": "`x` çalma listesi" + }, "LIVE": "CANLI", "Shared `x` ago": "`x` önce paylaşıldı", "Unsubscribe": "Abonelikten çık", @@ -113,22 +120,33 @@ "Report statistics: ": "Rapor istatistikleri: ", "Save preferences": "Tercihleri kaydet", "Subscription manager": "Abonelik yöneticisi", - "`x` subscriptions": "`x` abonelik", - "`x` tokens": "`x` belirteç", "Token manager": "Jeton yöneticisi", "Token": "Jeton", - "`x` subscriptions.": "`x` abonelik.", - "`x` tokens.": "`x` jeton.", - "`x` unseen notifications": "`x` okunmamış bildirim", + "`x` subscriptions": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` abonelik", + "": "`x` abonelik" + }, + "`x` tokens": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` belirteç", + "": "`x` belirteç" + }, "Import/export": "İçe/dışa aktar", "unsubscribe": "abonelikten çık", "revoke": "geri al", "Subscriptions": "Abonelikler", - "`x` unseen notifications.": "`x` okunmamış bildirim.", + "`x` unseen notifications": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` okunmamış bildirim", + "": "`x` okunmamış bildirim" + }, "search": "ara", "Log out": "Çıkış yap", - "Public": "Genel", "Released under the AGPLv3 by Omar Roth.": "Omar Roth tarafından AGPLv3 altında yayımlandı.", + "Source available here.": "Kaynak kodları burada bulunabilir.", + "View JavaScript license information.": "JavaScript lisans bilgilerini görüntüle.", + "View privacy policy.": "Gizlilik politikasını görüntüle.", + "Trending": "Trendler", + "Public": "Genel", + "Unlisted": "Listelenmemiş", "Private": "Özel", "View all playlists": "Tüm çalma listelerini görüntüle", "Updated `x` ago": "`x` önce güncellendi", @@ -138,30 +156,30 @@ "Title": "Başlık", "Playlist privacy": "Çalma listesi gizliliği", "Editing playlist `x`": "`x` çalma listesi düzenleniyor", - "Source available here.": "Kaynak kodları burada bulunabilir.", - "View JavaScript license information.": "JavaScript lisans bilgilerini görüntüle.", - "View privacy policy.": "Gizlilik politikasını görüntüle.", - "Trending": "Trendler", - "Unlisted": "Listelenmemiş", "Watch on YouTube": "YouTube'da izle", "Hide annotations": "Ek açıklamaları gizle", "Show annotations": "Ek açıklamaları göster", "Genre: ": "Tür: ", "License: ": "Lisans: ", "Family friendly? ": "Aile için uygun? ", - "`x` views": "`x` görüntüleme", "Wilson score: ": "Wilson puanı: ", "Engagement: ": "İzleyenlerin oy verme oranı: ", "Whitelisted regions: ": "Beyaz listeye alınan bölgeler: ", "Blacklisted regions: ": "Kara listeye alınan bölgeler: ", "Shared `x`": "`x` paylaşıldı", - "`x` views.": "`x` izlenme.", + "`x` views": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` görüntüleme", + "": "`x` görüntüleme" + }, "Premieres in `x`": "`x`içinde ilk gösterim", "Premieres `x`": "`x` ilk gösterim", "Hi! Looks like you have JavaScript turned off. Click here to view comments, keep in mind they may take a bit longer to load.": "Merhaba! JavaScript'i kapatmış gibi görünüyorsun. Yorumları görüntülemek için buraya tıkla, yüklenmelerinin biraz uzun sürebileceğini unutma.", "View YouTube comments": "YouTube yorumlarını görüntüle", "View more comments on Reddit": "Reddit'te daha fazla yorum görüntüle", - "View `x` comments": "`x` yorum görüntüle", + "View `x` comments": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` yorum görüntüle", + "": "`x` yorum görüntüle" + }, "View Reddit comments": "Reddit yorumlarını görüntüle", "Hide replies": "Cevapları gizle", "Show replies": "Cevapları göster", @@ -180,18 +198,22 @@ "Password cannot be empty": "Parola boş olamaz", "Password cannot be longer than 55 characters": "Parola 55 karakterden uzun olamaz", "Please log in": "Lütfen oturum açın", - "View `x` replies": "`x` yanıtı görüntüle", "Invidious Private Feed for `x`": "`x` için İnvidious Özel Akışı", "channel:`x`": "kanal:`x`", - "`x` points": "`x` puan", "Deleted or invalid channel": "Silinmiş ya da geçersiz kanal", "This channel does not exist.": "Bu kanal mevcut değil.", "Could not get channel info.": "Kanal bilgisi alınamadı.", "Could not fetch comments": "Yorumlar alınamadı", - "View `x` replies.": "`x` yanıtı görüntüle.", + "View `x` replies": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` yanıtı görüntüle", + "": "`x` yanıtı görüntüle" + }, "`x` ago": "`x` önce", "Load more": "Daha fazla yükle", - "`x` points.": "`x` puan.", + "`x` points": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` puan", + "": "`x` puan" + }, "Could not create mix.": "Mix oluşturulamadı.", "Empty playlist": "Boş oynatma listesi", "Not a playlist.": "Oynatma listesi değil.", @@ -309,13 +331,34 @@ "Yiddish": "Yiddiş", "Yoruba": "Yoruba dili", "Zulu": "Zuluca", - "`x` years": "`x` yıl", - "`x` months": "`x` ay", - "`x` weeks": "`x` hafta", - "`x` days": "`x` gün", - "`x` hours": "`x` saat", - "`x` minutes": "`x` dakika", - "`x` seconds": "`x` saniye", + "`x` years": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` yıl", + "": "`x` yıl" + }, + "`x` months": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` ay", + "": "`x` ay" + }, + "`x` weeks": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` hafta", + "": "`x` hafta" + }, + "`x` days": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` gün", + "": "`x` gün" + }, + "`x` hours": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` saat", + "": "`x` saat" + }, + "`x` minutes": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` dakika", + "": "`x` dakika" + }, + "`x` seconds": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` saniye", + "": "`x` saniye" + }, "Fallback comments: ": "Yedek yorumlar: ", "Popular": "Popüler", "Search": "", diff --git a/locales/zh-TW.json b/locales/zh-TW.json index 3ed81c71..7a32ec9b 100644 --- a/locales/zh-TW.json +++ b/locales/zh-TW.json @@ -176,7 +176,10 @@ "Hi! Looks like you have JavaScript turned off. Click here to view comments, keep in mind they may take a bit longer to load.": "嗨!看來您將 JavaScript 關閉了。點擊這裡以檢視留言,請注意,它們可能需要比較長的時間載入。", "View YouTube comments": "檢視 YouTube 留言", "View more comments on Reddit": "在 Reddit 上檢視更多留言", - "View `x` comments": "檢視 `x` 則留言", + "View `x` comments": { + "([^.,0-9]|^)1([^.,0-9]|$)": "檢視 `x` 則留言", + "": "檢視 `x` 則留言" + }, "View Reddit comments": "檢視 Reddit 留言", "Hide replies": "隱藏回覆", "Show replies": "顯示回覆", From a52e9be3e812506003d675ae1d25ec9a4230b071 Mon Sep 17 00:00:00 2001 From: Samantaz Fox Date: Sun, 28 Mar 2021 21:08:14 +0200 Subject: [PATCH 09/11] Add missing fields to locales (part 6) Updated da.json (Danish) Updated de.json (German) Updated eo.json (Esperando) Updated es.json (Spanigh) Updated nb-NO.json (Norvegian) Updated nl.json (Dutch) Updated pl.json (Polish) Updated pt-BR.json (Portuguese, Brasil) Updated ro.json (Romanian) Updated ru.json (Russian) Updated sv-SE.json (Swedish) Updated uk.json (Ukrainian) Updated zh-CN.json (Chinese, China) --- locales/da.json | 27 +++++++++++++++ locales/de.json | 85 ++++++++++++++++++++++++++++++++++++---------- locales/eo.json | 85 ++++++++++++++++++++++++++++++++++++---------- locales/es.json | 85 ++++++++++++++++++++++++++++++++++++---------- locales/nb-NO.json | 85 ++++++++++++++++++++++++++++++++++++---------- locales/nl.json | 85 ++++++++++++++++++++++++++++++++++++---------- locales/pl.json | 85 ++++++++++++++++++++++++++++++++++++---------- locales/pt-BR.json | 85 ++++++++++++++++++++++++++++++++++++---------- locales/ro.json | 85 ++++++++++++++++++++++++++++++++++++---------- locales/ru.json | 85 ++++++++++++++++++++++++++++++++++++---------- locales/sv-SE.json | 85 ++++++++++++++++++++++++++++++++++++---------- locales/uk.json | 85 ++++++++++++++++++++++++++++++++++++---------- locales/zh-CN.json | 85 ++++++++++++++++++++++++++++++++++++---------- 13 files changed, 843 insertions(+), 204 deletions(-) diff --git a/locales/da.json b/locales/da.json index b52905c3..d01080f5 100644 --- a/locales/da.json +++ b/locales/da.json @@ -384,5 +384,32 @@ "Videos": "", "Playlists": "", "Community": "", + "relevance": "", + "rating": "", + "date": "", + "views": "", + "content_type": "", + "duration": "", + "features": "", + "sort": "", + "hour": "", + "today": "", + "week": "", + "month": "", + "year": "", + "video": "", + "channel": "", + "playlist": "", + "movie": "", + "show": "", + "hd": "", + "subtitles": "", + "creative_commons": "", + "3d": "", + "live": "", + "4k": "", + "location": "", + "hdr": "", + "filter": "", "Current version: ": "" } \ No newline at end of file diff --git a/locales/de.json b/locales/de.json index eff559fb..1985e43a 100644 --- a/locales/de.json +++ b/locales/de.json @@ -1,7 +1,16 @@ { - "`x` subscribers": "`x` Abonnenten", - "`x` videos": "`x` Videos", - "`x` playlists": "`x` Wiedergabelisten", + "`x` subscribers": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` Abonnenten", + "": "`x` Abonnenten" + }, + "`x` videos": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` Videos", + "": "`x` Videos" + }, + "`x` playlists": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` Wiedergabelisten", + "": "`x` Wiedergabelisten" + }, "LIVE": "LIVE", "Shared `x` ago": "Vor `x` geteilt", "Unsubscribe": "Abbestellen", @@ -113,13 +122,22 @@ "Subscription manager": "Abonnementverwaltung", "Token manager": "Tokenverwalter", "Token": "Token", - "`x` subscriptions": "`x` Abonnements", - "`x` tokens": "`x` Tokens", + "`x` subscriptions": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` Abonnements", + "": "`x` Abonnements" + }, + "`x` tokens": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` Tokens", + "": "`x` Tokens" + }, "Import/export": "Importieren/Exportieren", "unsubscribe": "abbestellen", "revoke": "widerrufen", "Subscriptions": "Abonnements", - "`x` unseen notifications": "`x` ungesehene Benachrichtigungen", + "`x` unseen notifications": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` ungesehene Benachrichtigungen", + "": "`x` ungesehene Benachrichtigungen" + }, "search": "Suchen", "Log out": "Abmelden", "Released under the AGPLv3 by Omar Roth.": "Veröffentlicht unter AGPLv3 von Omar Roth.", @@ -149,13 +167,19 @@ "Whitelisted regions: ": "Erlaubte Regionen: ", "Blacklisted regions: ": "Unerlaubte Regionen: ", "Shared `x`": "Geteilt `x`", - "`x` views": "`x` Aufrufe", + "`x` views": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` Aufrufe", + "": "`x` Aufrufe" + }, "Premieres in `x`": "Zuerst gesehen in `x`", "Premieres `x`": "Erster Start `x`", "Hi! Looks like you have JavaScript turned off. Click here to view comments, keep in mind they may take a bit longer to load.": "Hallo! Anscheinend haben Sie JavaScript deaktiviert. Klicken Sie hier um Kommentare anzuzeigen, beachten sie dass es etwas länger dauern kann um sie zu laden.", "View YouTube comments": "YouTube Kommentare anzeigen", "View more comments on Reddit": "Mehr Kommentare auf Reddit anzeigen", - "View `x` comments": "`x` Kommentare anzeigen", + "View `x` comments": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` Kommentare anzeigen", + "": "`x` Kommentare anzeigen" + }, "View Reddit comments": "Reddit Kommentare anzeigen", "Hide replies": "Antworten verstecken", "Show replies": "Antworten anzeigen", @@ -180,10 +204,16 @@ "This channel does not exist.": "Dieser Kanal existiert nicht.", "Could not get channel info.": "Kanalinformationen konnten nicht geladen werden.", "Could not fetch comments": "Kommentare konnten nicht geladen werden", - "View `x` replies": "Zeige `x` Antworten", + "View `x` replies": { + "([^.,0-9]|^)1([^.,0-9]|$)": "Zeige `x` Antworten", + "": "Zeige `x` Antworten" + }, "`x` ago": "vor `x`", "Load more": "Mehr laden", - "`x` points": "`x` Punkte", + "`x` points": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` Punkte", + "": "`x` Punkte" + }, "Could not create mix.": "Mix konnte nicht erstellt werden.", "Empty playlist": "Playlist ist leer", "Not a playlist.": "Ungültige Playlist.", @@ -301,13 +331,34 @@ "Yiddish": "Jiddisch", "Yoruba": "Joruba", "Zulu": "Zulu", - "`x` years": "`x` Jahre", - "`x` months": "`x` Monate", - "`x` weeks": "`x` Wochen", - "`x` days": "`x` Tage", - "`x` hours": "`x` Stunden", - "`x` minutes": "`x` Minuten", - "`x` seconds": "`x` Sekunden", + "`x` years": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` Jahre", + "": "`x` Jahre" + }, + "`x` months": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` Monate", + "": "`x` Monate" + }, + "`x` weeks": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` Wochen", + "": "`x` Wochen" + }, + "`x` days": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` Tage", + "": "`x` Tage" + }, + "`x` hours": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` Stunden", + "": "`x` Stunden" + }, + "`x` minutes": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` Minuten", + "": "`x` Minuten" + }, + "`x` seconds": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` Sekunden", + "": "`x` Sekunden" + }, "Fallback comments: ": "Alternative Kommentare: ", "Popular": "Populär", "Search": "", diff --git a/locales/eo.json b/locales/eo.json index de120b0e..baf2e2d0 100644 --- a/locales/eo.json +++ b/locales/eo.json @@ -1,7 +1,16 @@ { - "`x` subscribers": "`x` abonantoj", - "`x` videos": "`x` filmetoj", - "`x` playlists": "`x` ludlistoj", + "`x` subscribers": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` abonantoj", + "": "`x` abonantoj" + }, + "`x` videos": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` filmetoj", + "": "`x` filmetoj" + }, + "`x` playlists": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` ludlistoj", + "": "`x` ludlistoj" + }, "LIVE": "NUNA", "Shared `x` ago": "Konigita antaŭ `x`", "Unsubscribe": "Malabonu", @@ -113,13 +122,22 @@ "Subscription manager": "Administrilo de abonoj", "Token manager": "Ĵetona administrilo", "Token": "Ĵetono", - "`x` subscriptions": "`x` abonoj", - "`x` tokens": "`x` ĵetonoj", + "`x` subscriptions": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` abonoj", + "": "`x` abonoj" + }, + "`x` tokens": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` ĵetonoj", + "": "`x` ĵetonoj" + }, "Import/export": "Importi/Eksporti", "unsubscribe": "malabonu", "revoke": "senvalidigi", "Subscriptions": "Abonoj", - "`x` unseen notifications": "`x` neviditaj sciigoj", + "`x` unseen notifications": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` neviditaj sciigoj", + "": "`x` neviditaj sciigoj" + }, "search": "serĉi", "Log out": "Elsaluti", "Released under the AGPLv3 by Omar Roth.": "Eldonita sub la AGPLv3 de Omar Roth.", @@ -149,13 +167,19 @@ "Whitelisted regions: ": "Regionoj listigitaj en blanka listo: ", "Blacklisted regions: ": "Regionoj listigitaj en nigra listo: ", "Shared `x`": "Konigita `x`", - "`x` views": "`x` spektaĵoj", + "`x` views": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` spektaĵoj", + "": "`x` spektaĵoj" + }, "Premieres in `x`": "Premieras en `x`", "Premieres `x`": "Premieras `x`", "Hi! Looks like you have JavaScript turned off. Click here to view comments, keep in mind they may take a bit longer to load.": "Saluton! Ŝajnas, ke vi havas Ĝavoskripton malebligitan. Klaku ĉi tie por vidi komentojn, memoru, ke la ŝargado povus daŭri iom pli.", "View YouTube comments": "Vidi komentojn de JuTubo", "View more comments on Reddit": "Vidi pli komentoj en Reddit", - "View `x` comments": "Vidi `x` komentojn", + "View `x` comments": { + "([^.,0-9]|^)1([^.,0-9]|$)": "Vidi `x` komentojn", + "": "Vidi `x` komentojn" + }, "View Reddit comments": "Vidi komentojn de Reddit", "Hide replies": "Kaŝi respondojn", "Show replies": "Montri respondojn", @@ -180,10 +204,16 @@ "This channel does not exist.": "Ĉi tiu kanalo ne ekzistas.", "Could not get channel info.": "Ne povis havigi kanalan informon.", "Could not fetch comments": "Ne povis venigi komentojn", - "View `x` replies": "Vidi `x` respondojn", + "View `x` replies": { + "([^.,0-9]|^)1([^.,0-9]|$)": "Vidi `x` respondojn", + "": "Vidi `x` respondojn" + }, "`x` ago": "antaŭ `x`", "Load more": "Ŝarĝi pli", - "`x` points": "`x` poentoj", + "`x` points": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` poentoj", + "": "`x` poentoj" + }, "Could not create mix.": "Ne povis krei mikson.", "Empty playlist": "Ludlisto estas malplena", "Not a playlist.": "Nevalida ludlisto.", @@ -301,13 +331,34 @@ "Yiddish": "Jida", "Yoruba": "Joruba", "Zulu": "Zulua", - "`x` years": "`x` jaroj", - "`x` months": "`x` monatoj", - "`x` weeks": "`x` semajnoj", - "`x` days": "`x` tagoj", - "`x` hours": "`x` horoj", - "`x` minutes": "`x` minutoj", - "`x` seconds": "`x` sekundoj", + "`x` years": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` jaroj", + "": "`x` jaroj" + }, + "`x` months": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` monatoj", + "": "`x` monatoj" + }, + "`x` weeks": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` semajnoj", + "": "`x` semajnoj" + }, + "`x` days": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` tagoj", + "": "`x` tagoj" + }, + "`x` hours": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` horoj", + "": "`x` horoj" + }, + "`x` minutes": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` minutoj", + "": "`x` minutoj" + }, + "`x` seconds": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` sekundoj", + "": "`x` sekundoj" + }, "Fallback comments: ": "Retrodefaŭltaj komentoj: ", "Popular": "Popularaj", "Search": "", diff --git a/locales/es.json b/locales/es.json index e571865f..7d6a529f 100644 --- a/locales/es.json +++ b/locales/es.json @@ -1,7 +1,16 @@ { - "`x` subscribers": "`x` suscriptores", - "`x` videos": "`x` vídeos", - "`x` playlists": "`x` listas de reproducción", + "`x` subscribers": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` suscriptores", + "": "`x` suscriptores" + }, + "`x` videos": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` vídeos", + "": "`x` vídeos" + }, + "`x` playlists": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` listas de reproducción", + "": "`x` listas de reproducción" + }, "LIVE": "DIRECTO", "Shared `x` ago": "Compartido hace `x`", "Unsubscribe": "Desuscribirse", @@ -113,13 +122,22 @@ "Subscription manager": "Gestor de suscripciones", "Token manager": "Gestor de tokens", "Token": "Token", - "`x` subscriptions": "`x` suscripciones", - "`x` tokens": "`x` tokens", + "`x` subscriptions": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` suscripciones", + "": "`x` suscripciones" + }, + "`x` tokens": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` tokens", + "": "`x` tokens" + }, "Import/export": "Importar/Exportar", "unsubscribe": "Desuscribirse", "revoke": "revocar", "Subscriptions": "Suscripciones", - "`x` unseen notifications": "`x` notificaciones sin ver", + "`x` unseen notifications": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` notificaciones sin ver", + "": "`x` notificaciones sin ver" + }, "search": "buscar", "Log out": "Cerrar la sesión", "Released under the AGPLv3 by Omar Roth.": "Publicado bajo licencia AGPLv3 por Omar Roth.", @@ -149,13 +167,19 @@ "Whitelisted regions: ": "Regiones permitidas: ", "Blacklisted regions: ": "Regiones bloqueadas: ", "Shared `x`": "Compartido `x`", - "`x` views": "`x` visualizaciones", + "`x` views": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` visualizaciones", + "": "`x` visualizaciones" + }, "Premieres in `x`": "Se estrena en `x`", "Premieres `x`": "Estrenos `x`", "Hi! Looks like you have JavaScript turned off. Click here to view comments, keep in mind they may take a bit longer to load.": "¡Hola! Parece que tiene JavaScript desactivado. Haga clic aquí para ver los comentarios, pero tenga en cuenta que pueden tardar un poco más en cargarse.", "View YouTube comments": "Ver los comentarios de YouTube", "View more comments on Reddit": "Ver más comentarios en Reddit", - "View `x` comments": "Ver `x` comentarios", + "View `x` comments": { + "([^.,0-9]|^)1([^.,0-9]|$)": "Ver `x` comentarios", + "": "Ver `x` comentarios" + }, "View Reddit comments": "Ver los comentarios de Reddit", "Hide replies": "Ocultar las respuestas", "Show replies": "Mostrar las respuestas", @@ -180,10 +204,16 @@ "This channel does not exist.": "El canal no existe.", "Could not get channel info.": "No se ha podido obtener información del canal.", "Could not fetch comments": "No se han podido recuperar los comentarios", - "View `x` replies": "Ver `x` respuestas", + "View `x` replies": { + "([^.,0-9]|^)1([^.,0-9]|$)": "Ver `x` respuestas", + "": "Ver `x` respuestas" + }, "`x` ago": "hace `x`", "Load more": "Cargar más", - "`x` points": "`x` puntos", + "`x` points": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` puntos", + "": "`x` puntos" + }, "Could not create mix.": "No se ha podido crear la mezcla.", "Empty playlist": "La lista de reproducción está vacía", "Not a playlist.": "Lista de reproducción no válida.", @@ -301,13 +331,34 @@ "Yiddish": "Yidis", "Yoruba": "Yoruba", "Zulu": "Zulú", - "`x` years": "`x` años", - "`x` months": "`x` meses", - "`x` weeks": "`x` semanas", - "`x` days": "`x` días", - "`x` hours": "`x` horas", - "`x` minutes": "`x` minutos", - "`x` seconds": "`x` segundos", + "`x` years": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` años", + "": "`x` años" + }, + "`x` months": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` meses", + "": "`x` meses" + }, + "`x` weeks": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` semanas", + "": "`x` semanas" + }, + "`x` days": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` días", + "": "`x` días" + }, + "`x` hours": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` horas", + "": "`x` horas" + }, + "`x` minutes": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` minutos", + "": "`x` minutos" + }, + "`x` seconds": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` segundos", + "": "`x` segundos" + }, "Fallback comments: ": "Comentarios alternativos: ", "Popular": "Populares", "Search": "", diff --git a/locales/nb-NO.json b/locales/nb-NO.json index 90b3028f..8dd05d48 100644 --- a/locales/nb-NO.json +++ b/locales/nb-NO.json @@ -1,7 +1,16 @@ { - "`x` subscribers": "`x` abonnenter", - "`x` videos": "`x` videoer", - "`x` playlists": "`x` spillelister", + "`x` subscribers": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` abonnenter", + "": "`x` abonnenter" + }, + "`x` videos": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` videoer", + "": "`x` videoer" + }, + "`x` playlists": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` spillelister", + "": "`x` spillelister" + }, "LIVE": "SANNTIDSVISNING", "Shared `x` ago": "Delt for `x` siden", "Unsubscribe": "Opphev abonnement", @@ -113,13 +122,22 @@ "Subscription manager": "Abonnementsbehandler", "Token manager": "Symbolbehandler", "Token": "Symbol", - "`x` subscriptions": "`x` abonnementer", - "`x` tokens": "`x` symboler", + "`x` subscriptions": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` abonnementer", + "": "`x` abonnementer" + }, + "`x` tokens": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` symboler", + "": "`x` symboler" + }, "Import/export": "Importer/eksporter", "unsubscribe": "opphev abonnement", "revoke": "tilbakekall", "Subscriptions": "Abonnement", - "`x` unseen notifications": "`x` usette merknader", + "`x` unseen notifications": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` usette merknader", + "": "`x` usette merknader" + }, "search": "søk", "Log out": "Logg ut", "Released under the AGPLv3 by Omar Roth.": "Utgitt med AGPLv3+lisens av Omar Roth.", @@ -149,13 +167,19 @@ "Whitelisted regions: ": "Hvitlistede regioner: ", "Blacklisted regions: ": "Svartelistede regioner: ", "Shared `x`": "Delt `x`", - "`x` views": "`x` visninger", + "`x` views": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` visninger", + "": "`x` visninger" + }, "Premieres in `x`": "Premiere om `x`", "Premieres `x`": "Première `x`", "Hi! Looks like you have JavaScript turned off. Click here to view comments, keep in mind they may take a bit longer to load.": "Hei. Det ser ut til at du har JavaScript avslått. Klikk her for å vise kommentarer, ha i minnet at innlasting tar lengre tid.", "View YouTube comments": "Vis YouTube-kommentarer", "View more comments on Reddit": "Vis flere kommenterer på Reddit", - "View `x` comments": "Vis `x` kommentarer", + "View `x` comments": { + "([^.,0-9]|^)1([^.,0-9]|$)": "Vis `x` kommentarer", + "": "Vis `x` kommentarer" + }, "View Reddit comments": "Vis Reddit-kommentarer", "Hide replies": "Skjul svar", "Show replies": "Vis svar", @@ -180,10 +204,16 @@ "This channel does not exist.": "Denne kanalen finnes ikke.", "Could not get channel info.": "Kunne ikke innhente kanalinfo.", "Could not fetch comments": "Kunne ikke hente kommentarer", - "View `x` replies": "Vis `x` svar", + "View `x` replies": { + "([^.,0-9]|^)1([^.,0-9]|$)": "Vis `x` svar", + "": "Vis `x` svar" + }, "`x` ago": "`x` siden", "Load more": "Last inn flere", - "`x` points": "`x` poeng", + "`x` points": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` poeng", + "": "`x` poeng" + }, "Could not create mix.": "Kunne ikke opprette miks.", "Empty playlist": "Spillelisten er tom", "Not a playlist.": "Ugyldig spilleliste.", @@ -301,13 +331,34 @@ "Yiddish": "Jiddisk", "Yoruba": "Joruba", "Zulu": "Zulu", - "`x` years": "`x` år", - "`x` months": "`x` måneder", - "`x` weeks": "`x` uker", - "`x` days": "`x` dager", - "`x` hours": "`x` timer", - "`x` minutes": "`x` minutter", - "`x` seconds": "`x` sekunder", + "`x` years": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` år", + "": "`x` år" + }, + "`x` months": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` måneder", + "": "`x` måneder" + }, + "`x` weeks": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` uker", + "": "`x` uker" + }, + "`x` days": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` dager", + "": "`x` dager" + }, + "`x` hours": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` timer", + "": "`x` timer" + }, + "`x` minutes": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` minutter", + "": "`x` minutter" + }, + "`x` seconds": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` sekunder", + "": "`x` sekunder" + }, "Fallback comments: ": "Tilbakefallskommentarer: ", "Popular": "Populært", "Search": "", diff --git a/locales/nl.json b/locales/nl.json index 77e655e9..fc13c9bf 100644 --- a/locales/nl.json +++ b/locales/nl.json @@ -1,7 +1,16 @@ { - "`x` subscribers": "`x` abonnees", - "`x` videos": "`x` video's", - "`x` playlists": "`x` afspeellijsten", + "`x` subscribers": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` abonnees", + "": "`x` abonnees" + }, + "`x` videos": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` video's", + "": "`x` video's" + }, + "`x` playlists": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` afspeellijsten", + "": "`x` afspeellijsten" + }, "LIVE": "LIVE", "Shared `x` ago": "Gedeeld: `x` geleden", "Unsubscribe": "Deabonneren", @@ -113,13 +122,22 @@ "Subscription manager": "Abonnementen beheren", "Token manager": "Toegangssleutels beheren", "Token": "Toegangssleutel", - "`x` subscriptions": "`x` abonnementen", - "`x` tokens": "`x` toegangssleutels", + "`x` subscriptions": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` abonnementen", + "": "`x` abonnementen" + }, + "`x` tokens": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` toegangssleutels", + "": "`x` toegangssleutels" + }, "Import/export": "Importeren/Exporteren", "unsubscribe": "Deabonneren", "revoke": "Intrekken", "Subscriptions": "Abonnementen", - "`x` unseen notifications": "`x` ongelezen meldingen", + "`x` unseen notifications": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` ongelezen meldingen", + "": "`x` ongelezen meldingen" + }, "search": "zoeken", "Log out": "Uitloggen", "Released under the AGPLv3 by Omar Roth.": "Uitgebracht onder de AGPLv3-licentie, door Omar Roth.", @@ -149,13 +167,19 @@ "Whitelisted regions: ": "Toegestane regio's: ", "Blacklisted regions: ": "Geblokkeerde regio's: ", "Shared `x`": "`x` gedeeld", - "`x` views": "`x` weergaven", + "`x` views": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` weergaven", + "": "`x` weergaven" + }, "Premieres in `x`": "Verschijnt over `x`", "Premieres `x`": "Verschijnt op `x`", "Hi! Looks like you have JavaScript turned off. Click here to view comments, keep in mind they may take a bit longer to load.": "Hoi! Het lijkt erop dat je JavaScript hebt uitgeschakeld. Klik hier om de reacties te bekijken. Let op: het laden duurt wat langer.", "View YouTube comments": "YouTube-reacties tonen", "View more comments on Reddit": "Meer reacties bekijken op Reddit", - "View `x` comments": "`x` reacties tonen", + "View `x` comments": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` reacties tonen", + "": "`x` reacties tonen" + }, "View Reddit comments": "Reddit-reacties tonen", "Hide replies": "Antwoorden verbergen", "Show replies": "Antwoorden tonen", @@ -180,10 +204,16 @@ "This channel does not exist.": "Dit kanaal bestaat niet.", "Could not get channel info.": "Kan geen kanaalinformatie ophalen.", "Could not fetch comments": "Kan reacties niet ophalen", - "View `x` replies": "`x` antwoorden tonen", + "View `x` replies": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` antwoorden tonen", + "": "`x` antwoorden tonen" + }, "`x` ago": "`x` geleden", "Load more": "Meer laden", - "`x` points": "`x` punten", + "`x` points": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` punten", + "": "`x` punten" + }, "Could not create mix.": "Kan geen mix maken.", "Empty playlist": "Lege afspeellijst", "Not a playlist.": "Ongeldige afspeellijst.", @@ -301,13 +331,34 @@ "Yiddish": "Joods", "Yoruba": "Yoruba", "Zulu": "Zulu", - "`x` years": "`x` jaar", - "`x` months": "`x` maanden", - "`x` weeks": "`x` weken", - "`x` days": "`x` dagen", - "`x` hours": "`x` uur", - "`x` minutes": "`x` minuten", - "`x` seconds": "`x` seconden", + "`x` years": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` jaar", + "": "`x` jaar" + }, + "`x` months": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` maanden", + "": "`x` maanden" + }, + "`x` weeks": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` weken", + "": "`x` weken" + }, + "`x` days": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` dagen", + "": "`x` dagen" + }, + "`x` hours": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` uur", + "": "`x` uur" + }, + "`x` minutes": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` minuten", + "": "`x` minuten" + }, + "`x` seconds": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` seconden", + "": "`x` seconden" + }, "Fallback comments: ": "Terugvallen op ", "Popular": "Populair", "Search": "", diff --git a/locales/pl.json b/locales/pl.json index c612beaf..cf54bd9a 100644 --- a/locales/pl.json +++ b/locales/pl.json @@ -1,7 +1,16 @@ { - "`x` subscribers": "`x` subskrybcji", - "`x` videos": "`x` filmów", - "`x` playlists": "`x` playlist", + "`x` subscribers": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` subskrybcji", + "": "`x` subskrybcji" + }, + "`x` videos": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` filmów", + "": "`x` filmów" + }, + "`x` playlists": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` playlist", + "": "`x` playlist" + }, "LIVE": "NA ŻYWO", "Shared `x` ago": "Udostępniono `x` temu", "Unsubscribe": "Odsubskrybuj", @@ -113,13 +122,22 @@ "Subscription manager": "Manager subskrybcji", "Token manager": "Menedżer tokenów", "Token": "Token", - "`x` subscriptions": "`x` subskrybcji", - "`x` tokens": "", + "`x` subscriptions": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` subskrybcji", + "": "`x` subskrybcji" + }, + "`x` tokens": { + "([^.,0-9]|^)1([^.,0-9]|$)": "", + "": "" + }, "Import/export": "Import/Eksport", "unsubscribe": "odsubskrybuj", "revoke": "cofnij", "Subscriptions": "Subskrybcje", - "`x` unseen notifications": "`x` nowych powiadomień", + "`x` unseen notifications": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` nowych powiadomień", + "": "`x` nowych powiadomień" + }, "search": "szukaj", "Log out": "Wyloguj", "Released under the AGPLv3 by Omar Roth.": "Wydano na licencji AGPLv3 przez Omar Roth.", @@ -149,13 +167,19 @@ "Whitelisted regions: ": "Dostępny na obszarach: ", "Blacklisted regions: ": "Niedostępny na obszarach: ", "Shared `x`": "Udostępniono `x`", - "`x` views": "`x` wyświetleń", + "`x` views": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` wyświetleń", + "": "`x` wyświetleń" + }, "Premieres in `x`": "Publikacja za `x`", "Premieres `x`": "Publikacja za `x`", "Hi! Looks like you have JavaScript turned off. Click here to view comments, keep in mind they may take a bit longer to load.": "Cześć! Wygląda na to, że masz wyłączoną obsługę JavaScriptu. Kliknij tutaj, żeby zobaczyć komentarze. Pamiętaj, że wczytywanie może potrwać dłużej.", "View YouTube comments": "Wyświetl komentarze z YouTube", "View more comments on Reddit": "Wyświetl więcej komentarzy na Reddicie", - "View `x` comments": "Wyświetl `x` komentarzy", + "View `x` comments": { + "([^.,0-9]|^)1([^.,0-9]|$)": "Wyświetl `x` komentarzy", + "": "Wyświetl `x` komentarzy" + }, "View Reddit comments": "Wyświetl komentarze z Redditta", "Hide replies": "Ukryj odpowiedzi", "Show replies": "Pokaż odpowiedzi", @@ -180,10 +204,16 @@ "This channel does not exist.": "Ten kanał nie istnieje.", "Could not get channel info.": "Nie udało się uzyskać informacji o kanale.", "Could not fetch comments": "Nie udało się pobrać komentarzy", - "View `x` replies": "Wyświetl `x` odpowiedzi", + "View `x` replies": { + "([^.,0-9]|^)1([^.,0-9]|$)": "Wyświetl `x` odpowiedzi", + "": "Wyświetl `x` odpowiedzi" + }, "`x` ago": "`x` temu", "Load more": "Wczytaj więcej", - "`x` points": "`x` punktów", + "`x` points": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` punktów", + "": "`x` punktów" + }, "Could not create mix.": "Nie udało się utworzyć miksu.", "Empty playlist": "Lista odtwarzania jest pusta", "Not a playlist.": "Niepoprawna lista.", @@ -301,13 +331,34 @@ "Yiddish": "jidysz", "Yoruba": "joruba", "Zulu": "zuluski", - "`x` years": "`x` lat", - "`x` months": "`x` miesięcy", - "`x` weeks": "`x` tygodni", - "`x` days": "`x` dni", - "`x` hours": "`x` godzin", - "`x` minutes": "`x` minut", - "`x` seconds": "`x` sekund", + "`x` years": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` lat", + "": "`x` lat" + }, + "`x` months": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` miesięcy", + "": "`x` miesięcy" + }, + "`x` weeks": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` tygodni", + "": "`x` tygodni" + }, + "`x` days": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` dni", + "": "`x` dni" + }, + "`x` hours": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` godzin", + "": "`x` godzin" + }, + "`x` minutes": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` minut", + "": "`x` minut" + }, + "`x` seconds": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` sekund", + "": "`x` sekund" + }, "Fallback comments: ": "Zastępcze komentarze: ", "Popular": "Popularne", "Search": "", diff --git a/locales/pt-BR.json b/locales/pt-BR.json index 8a361dd7..1c9e1f93 100644 --- a/locales/pt-BR.json +++ b/locales/pt-BR.json @@ -1,7 +1,16 @@ { - "`x` subscribers": "`x` inscritos", - "`x` videos": "`x` vídeos", - "`x` playlists": "`x` listas de reprodução", + "`x` subscribers": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` inscritos", + "": "`x` inscritos" + }, + "`x` videos": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` vídeos", + "": "`x` vídeos" + }, + "`x` playlists": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` listas de reprodução", + "": "`x` listas de reprodução" + }, "LIVE": "AO VIVO", "Shared `x` ago": "Compartilhado `x` atrás", "Unsubscribe": "Cancelar inscrição", @@ -113,13 +122,22 @@ "Subscription manager": "Gerenciador de inscrições", "Token manager": "Gerenciador de tokens", "Token": "Token", - "`x` subscriptions": "`x` inscrições", - "`x` tokens": "`x` tokens", + "`x` subscriptions": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` inscrições", + "": "`x` inscrições" + }, + "`x` tokens": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` tokens", + "": "`x` tokens" + }, "Import/export": "Importar/Exportar", "unsubscribe": "cancelar inscrição", "revoke": "revogar", "Subscriptions": "Inscrições", - "`x` unseen notifications": "`x` notificações não visualizadas", + "`x` unseen notifications": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` notificações não visualizadas", + "": "`x` notificações não visualizadas" + }, "search": "Pesquisar", "Log out": "Sair", "Released under the AGPLv3 by Omar Roth.": "Publicado sob a licença AGPLv3, por Omar Roth.", @@ -149,13 +167,19 @@ "Whitelisted regions: ": "Regiões permitidas: ", "Blacklisted regions: ": "Regiões bloqueadas: ", "Shared `x`": "Compartilhado `x`", - "`x` views": "`x` visualizações", + "`x` views": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` visualizações", + "": "`x` visualizações" + }, "Premieres in `x`": "Estreia em `x`", "Premieres `x`": "Estreia `x`", "Hi! Looks like you have JavaScript turned off. Click here to view comments, keep in mind they may take a bit longer to load.": "Oi! Parece que seu JavaScript está desativado. Clique aqui para ver os comentários, entretanto eles podem levar um pouco mais de tempo para carregar.", "View YouTube comments": "Ver comentários no YouTube", "View more comments on Reddit": "Ver mais comentários no Reddit", - "View `x` comments": "Ver `x` comentários", + "View `x` comments": { + "([^.,0-9]|^)1([^.,0-9]|$)": "Ver `x` comentários", + "": "Ver `x` comentários" + }, "View Reddit comments": "Ver comentários no Reddit", "Hide replies": "Ocultar respostas", "Show replies": "Mostrar respostas", @@ -180,10 +204,16 @@ "This channel does not exist.": "Este canal não existe.", "Could not get channel info.": "Não foi possível obter as informações do canal.", "Could not fetch comments": "Não foi possível obter os comentários", - "View `x` replies": "Ver `x` respostas", + "View `x` replies": { + "([^.,0-9]|^)1([^.,0-9]|$)": "Ver `x` respostas", + "": "Ver `x` respostas" + }, "`x` ago": "`x` atrás", "Load more": "Carregar mais", - "`x` points": "`x` pontos", + "`x` points": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` pontos", + "": "`x` pontos" + }, "Could not create mix.": "Não foi possível criar o mix.", "Empty playlist": "Lista de reprodução vazia", "Not a playlist.": "Não é uma lista de reprodução.", @@ -301,13 +331,34 @@ "Yiddish": "Iídiche", "Yoruba": "Iorubá", "Zulu": "Zulu", - "`x` years": "`x` anos", - "`x` months": "`x` meses", - "`x` weeks": "`x` semanas", - "`x` days": "`x` dias", - "`x` hours": "`x` horas", - "`x` minutes": "`x` minutos", - "`x` seconds": "`x` segundos", + "`x` years": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` anos", + "": "`x` anos" + }, + "`x` months": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` meses", + "": "`x` meses" + }, + "`x` weeks": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` semanas", + "": "`x` semanas" + }, + "`x` days": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` dias", + "": "`x` dias" + }, + "`x` hours": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` horas", + "": "`x` horas" + }, + "`x` minutes": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` minutos", + "": "`x` minutos" + }, + "`x` seconds": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` segundos", + "": "`x` segundos" + }, "Fallback comments: ": "Comentários alternativos: ", "Popular": "Populares", "Search": "", diff --git a/locales/ro.json b/locales/ro.json index df8e1bb3..8507828d 100644 --- a/locales/ro.json +++ b/locales/ro.json @@ -1,7 +1,16 @@ { - "`x` subscribers": "`x` abonați", - "`x` videos": "`x` videoclipuri", - "`x` playlists": "`x` liste de redare", + "`x` subscribers": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` abonați", + "": "`x` abonați" + }, + "`x` videos": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` videoclipuri", + "": "`x` videoclipuri" + }, + "`x` playlists": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` liste de redare", + "": "`x` liste de redare" + }, "LIVE": "ÎN DIRECT", "Shared `x` ago": "Adăugat acum `x`", "Unsubscribe": "Dezabonați-vă", @@ -113,13 +122,22 @@ "Subscription manager": "Gestionați abonamentele", "Token manager": "Manager de Tokene", "Token": "Token", - "`x` subscriptions": "`x` abonamente", - "`x` tokens": "`x` tokens", + "`x` subscriptions": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` abonamente", + "": "`x` abonamente" + }, + "`x` tokens": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` tokens", + "": "`x` tokens" + }, "Import/export": "Importați/Exportați", "unsubscribe": "dezabonați-vă", "revoke": "revocați", "Subscriptions": "Abonamente", - "`x` unseen notifications": "`x` notificări nevăzute", + "`x` unseen notifications": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` notificări nevăzute", + "": "`x` notificări nevăzute" + }, "search": "căutați", "Log out": "Deconectați-vă", "Released under the AGPLv3 by Omar Roth.": "Publicat sub licența AGPLv3 de Omar Roth.", @@ -149,13 +167,19 @@ "Whitelisted regions: ": "Regiunile de pe lista albă: ", "Blacklisted regions: ": "Regiunile de pe lista neagră: ", "Shared `x`": "Publicat pe `x`", - "`x` views": "`x` vizionări", + "`x` views": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` vizionări", + "": "`x` vizionări" + }, "Premieres in `x`": "Premiera în `x`", "Premieres `x`": "Premiera pe `x`", "Hi! Looks like you have JavaScript turned off. Click here to view comments, keep in mind they may take a bit longer to load.": "Se pare că ați dezactivat JavaScript. Apăsați aici pentru a vizualiza comentariile. Țineți minte faptul că încărcarea lor ar putea să dureze puțin mai mult.", "View YouTube comments": "Vedeți comentariile de pe YouTube", "View more comments on Reddit": "Vedeți mai multe comentarii pe Reddit", - "View `x` comments": "Afișați `x` comentarii", + "View `x` comments": { + "([^.,0-9]|^)1([^.,0-9]|$)": "Afișați `x` comentarii", + "": "Afișați `x` comentarii" + }, "View Reddit comments": "Afișați comentariile de pe Reddit", "Hide replies": "Ascundeți replicile", "Show replies": "Afișați replicile", @@ -180,10 +204,16 @@ "This channel does not exist.": "Acest canal nu există.", "Could not get channel info.": "Nu am putut primi informații despre acest canal.", "Could not fetch comments": "Încărcarea comentariilor a eșuat.", - "View `x` replies": "Afișați `x` replici", + "View `x` replies": { + "([^.,0-9]|^)1([^.,0-9]|$)": "Afișați `x` replici", + "": "Afișați `x` replici" + }, "`x` ago": "acum `x`", "Load more": "Vedeți mai mult", - "`x` points": "`x` puncte", + "`x` points": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` puncte", + "": "`x` puncte" + }, "Could not create mix.": "Nu am putut crea această listă de redare.", "Empty playlist": "Lista de redare este goală", "Not a playlist.": "Lista de redare este invalidă.", @@ -301,13 +331,34 @@ "Yiddish": "Yiddish", "Yoruba": "Yoruba", "Zulu": "Zoulou", - "`x` years": "`x` ani", - "`x` months": "`x` luni", - "`x` weeks": "`x` săptămâni", - "`x` days": "`x` zile", - "`x` hours": "`x` ore", - "`x` minutes": "`x` minute", - "`x` seconds": "`x` secunde", + "`x` years": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` ani", + "": "`x` ani" + }, + "`x` months": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` luni", + "": "`x` luni" + }, + "`x` weeks": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` săptămâni", + "": "`x` săptămâni" + }, + "`x` days": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` zile", + "": "`x` zile" + }, + "`x` hours": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` ore", + "": "`x` ore" + }, + "`x` minutes": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` minute", + "": "`x` minute" + }, + "`x` seconds": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` secunde", + "": "`x` secunde" + }, "Fallback comments: ": "Comentarii alternative: ", "Popular": "Popular", "Search": "", diff --git a/locales/ru.json b/locales/ru.json index 5fd5078c..1170c2a7 100644 --- a/locales/ru.json +++ b/locales/ru.json @@ -1,7 +1,16 @@ { - "`x` subscribers": "`x` подписчиков", - "`x` videos": "`x` видео", - "`x` playlists": "`x` плейлистов", + "`x` subscribers": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` подписчиков", + "": "`x` подписчиков" + }, + "`x` videos": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` видео", + "": "`x` видео" + }, + "`x` playlists": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` плейлистов", + "": "`x` плейлистов" + }, "LIVE": "ПРЯМОЙ ЭФИР", "Shared `x` ago": "Опубликовано `x` назад", "Unsubscribe": "Отписаться", @@ -113,13 +122,22 @@ "Subscription manager": "Менеджер подписок", "Token manager": "Менеджер токенов", "Token": "Токен", - "`x` subscriptions": "`x` подписок", - "`x` tokens": "`x` токенов", + "`x` subscriptions": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` подписок", + "": "`x` подписок" + }, + "`x` tokens": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` токенов", + "": "`x` токенов" + }, "Import/export": "Импорт и экспорт", "unsubscribe": "отписаться", "revoke": "отозвать", "Subscriptions": "Подписки", - "`x` unseen notifications": "`x` непросмотренных оповещений", + "`x` unseen notifications": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` непросмотренных оповещений", + "": "`x` непросмотренных оповещений" + }, "search": "поиск", "Log out": "Выйти", "Released under the AGPLv3 by Omar Roth.": "Реализовано Омаром Ротом по лицензии AGPLv3.", @@ -149,13 +167,19 @@ "Whitelisted regions: ": "Доступно в регионах: ", "Blacklisted regions: ": "Недоступно в регионах: ", "Shared `x`": "Опубликовано `x`", - "`x` views": "`x` просмотров", + "`x` views": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` просмотров", + "": "`x` просмотров" + }, "Premieres in `x`": "Премьера через `x`", "Premieres `x`": "Премьера `x`", "Hi! Looks like you have JavaScript turned off. Click here to view comments, keep in mind they may take a bit longer to load.": "Похоже, у вас отключён JavaScript. Чтобы увидить комментарии, нажмите сюда, но учтите: они могут загружаться немного медленнее.", "View YouTube comments": "Смотреть комментарии с YouTube", "View more comments on Reddit": "Посмотреть больше комментариев на Reddit", - "View `x` comments": "Показать `x` комментариев", + "View `x` comments": { + "([^.,0-9]|^)1([^.,0-9]|$)": "Показать `x` комментариев", + "": "Показать `x` комментариев" + }, "View Reddit comments": "Смотреть комментарии с Reddit", "Hide replies": "Скрыть ответы", "Show replies": "Показать ответы", @@ -180,10 +204,16 @@ "This channel does not exist.": "Такого канала не существует.", "Could not get channel info.": "Не удаётся получить информацию об этом канале.", "Could not fetch comments": "Не удаётся загрузить комментарии", - "View `x` replies": "Показать `x` ответов", + "View `x` replies": { + "([^.,0-9]|^)1([^.,0-9]|$)": "Показать `x` ответов", + "": "Показать `x` ответов" + }, "`x` ago": "`x` назад", "Load more": "Загрузить больше", - "`x` points": "`x` очков", + "`x` points": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` очков", + "": "`x` очков" + }, "Could not create mix.": "Не удаётся создать микс.", "Empty playlist": "Плейлист пуст", "Not a playlist.": "Некорректный плейлист.", @@ -301,13 +331,34 @@ "Yiddish": "Идиш", "Yoruba": "Йоруба", "Zulu": "Зулусский", - "`x` years": "`x` лет", - "`x` months": "`x` месяцев", - "`x` weeks": "`x` недель", - "`x` days": "`x` дней", - "`x` hours": "`x` часов", - "`x` minutes": "`x` минут", - "`x` seconds": "`x` секунд", + "`x` years": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` лет", + "": "`x` лет" + }, + "`x` months": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` месяцев", + "": "`x` месяцев" + }, + "`x` weeks": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` недель", + "": "`x` недель" + }, + "`x` days": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` дней", + "": "`x` дней" + }, + "`x` hours": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` часов", + "": "`x` часов" + }, + "`x` minutes": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` минут", + "": "`x` минут" + }, + "`x` seconds": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` секунд", + "": "`x` секунд" + }, "Fallback comments: ": "Резервные комментарии: ", "Popular": "Популярное", "Search": "", diff --git a/locales/sv-SE.json b/locales/sv-SE.json index 1cdab99a..5cc8c674 100644 --- a/locales/sv-SE.json +++ b/locales/sv-SE.json @@ -1,7 +1,16 @@ { - "`x` subscribers": "`x` prenumeranter", - "`x` videos": "`x` videor", - "`x` playlists": "`x` spellistor", + "`x` subscribers": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` prenumeranter", + "": "`x` prenumeranter" + }, + "`x` videos": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` videor", + "": "`x` videor" + }, + "`x` playlists": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` spellistor", + "": "`x` spellistor" + }, "LIVE": "LIVE", "Shared `x` ago": "Delad `x` sedan", "Unsubscribe": "Avprenumerera", @@ -113,13 +122,22 @@ "Subscription manager": "Prenumerationshanterare", "Token manager": "Åtkomst-token-hanterare", "Token": "Åtkomst-token", - "`x` subscriptions": "`x` prenumerationer", - "`x` tokens": "`x` åtkomst-token", + "`x` subscriptions": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` prenumerationer", + "": "`x` prenumerationer" + }, + "`x` tokens": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` åtkomst-token", + "": "`x` åtkomst-token" + }, "Import/export": "Importera/exportera", "unsubscribe": "avprenumerera", "revoke": "återkalla", "Subscriptions": "Prenumerationer", - "`x` unseen notifications": "`x` osedda aviseringar", + "`x` unseen notifications": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` osedda aviseringar", + "": "`x` osedda aviseringar" + }, "search": "sök", "Log out": "Logga ut", "Released under the AGPLv3 by Omar Roth.": "Utgiven under AGPLv3-licens av Omar Roth.", @@ -149,13 +167,19 @@ "Whitelisted regions: ": "Vitlistade regioner: ", "Blacklisted regions: ": "Svartlistade regioner: ", "Shared `x`": "Delade `x`", - "`x` views": "`x` visningar", + "`x` views": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` visningar", + "": "`x` visningar" + }, "Premieres in `x`": "Premiär om `x`", "Premieres `x`": "Premiär av `x`", "Hi! Looks like you have JavaScript turned off. Click here to view comments, keep in mind they may take a bit longer to load.": "Hej. Det ser ut som att du har JavaScript avstängt. Klicka här för att visa kommentarer, ha i åtanke att nedladdning tar längre tid.", "View YouTube comments": "Visa YouTube-kommentarer", "View more comments on Reddit": "Visa flera kommentarer på Reddit", - "View `x` comments": "Visa `x` kommentarer", + "View `x` comments": { + "([^.,0-9]|^)1([^.,0-9]|$)": "Visa `x` kommentarer", + "": "Visa `x` kommentarer" + }, "View Reddit comments": "Visa Reddit-kommentarer", "Hide replies": "Dölj svar", "Show replies": "Visa svar", @@ -180,10 +204,16 @@ "This channel does not exist.": "Denna kanal finns inte.", "Could not get channel info.": "Kunde inte hämta kanalinfo.", "Could not fetch comments": "Kunde inte hämta kommentarer", - "View `x` replies": "Visa `x` svar", + "View `x` replies": { + "([^.,0-9]|^)1([^.,0-9]|$)": "Visa `x` svar", + "": "Visa `x` svar" + }, "`x` ago": "`x` sedan", "Load more": "Ladda fler", - "`x` points": "`x` poäng", + "`x` points": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` poäng", + "": "`x` poäng" + }, "Could not create mix.": "Kunde inte skapa mix.", "Empty playlist": "Spellistan är tom", "Not a playlist.": "Ogiltig spellista.", @@ -301,13 +331,34 @@ "Yiddish": "Jiddisch", "Yoruba": "Yoruba", "Zulu": "Zulu", - "`x` years": "`x` år", - "`x` months": "`x` månader", - "`x` weeks": "`x` veckor", - "`x` days": "`x` dagar", - "`x` hours": "`x` timmar", - "`x` minutes": "`x` minuter", - "`x` seconds": "`x` sekunder", + "`x` years": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` år", + "": "`x` år" + }, + "`x` months": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` månader", + "": "`x` månader" + }, + "`x` weeks": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` veckor", + "": "`x` veckor" + }, + "`x` days": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` dagar", + "": "`x` dagar" + }, + "`x` hours": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` timmar", + "": "`x` timmar" + }, + "`x` minutes": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` minuter", + "": "`x` minuter" + }, + "`x` seconds": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` sekunder", + "": "`x` sekunder" + }, "Fallback comments: ": "Fallback-kommentarer: ", "Popular": "Populärt", "Search": "", diff --git a/locales/uk.json b/locales/uk.json index 9c34f46e..e0c84d74 100644 --- a/locales/uk.json +++ b/locales/uk.json @@ -1,7 +1,16 @@ { - "`x` subscribers": "`x` підписників", - "`x` videos": "`x` відео", - "`x` playlists": "списки відтворення \"x\"", + "`x` subscribers": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` підписників", + "": "`x` підписників" + }, + "`x` videos": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` відео", + "": "`x` відео" + }, + "`x` playlists": { + "([^.,0-9]|^)1([^.,0-9]|$)": "списки відтворення \"x\"", + "": "списки відтворення \"x\"" + }, "LIVE": "ПРЯМИЙ ЕФІР", "Shared `x` ago": "Розміщено `x` назад", "Unsubscribe": "Відписатися", @@ -113,13 +122,22 @@ "Subscription manager": "Менеджер підписок", "Token manager": "Менеджер токенів", "Token": "Токен", - "`x` subscriptions": "`x` підписка / підписок / підписки", - "`x` tokens": "`x` токенів", + "`x` subscriptions": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` підписка / підписок / підписки", + "": "`x` підписка / підписок / підписки" + }, + "`x` tokens": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` токенів", + "": "`x` токенів" + }, "Import/export": "Імпорт і експорт", "unsubscribe": "відписатися", "revoke": "скасувати", "Subscriptions": "Підписки", - "`x` unseen notifications": "`x` непереглянуте сповіщення / непереглянутих сповіщень / непереглянутих сповіщення", + "`x` unseen notifications": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` непереглянуте сповіщення / непереглянутих сповіщень / непереглянутих сповіщення", + "": "`x` непереглянуте сповіщення / непереглянутих сповіщень / непереглянутих сповіщення" + }, "search": "пошук", "Log out": "Вийти", "Released under the AGPLv3 by Omar Roth.": "Реалізовано Омаром Ротом за ліцензією AGPLv3.", @@ -149,13 +167,19 @@ "Whitelisted regions: ": "Доступно у регіонах: ", "Blacklisted regions: ": "Недоступно у регіонах: ", "Shared `x`": "Розміщено `x`", - "`x` views": "`x` переглядів", + "`x` views": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` переглядів", + "": "`x` переглядів" + }, "Premieres in `x`": "Прем’єра через `x`", "Premieres `x`": "Прем’єра `x`", "Hi! Looks like you have JavaScript turned off. Click here to view comments, keep in mind they may take a bit longer to load.": "Схоже, у вас відключений JavaScript. Щоб побачити коментарі, натисніть сюда, але майте на увазі, що вони можуть завантажуватися трохи довше.", "View YouTube comments": "Переглянути коментарі з YouTube", "View more comments on Reddit": "Переглянути більше коментарів на Reddit", - "View `x` comments": "Переглянути `x` коментар / коментарів / коментаря", + "View `x` comments": { + "([^.,0-9]|^)1([^.,0-9]|$)": "Переглянути `x` коментар / коментарів / коментаря", + "": "Переглянути `x` коментар / коментарів / коментаря" + }, "View Reddit comments": "Переглянути коментарі з Reddit", "Hide replies": "Сховати відповіді", "Show replies": "Показати відповіді", @@ -180,10 +204,16 @@ "This channel does not exist.": "Такого каналу не існує.", "Could not get channel info.": "Не вдається отримати інформацію щодо цього каналу.", "Could not fetch comments": "Не вдається завантажити коментарі", - "View `x` replies": "Переглянути `x` відповідь / відповідей / відповіді", + "View `x` replies": { + "([^.,0-9]|^)1([^.,0-9]|$)": "Переглянути `x` відповідь / відповідей / відповіді", + "": "Переглянути `x` відповідь / відповідей / відповіді" + }, "`x` ago": "`x` тому", "Load more": "Завантажити більше", - "`x` points": "`x` очко / очок / очка", + "`x` points": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` очко / очок / очка", + "": "`x` очко / очок / очка" + }, "Could not create mix.": "Не вдається створити мікс.", "Empty playlist": "Плейлист порожній", "Not a playlist.": "Недійсний плейлист.", @@ -301,13 +331,34 @@ "Yiddish": "Їдиш", "Yoruba": "Йоруба", "Zulu": "Зулу", - "`x` years": "`x` років", - "`x` months": "`x` місяців", - "`x` weeks": "`x` тижнів", - "`x` days": "`x` днів", - "`x` hours": "`x` годин", - "`x` minutes": "`x` хвилин", - "`x` seconds": "`x` секунд", + "`x` years": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` років", + "": "`x` років" + }, + "`x` months": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` місяців", + "": "`x` місяців" + }, + "`x` weeks": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` тижнів", + "": "`x` тижнів" + }, + "`x` days": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` днів", + "": "`x` днів" + }, + "`x` hours": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` годин", + "": "`x` годин" + }, + "`x` minutes": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` хвилин", + "": "`x` хвилин" + }, + "`x` seconds": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` секунд", + "": "`x` секунд" + }, "Fallback comments: ": "Резервні коментарі: ", "Popular": "Популярне", "Search": "", diff --git a/locales/zh-CN.json b/locales/zh-CN.json index ae2ea0b4..a514aaed 100644 --- a/locales/zh-CN.json +++ b/locales/zh-CN.json @@ -1,7 +1,16 @@ { - "`x` subscribers": "`x` 位订阅者", - "`x` videos": "`x` 个视频", - "`x` playlists": "`x` 个播放列表", + "`x` subscribers": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` 位订阅者", + "": "`x` 位订阅者" + }, + "`x` videos": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` 个视频", + "": "`x` 个视频" + }, + "`x` playlists": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` 个播放列表", + "": "`x` 个播放列表" + }, "LIVE": "直播", "Shared `x` ago": "`x` 前分享", "Unsubscribe": "取消订阅", @@ -113,13 +122,22 @@ "Subscription manager": "订阅管理器", "Token manager": "令牌管理器", "Token": "令牌", - "`x` subscriptions": "`x` 个订阅", - "`x` tokens": "`x` 个令牌", + "`x` subscriptions": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` 个订阅", + "": "`x` 个订阅" + }, + "`x` tokens": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` 个令牌", + "": "`x` 个令牌" + }, "Import/export": "导入/导出", "unsubscribe": "取消订阅", "revoke": "吊销", "Subscriptions": "订阅", - "`x` unseen notifications": "`x` 条未读通知", + "`x` unseen notifications": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` 条未读通知", + "": "`x` 条未读通知" + }, "search": "搜索", "Log out": "登出", "Released under the AGPLv3 by Omar Roth.": "由 Omar Roth 开发,以 AGPLv3 授权。", @@ -149,13 +167,19 @@ "Whitelisted regions: ": "白名单地区: ", "Blacklisted regions: ": "黑名单地区: ", "Shared `x`": "`x`发布", - "`x` views": "`x` 播放", + "`x` views": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` 播放", + "": "`x` 播放" + }, "Premieres in `x`": "首映于 `x` 后", "Premieres `x`": "首映于 `x`", "Hi! Looks like you have JavaScript turned off. Click here to view comments, keep in mind they may take a bit longer to load.": "你好!看起来你关闭了 JavaScript。点击这里阅读评论。注意它们加载的时间可能会稍长。", "View YouTube comments": "查看 YouTube 评论", "View more comments on Reddit": "在 Reddit 查看更多评论", - "View `x` comments": "查看 `x` 条评论", + "View `x` comments": { + "([^.,0-9]|^)1([^.,0-9]|$)": "查看 `x` 条评论", + "": "查看 `x` 条评论" + }, "View Reddit comments": "查看 Reddit 评论", "Hide replies": "隐藏回复", "Show replies": "显示回复", @@ -180,10 +204,16 @@ "This channel does not exist.": "频道不存在。", "Could not get channel info.": "无法获取频道信息。", "Could not fetch comments": "无法获取评论", - "View `x` replies": "查看 `x` 条回复", + "View `x` replies": { + "([^.,0-9]|^)1([^.,0-9]|$)": "查看 `x` 条回复", + "": "查看 `x` 条回复" + }, "`x` ago": "`x` 前", "Load more": "加载更多", - "`x` points": "`x` 分", + "`x` points": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` 分", + "": "`x` 分" + }, "Could not create mix.": "无法创建合集。", "Empty playlist": "空播放列表", "Not a playlist.": "非播放列表。", @@ -301,13 +331,34 @@ "Yiddish": "意第绪语", "Yoruba": "约鲁巴语", "Zulu": "祖鲁语", - "`x` years": "`x` 年", - "`x` months": "`x` 月", - "`x` weeks": "`x` 周", - "`x` days": "`x` 天", - "`x` hours": "`x` 小时", - "`x` minutes": "`x` 分钟", - "`x` seconds": "`x` 秒", + "`x` years": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` 年", + "": "`x` 年" + }, + "`x` months": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` 月", + "": "`x` 月" + }, + "`x` weeks": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` 周", + "": "`x` 周" + }, + "`x` days": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` 天", + "": "`x` 天" + }, + "`x` hours": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` 小时", + "": "`x` 小时" + }, + "`x` minutes": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` 分钟", + "": "`x` 分钟" + }, + "`x` seconds": { + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` 秒", + "": "`x` 秒" + }, "Fallback comments: ": "后备评论: ", "Popular": "热门频道", "Search": "", From d69b9f9cf8c9e049bd7428113e6716a2456afdd3 Mon Sep 17 00:00:00 2001 From: Samantaz Fox Date: Sun, 28 Mar 2021 23:36:22 +0200 Subject: [PATCH 10/11] Minor fixes in locales after synchronization --- locales/el.json | 4 ++-- locales/fa.json | 8 ++++---- locales/it.json | 2 +- locales/nl.json | 5 ++--- locales/pt-PT.json | 4 ++-- locales/uk.json | 4 ++-- locales/zh-TW.json | 2 +- 7 files changed, 14 insertions(+), 15 deletions(-) diff --git a/locales/el.json b/locales/el.json index 96d7fe7d..187bccb6 100644 --- a/locales/el.json +++ b/locales/el.json @@ -9,7 +9,7 @@ }, "`x` playlists": { "([^.,0-9]|^)1([^.,0-9]|$)": "`x` λίστες αναπαραγωγής", - "": "" + "": "`x` λίστες αναπαραγωγής" }, "LIVE": "ΖΩΝΤΑΝΑ", "Shared `x` ago": "Μοιράστηκε πριν από `x`", @@ -169,7 +169,7 @@ "Shared `x`": "Μοιράστηκε το `x`", "`x` views": { "([^.,0-9]|^)1([^.,0-9]|$)": "`x` προβολή", - "": "`x` προβολές." + "": "`x` προβολές" }, "Premieres in `x`": "Πρώτη προβολή σε `x`", "Premieres `x`": "Επίσημη πρώτη παράσταση του `x`", diff --git a/locales/fa.json b/locales/fa.json index 837237d3..f2fdbf3b 100644 --- a/locales/fa.json +++ b/locales/fa.json @@ -332,8 +332,8 @@ "Yoruba": "یوروبایی", "Zulu": "زولو", "`x` years": { - "([^.,0-9]|^)1([^.,0-9]|$)": "`x` سال.", - "": "`x` سال." + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` سال", + "": "`x` سال" }, "`x` months": { "([^.,0-9]|^)1([^.,0-9]|$)": "`x` ماه", @@ -345,11 +345,11 @@ }, "`x` days": { "([^.,0-9]|^)1([^.,0-9]|$)": "`x` روز", - "": "`x` روز." + "": "`x` روز" }, "`x` hours": { "([^.,0-9]|^)1([^.,0-9]|$)": "`x` ساعت", - "": "`x` ساعت." + "": "`x` ساعت" }, "`x` minutes": { "([^.,0-9]|^)1([^.,0-9]|$)": "`x` دقیقه", diff --git a/locales/it.json b/locales/it.json index 66471725..d86034e5 100644 --- a/locales/it.json +++ b/locales/it.json @@ -8,7 +8,7 @@ "": "`x` video" }, "`x` playlists": { - "([^.,0-9]|^)1([^.,0-9]|$)": "", + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` playlist", "": "`x` playlist" }, "LIVE": "IN DIRETTA", diff --git a/locales/nl.json b/locales/nl.json index fc13c9bf..df223f04 100644 --- a/locales/nl.json +++ b/locales/nl.json @@ -411,6 +411,5 @@ "location": "", "hdr": "", "filter": "", - "Current version: ": "Huidige versie: ", - "Download is disabled.": "Downloaden is uitgeschakeld." -} \ No newline at end of file + "Current version: ": "Huidige versie: " +} diff --git a/locales/pt-PT.json b/locales/pt-PT.json index cfdb4a4b..d1d94c1f 100644 --- a/locales/pt-PT.json +++ b/locales/pt-PT.json @@ -211,8 +211,8 @@ "`x` ago": "`x` atrás", "Load more": "Carregar mais", "`x` points": { - "([^.,0-9]|^)1([^.,0-9]|$)": "'x' pontos", - "": "'x' pontos" + "([^.,0-9]|^)1([^.,0-9]|$)": "`x` pontos", + "": "`x` pontos" }, "Could not create mix.": "Não foi possível criar mistura.", "Empty playlist": "Lista de reprodução vazia", diff --git a/locales/uk.json b/locales/uk.json index e0c84d74..eb34e49e 100644 --- a/locales/uk.json +++ b/locales/uk.json @@ -8,8 +8,8 @@ "": "`x` відео" }, "`x` playlists": { - "([^.,0-9]|^)1([^.,0-9]|$)": "списки відтворення \"x\"", - "": "списки відтворення \"x\"" + "([^.,0-9]|^)1([^.,0-9]|$)": "списки відтворення `x`", + "": "списки відтворення `x`" }, "LIVE": "ПРЯМИЙ ЕФІР", "Shared `x` ago": "Розміщено `x` назад", diff --git a/locales/zh-TW.json b/locales/zh-TW.json index 7a32ec9b..7a284510 100644 --- a/locales/zh-TW.json +++ b/locales/zh-TW.json @@ -9,7 +9,7 @@ }, "`x` playlists": { "([^.,0-9]|^)1([^.,0-9]|$)": "`x` 播放清單", - "": "" + "": "`x` 播放清單" }, "LIVE": "直播", "Shared `x` ago": "`x` 前分享", From 2c47ef31c0fe48a2f67300b471c5653f0639cc1e Mon Sep 17 00:00:00 2001 From: Samantaz Fox Date: Wed, 21 Apr 2021 16:22:20 +0200 Subject: [PATCH 11/11] Add newline at end of file for 'el' and 'zh-TW' --- locales/el.json | 2 +- locales/zh-TW.json | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/locales/el.json b/locales/el.json index 187bccb6..390b81fd 100644 --- a/locales/el.json +++ b/locales/el.json @@ -412,4 +412,4 @@ "hdr": "", "filter": "", "Current version: ": "Τρέχουσα έκδοση: " -} \ No newline at end of file +} diff --git a/locales/zh-TW.json b/locales/zh-TW.json index 7a284510..87829d96 100644 --- a/locales/zh-TW.json +++ b/locales/zh-TW.json @@ -412,4 +412,4 @@ "hdr": "", "filter": "", "Current version: ": "目前版本: " -} \ No newline at end of file +}