diff --git a/CHANGELOG.md b/CHANGELOG.md index 378e375..e134fc8 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,9 @@ +## Unreleased + +### Changed + +- "Time ago" strings are now localized + ## v0.7.0 - 2021-11-04 ### Added diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 4a5345b..3eba8d6 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -8,11 +8,15 @@ From issues to wikis: everything is on [GitHub](https://github.com/krawieck/lemm ## Linting / Formatting -Everything is formatted with `dartfmt` (no flags) and linted with `dartanalyzer` ([see rules](analysis_options.yaml)). Both are enforced by the CI. +Everything is formatted with `dart format` (no flags) and linted with `dart analyze` ([see rules](analysis_options.yaml)). Both are enforced by the CI. ## Translations - +### Time ago strings + +Strings such as "_About one hour ago_" or "_~1h_" are localizable. We inherit a set of ready translations from [github.com/andresaraujo/timeago.dart/messages](https://github.com/andresaraujo/timeago.dart/tree/master/timeago/lib/src/messages) and provide our own in [lib/l10n/timeago](./lib/l10n/timeago). + +To contribute time ago strings please send a PR containing a class that implements `timeago.LookupMessages`. Place it under [lib/l10n/timeago](./lib/l10n/timeago) with an appropriate name (locale tag) and finally register it in [main_common.dart](./lib/main_common.dart) in the `_setupTimeago` function. Each locale can have a normal (for example "_About one hour ago_") and a short (for example "_~1h_") variant, there are registered separately. ## Architecture @@ -20,7 +24,7 @@ Lemmur is written in Dart using [Flutter](https://flutter.dev/docs). To communic ### State management -`ChangeNotifier` + [Provider](https://github.com/rrousselGit/provider) is used for global state management, [flutter_hooks](https://github.com/rrousselGit/flutter_hooks) is used for local (widget-level) state management. `StatefulWidget`s are avoided all together and any state logic reuse is moved to a [custom hook](./lib/hooks). +[`MobX`](https://github.com/mobxjs/mobx.dart) + [Provider](https://github.com/rrousselGit/provider) is used for global state management, [flutter_hooks](https://github.com/rrousselGit/flutter_hooks) is used for local (widget-level) state management. `StatefulWidget`s are avoided all together and any state logic reuse is moved to a [custom hook](./lib/hooks). ### Project structure @@ -32,13 +36,17 @@ Lemmur is written in Dart using [Flutter](https://flutter.dev/docs). To communic - `stores/`: global stores - `util/`: utilities - `widgets/`: reusable widgets; building blocks for pages -- `main.dart`: entrypoint of the app. Sets up the stores, initializes the themes, renders the first page +- `main_common.dart`: entrypoint of the app. Sets up the stores, initializes the themes, renders the first page ### Things to keep in mind - Be aware that Lemmur supports arbitrary Lemmy instances, don't hardcode instance urls - Remember that a user is not obligated to be logged in, contributed widgets should handle this case +### Lemmy API + +LAC (Lemmy API Client) is used to communicate with Lemmy backends, more information can be found [here](https://github.com/krawieck/lemmy_api_client). + ### For React developers If you come from a React background Flutter shouldn't be anything hard to grasp for you. diff --git a/lib/l10n/intl_ar.arb b/assets/l10n/intl_ar.arb similarity index 51% rename from lib/l10n/intl_ar.arb rename to assets/l10n/intl_ar.arb index e56d0fb..8f3166b 100644 --- a/lib/l10n/intl_ar.arb +++ b/assets/l10n/intl_ar.arb @@ -1,83 +1,68 @@ { "@@locale": "ar", "settings": "الإعدادات", - "password": "الكلمة السرية", + "password": "كلمة السر", "email_or_username": "عنوان البريد أو اسم المستخدم", - "posts": "منشورات", + "posts": "المنشورات", "comments": "التعليقات", - "modlog": "تأريخ الإشراف", + "modlog": "سجل الإشراف", "community": "المجتمع", "url": "الرابط", "title": "العنوان", "body": "المحتوى", "nsfw": "محتوى حساس", "post": "منشور", - "save": "حفظ", - "subscribed": "مُتابِعون", + "save": "احفظ", + "subscribed": "الاشتراكات", + "local": "المحلي", "all": "الكل", - "replies": "الإجابات", + "replies": "الردود", "mentions": "الإشارات", - "to": "إلى", + "from": "من", + "to": "في", "deleted_by_creator": "حذفه صاحبه", "more": "المزيد", - "mark_as_read": "تعيين كمقروء", - "mark_as_unread": "تعيين كغير مقروء بعد", + "mark_as_read": "علمه كمقروء", + "mark_as_unread": "علمه كغير مقروء", "reply": "رد", - "edit": "تعديل", - "delete": "حذف", - "restore": "استعادة", + "edit": "عدّل", + "delete": "احذف", + "restore": "استعدْ", "yes": "نعم", "no": "لا", "avatar": "الصورة الرمزية", + "banner": "اللافتة", + "display_name": "الاسم العلني", + "bio": "السيرة", "email": "البريد الإلكتروني", - "matrix_user": "مستخدم ماتريكس", + "matrix_user": "مستخدم مايتريكس", "sort_type": "ترتيب حسب", "type": "النوع", - "show_nsfw": "إظهار المحتوى الحساس", + "show_nsfw": "أظهر المحتوى الحساس", "send_notifications_to_email": "إرسال الإشعارات عبر البريد الإلكتروني", - "delete_account": "حذف الحساب", - "saved": "تم حفظه", + "delete_account": "احذف الحساب", + "saved": "المحفوظة", "communities": "المجتمعات", "users": "المستخدِمون", "theme": "المظهر", "language": "اللغة", "hot": "المتداولة", - "new_": "جديد", - "old": "قديم", - "top": "المتداولة", - "chat": "دردشة", + "new_": "الأحدث", + "old": "الأقدم", + "top": "الشائع", + "chat": "المحادثة", "admin": "مدير", "by": "مِن", - "not_an_admin": "لستَ مديرا.", - "not_logged_in": "لستَ متصلا.", - "site_ban": "لقد تم طردك مِن هذا الموقع", - "community_ban": "لقد تم طردك مِن هذا المجتمع.", - "downvotes_disabled": "تم تعطيل التصويتات السلبية", - "locked": "محظور", - "couldnt_create_comment": "تعذّر إنشاءالتعليق.", - "password_incorrect": "الكلمة السرية خاطئة.", - "registration_closed": "إنشاء الحسابات معطل", - "passwords_dont_match": "الكلمات السرية غير متطابقة.", - "email_already_exists": "عنوان البريد الإلكتروني هذا موجود بالفعل.", - "user_already_exists": "هذا المستخدِم موجود بالفعل.", - "unsubscribe": "الغ الإشتراك", - "subscribe": "اتبع", - "messages": "لرسائل", - "banned_users": "المستخدمون المحظورون", - "new_password": "لكلمة السرية الجديدة", - "verify_password": "تأكيد الكلمة السرية", - "old_password": "الكلمة السرية القديمة", - "show_avatars": "إظهار الصور الرمزية", - "search": "البحث", - "send_message": "أرسل الرسالة", - "local": "محلي", - "from": "من", - "banner": "اللافتة", - "display_name": "الاسم", - "bio": "السيرة", "not_a_mod_or_admin": "ليس مشرفًا ولا مديرًا.", - "couldnt_find_post": "تعذر العثور على المشاركة.", + "not_an_admin": "ليس مديرا.", + "couldnt_find_post": "تعذر العثور على المنشور.", + "not_logged_in": "لستَ متصلا.", + "site_ban": "حُظرت مِن هذا الموقع", + "community_ban": "حُظرت مِن هذا المجتمع.", + "downvotes_disabled": "عُطلت المعارضات", "invalid_url": "الرابط غير صالح.", + "locked": "أُقفل", + "couldnt_create_comment": "تعذّر إنشاءالتعليق.", "couldnt_like_comment": "تعذر الإعجاب بالتعليق.", "couldnt_update_comment": "تعذر تحديث التعليق.", "no_comment_edit_allowed": "لا يُسمح لك تعديل التعليق.", @@ -85,16 +70,16 @@ "couldnt_get_comments": "تعذر جلب التعليق.", "report_reason_required": "سبب الإبلاغ مطلوب.", "report_too_long": "تقرير الإبلاغ طويل.", - "couldnt_create_report": "تعذر إتشاء التقرير.", - "couldnt_resolve_report": "تعذر تحليل.", - "invalid_post_title": "عنوان المنشور غير", - "couldnt_create_post": "تعذر انشاء المشاركة.", + "couldnt_create_report": "تعذر إنشاء الإبلاغ.", + "couldnt_resolve_report": "تعذر تحليل الإبلاغ.", + "invalid_post_title": "عنوان المنشور غيرصالح", + "couldnt_create_post": "تعذر انشاء المنشور.", "couldnt_like_post": "تعذر الإعجاب بالمنشور.", "couldnt_find_community": "تعذر العثور على المجتمع.", - "couldnt_get_posts": "تعذر جلب المشاركات", - "no_post_edit_allowed": "لا يسمح لك تعديل المشاركة.", - "couldnt_save_post": "تعذر حفظ المشاركة.", - "site_already_exists": "الموقع موجود.", + "couldnt_get_posts": "تعذر جلب المنشورات", + "no_post_edit_allowed": "لا يسمح لك بتعديل المنشور.", + "couldnt_save_post": "تعذر حفظ المنشور.", + "site_already_exists": "الموقع موجود مسبقًا.", "couldnt_update_site": "تعذر تحديث الموقع.", "invalid_community_name": "اسم غير صالح.", "community_already_exists": "المجتمع موجود مسبقًا.", @@ -102,26 +87,45 @@ "community_follower_already_exists": "هذا العضو مشترك في المجمع مسبقا.", "not_a_moderator": "ليس مشرفًا.", "couldnt_update_community": "تعذر تحديث المجتمع.", - "no_community_edit_allowed": "لا يُسمح لك تعديل المجتمع.", + "no_community_edit_allowed": "لا يُسمح لك بتعديل المجتمع.", "system_err_login": "خطأ في النظام. جرب إعادة الولوج.", - "community_user_already_banned": "هذا العضو محضور مسبقا.", + "community_user_already_banned": "هذا العضو محظور مسبقا.", "couldnt_find_that_username_or_email": "تعذر العثور على مستخدم يملك هذا البريد أو اسم المستخدم.", - "invalid_password": "كلمة المرور غير صالحة. يجب ألّا تزيد عن 60 محرفًا.", + "password_incorrect": "كلمة السر خاطئة.", + "registration_closed": "إنشاء الحسابات معطل", + "invalid_password": "كلمة السر غير صالحة. يجب ألّا تزيد عن 60 محرفًا.", + "passwords_dont_match": "كلماتا السر غير متطابقتين.", "captcha_incorrect": "رمز التحقق خاطئ.", "invalid_username": "اسم المستخدم غير صالح.", "bio_length_overflow": "لا يمكن أن تزيد السيرة عن 300 محرف.", + "couldnt_update_user": "تعذر تحديث معلومات المستخدم.", "couldnt_update_private_message": "تعذر تحديث الرسالة الخاصة.", - "couldnt_update_post": "تعذر تحديث", + "couldnt_update_post": "تعذر تحديث المنشور", "couldnt_create_private_message": "تعذر انشاء الرسالة الخاصة.", - "no_private_message_edit_allowed": "لا يسمح لك تعديل الرسالة الخاصة.", - "post_title_too_long": "عنوان المشاركة طويل.", - "delete_account_confirm": "تحذير: ستحذف جميع بياناتك. أدخل كلمة المرور لتأكيد.", - "top_day": "المتداول", - "top_week": "المتداول هذا", - "top_month": "المتداول هذا", - "top_year": "المتداول هذه", - "top_all": "المتداولة", - "most_comments": "الأكثر", - "new_comments": "الأحدث", - "active": "النشط" + "no_private_message_edit_allowed": "لا يسمح لك بتعديل الرسالة الخاصة.", + "post_title_too_long": "عنوان المنشور طويل.", + "email_already_exists": "عنوان البريد الإلكتروني هذا موجود بالفعل.", + "user_already_exists": "هذا المستخدِم موجود بالفعل.", + "unsubscribe": "الغ الإشتراك", + "subscribe": "اشترك", + "messages": "الرسائل", + "banned_users": "المستخدمون المحظورون", + "delete_account_confirm": "تحذير: ستحذف جميع بياناتك من هذا الخادم لكن هذا لا يشمل الخوادم الأخرى. أدخل كلمة المرور لتأكيد.", + "new_password": "كلمة السر الجديدة", + "verify_password": "أكّد كلمة السر", + "old_password": "كلمة السر القديمة", + "show_avatars": "أظهر الصور الرمزية", + "search": "البحث", + "send_message": "أرسل رسالة", + "top_day": "الشائع هذا اليوم", + "top_week": "الشائع هذا الأسبوع", + "top_month": "الشائع هذا الشهر", + "top_year": "الشائع هذه السنة", + "top_all": "الشائع", + "most_comments": "الأكثر تعليقًا", + "new_comments": "الأحدث تعليقًا", + "active": "النشط", + "bot_account": "حساب آلي", + "show_bot_accounts": "أظهر الحسابات الآلية", + "show_read_posts": "أظهر المنشورات المقروءة" } diff --git a/lib/l10n/intl_bg.arb b/assets/l10n/intl_bg.arb similarity index 86% rename from lib/l10n/intl_bg.arb rename to assets/l10n/intl_bg.arb index 8cd91f7..b9e3fb1 100644 --- a/lib/l10n/intl_bg.arb +++ b/assets/l10n/intl_bg.arb @@ -51,7 +51,7 @@ "old": "Стари", "top": "Топ", "chat": "Чат", - "admin": "администратор", + "admin": "админ", "by": "от", "not_a_mod_or_admin": "Не сте модератор или администратор.", "not_an_admin": "Не сте администратор.", @@ -87,7 +87,7 @@ "community_follower_already_exists": "Абонат на общността вече съществува.", "not_a_moderator": "Не сте модератор.", "couldnt_update_community": "Не можахме да обновим тази общност.", - "no_community_edit_allowed": "Нямате право да редактирате тази общност.", + "no_community_edit_allowed": "Нямате право да редактирате тази общност", "system_err_login": "Системна грешка. Опитайте се да се отпишете и впишете наново.", "community_user_already_banned": "Потребителят вече е баннат.", "couldnt_find_that_username_or_email": "Потребителското име или имейла не съществуват.", @@ -106,17 +106,17 @@ "post_title_too_long": "Заглавието на поста е твърде дълго.", "email_already_exists": "Имейлът вече съществува.", "user_already_exists": "Потребителят вече съществува.", - "number_of_users_online": "{count,plural, =1{{count} потребител онлайн} other{{count} потребители онлайн}}", - "number_of_comments": "{count,plural, =1{{count} Коментар} other{{count} Коментари}}", - "number_of_posts": "{count,plural, =1{{count} Пост} other{{count} Постове}}", - "number_of_subscribers": "{count,plural, =1{{count} абонат} other{{count} абонати}}", - "number_of_users": "{count,plural, =1{{count} потребител} other{{count} потребители}}", + "number_of_users_online": "{formattedCount,plural, =1{{formattedCount} потребител онлайн} other{{formattedCount} потребителя онлайн}}", + "number_of_comments": "{formattedCount,plural, =1{{formattedCount} Коментар} other{{formattedCount} Коментара}}", + "number_of_posts": "{formattedCount,plural, =1{{formattedCount} Пост} other{{formattedCount} Поста}}", + "number_of_subscribers": "{formattedCount,plural, =1{{formattedCount} абонат} other{{formattedCount} абоната}}", + "number_of_users": "{formattedCount,plural, =1{{formattedCount} потребител} other{{formattedCount} потребителя}}", "unsubscribe": "Премахни абонамент", "subscribe": "Абонирай", "messages": "Съобщения", "banned_users": "Блокирани Потребители", - "delete_account_confirm": "Внимание: това трайно ще изтрие всичките Ви данни. Въведете своята парола за потвърждение.", - "new_password": "Нова Парола", + "delete_account_confirm": "Внимание: това трайно ще изтрие всичките Ви данни от този сървър. Въведете своята парола за потвърждение.", + "new_password": "Нова парола", "verify_password": "Потвърди парола", "old_password": "Стара парола", "show_avatars": "Покажи Профилни Снимки", @@ -129,5 +129,8 @@ "top_all": "Топ на Всички Времена", "most_comments": "Най-много Коментари", "new_comments": "Нови Коментари", - "active": "Активни" + "active": "Активни", + "bot_account": "Бот-Профил", + "show_bot_accounts": "Показвай Бот-Пофилите", + "show_read_posts": "Показвай прочетени постове" } diff --git a/assets/l10n/intl_bn.arb b/assets/l10n/intl_bn.arb new file mode 100644 index 0000000..8d985f4 --- /dev/null +++ b/assets/l10n/intl_bn.arb @@ -0,0 +1,31 @@ +{ + "@@locale": "bn", + "settings": "পছন্দসমূহ", + "posts": "ভুক্তি", + "comments": "মন্তব্য", + "modlog": "ব্যবস্থাপনা সূচী", + "post": "ভুক্তি", + "deleted_by_creator": "লেখক মুছেছে", + "more": "আরো", + "mark_as_read": "পঠিত", + "mark_as_unread": "অপঠিত", + "reply": "উত্তর", + "edit": "সম্পাদনা", + "delete": "মুছো", + "avatar": "অবতার", + "banner": "কেতন", + "delete_account": "অ্যাকাউন্ট মুছো", + "communities": "সম্প্রদায়", + "users": "ব্যবহারকারী", + "admin": "প্রশাসক", + "locked": "বন্ধ", + "invalid_community_name": "অগ্রহণযোগ্য নাম।", + "number_of_comments": "{formattedCount,plural, =1{{formattedCount}টি মন্তব্য} other{{formattedCount}টি মন্তব্য}}", + "number_of_posts": "{formattedCount,plural, =1{{formattedCount}টি ভুক্তি} other{{formattedCount}টি ভুক্তি}}", + "delete_account_confirm": "সতর্কতা:", + "show_avatars": "অবতার দেখাও", + "send_message": "বার্তা পাঠাও", + "bot_account": "বট অ্যাকাউন্ট", + "show_bot_accounts": "বট অ্যাকাউন্ট দেখাও", + "show_read_posts": "পঠিত ভুক্তি দেখাও" +} diff --git a/lib/l10n/intl_ca.arb b/assets/l10n/intl_ca.arb similarity index 90% rename from lib/l10n/intl_ca.arb rename to assets/l10n/intl_ca.arb index 8bc5c10..2509f81 100644 --- a/lib/l10n/intl_ca.arb +++ b/assets/l10n/intl_ca.arb @@ -53,6 +53,7 @@ "chat": "Xat", "admin": "administrador", "by": "per", + "not_a_mod_or_admin": "No ets un moderador ni un administrador.", "not_an_admin": "No és un administrador.", "couldnt_find_post": "No s’ha pogut trobar l’apunt.", "not_logged_in": "No heu iniciat una sessió.", @@ -105,11 +106,11 @@ "post_title_too_long": "El títol de l’apunt és massa llarg.", "email_already_exists": "L’adreça ja és en ús.", "user_already_exists": "L’usuari ja existeix.", - "number_of_users_online": "{count,plural, =1{{count} usuari en línia} other{{count} usuaris en línia}}", - "number_of_comments": "{count,plural, =1{{count} comentari} other{{count} comentaris}}", - "number_of_posts": "{count,plural, =1{{count} Publicació} other{{count} Publicacions}}", - "number_of_subscribers": "{count,plural, =1{{count} subscriptor} other{{count} subscriptors}}", - "number_of_users": "{count,plural, =1{{count} usuari} other{{count} usuaris}}", + "number_of_users_online": "{formattedCount,plural, =1{{formattedCount} usuari en línia} other{{formattedCount} usuaris en línia}}", + "number_of_comments": "{formattedCount,plural, =1{{formattedCount} comentari} other{{formattedCount} comentaris}}", + "number_of_posts": "{formattedCount,plural, =1{{formattedCount} Publicació} other{{formattedCount} Publicacions}}", + "number_of_subscribers": "{formattedCount,plural, =1{{formattedCount} subscriptor} other{{formattedCount} subscriptors}}", + "number_of_users": "{formattedCount,plural, =1{{formattedCount} usuari} other{{formattedCount} usuaris}}", "unsubscribe": "Dóna’t de baixa", "subscribe": "Subscriu-t’hi", "messages": "Missatges", @@ -128,6 +129,5 @@ "top_all": "El millor de tots els temps", "most_comments": "Més comentaris", "new_comments": "Comentaris nous", - "active": "Actiu", - "not_a_mod_or_admin": "No ets un moderador ni un administrador." + "active": "Actiu" } diff --git a/assets/l10n/intl_cs.arb b/assets/l10n/intl_cs.arb new file mode 100644 index 0000000..2633055 --- /dev/null +++ b/assets/l10n/intl_cs.arb @@ -0,0 +1,128 @@ +{ + "@@locale": "cs", + "settings": "Nastavení", + "password": "Heslo", + "email_or_username": "E-mail nebo uživatelské jméno", + "posts": "Příspěvky", + "comments": "Komentáře", + "modlog": "Moderátorský záznam", + "community": "Komunita", + "url": "URL", + "title": "Titulek", + "body": "Obsah", + "nsfw": "Citlivý obsah", + "post": "odeslat", + "save": "uložit", + "subscribed": "Odebíráno", + "local": "Místní", + "all": "Vše", + "replies": "Odpovědi", + "mentions": "Zmínky", + "from": "od", + "deleted_by_creator": "smazáno tvůrcem", + "more": "více", + "mark_as_read": "označit jako přečtené", + "mark_as_unread": "označit jako nepřečtené", + "reply": "odpovědět", + "edit": "upravit", + "delete": "smazat", + "restore": "obnovit", + "yes": "ano", + "no": "ne", + "avatar": "Avatar", + "banner": "Banner", + "display_name": "Zobrazovaný název", + "bio": "O mně", + "email": "E-mail", + "matrix_user": "Účet Matrix", + "sort_type": "Řadit dle", + "type": "Typ", + "show_nsfw": "Zobrazovat citlivý obsah", + "send_notifications_to_email": "Zasílat notifikace na e-mail", + "delete_account": "Smazat účet", + "saved": "Uloženo", + "communities": "Komunity", + "users": "Uživatelé", + "theme": "Motiv", + "language": "Jazyk", + "hot": "Hot", + "new_": "Nejnovější", + "old": "Nejstarší", + "top": "Top", + "chat": "Chat", + "admin": "administrátor", + "by": "od", + "not_a_mod_or_admin": "Není moderátor nebo administrátor.", + "not_an_admin": "Není administrátor.", + "couldnt_find_post": "Nepodařilo se nalézt příspěvek.", + "not_logged_in": "Nepřihlášen/a.", + "site_ban": "Přístup na tuto stránku vám byl zakázán", + "community_ban": "Přístup to této komunity vám byl zakázán.", + "downvotes_disabled": "Nesouhlasy deaktivovány", + "invalid_url": "Neplatná URL.", + "locked": "zamčeno", + "couldnt_create_comment": "Komentář se nepodařilo vytvořit.", + "couldnt_update_comment": "Nepodařilo se aktualizovat komentář.", + "no_comment_edit_allowed": "Úprava komentáře není povolena.", + "couldnt_save_comment": "Nepodařilo se uložit komentář.", + "couldnt_get_comments": "Nepodařilo se získat komentáře.", + "report_reason_required": "Důvod hlášení je povinný.", + "report_too_long": "Hlášení je příliš dlouhé.", + "couldnt_create_report": "Nepodařilo se vytvořit hlášení.", + "couldnt_resolve_report": "Hlášení se nepodařilo vyřešit.", + "invalid_post_title": "Neplatný titulek příspěvku", + "couldnt_create_post": "Nepodařilo se vytvořit příspěvek.", + "couldnt_find_community": "Nepodařilo se nalézt komunitu.", + "couldnt_get_posts": "Nepodařilo se získat příspěvky", + "no_post_edit_allowed": "Úprava příspěvku není povolena.", + "couldnt_save_post": "Příspěvek se nepodařilo uložit.", + "site_already_exists": "Stránka již existuje.", + "couldnt_update_site": "Nepodařilo se aktualizovat stránku.", + "invalid_community_name": "Neplatné jméno.", + "community_already_exists": "Komunita již existuje.", + "community_moderator_already_exists": "Moderátor komunity již existuje.", + "community_follower_already_exists": "Sledující komunity již existuje.", + "not_a_moderator": "Není moderátor.", + "couldnt_update_community": "Nepodařilo se aktualizovat komunitu.", + "no_community_edit_allowed": "Úprava komunity není povolena.", + "system_err_login": "Systémová chyba. Zkuste se odhlásit a znovu přihlásit.", + "community_user_already_banned": "Uživateli již byl přístup do komunity zakázán.", + "couldnt_find_that_username_or_email": "Nepodařilo se nalézt uživatelské jméno nebo e-mail.", + "password_incorrect": "Špatné heslo.", + "registration_closed": "Registrace uzavřena", + "invalid_password": "Neplatné heslo. Heslo nesmí být delší jak 60 znaků.", + "passwords_dont_match": "Hesla nesouhlasí.", + "captcha_incorrect": "Chybně opsaná captcha.", + "invalid_username": "Neplatné uživatelské jméno.", + "bio_length_overflow": "\"O mně\" nesmí přesáhnout 300 znaků.", + "couldnt_update_user": "Nepodařilo se aktualizovat uživatele.", + "couldnt_update_private_message": "Nepodařilo se upravit soukromou zprávu.", + "couldnt_update_post": "Nepodařilo se aktualizovat příspěvek", + "couldnt_create_private_message": "Nepodařilo se vytvořit soukromou zprávu.", + "no_private_message_edit_allowed": "Úprava soukromých zpráv není povolena.", + "post_title_too_long": "Titulek příspěvku je příliš dlouhý.", + "email_already_exists": "E-mail již existuje.", + "user_already_exists": "Uživatel již existuje.", + "unsubscribe": "Zrušit odběr", + "subscribe": "Odebírat", + "messages": "Zprávy", + "banned_users": "Zakázaní uživatelé", + "delete_account_confirm": "Upozornění: toto trvale vymaže všechna vaše data z této instance. Vaše data nemusí být odstraněna z jiných existujících instancí. Zadejte své heslo pro potvrzení.", + "new_password": "Nové heslo", + "verify_password": "Potvrzení hesla", + "old_password": "Původní heslo", + "show_avatars": "Ukázat avatary", + "search": "Hledat", + "send_message": "Odeslat zprávu", + "top_day": "Top za den", + "top_week": "Top za týden", + "top_month": "Top za měsíc", + "top_year": "Top za rok", + "top_all": "Top za celou dobu", + "most_comments": "Nejkomentovanější", + "new_comments": "Nové komentáře", + "active": "Aktivní", + "bot_account": "Účet robota", + "show_bot_accounts": "Zobrazit roboty", + "show_read_posts": "Zobrazit přečtené příspěvky" +} diff --git a/assets/l10n/intl_cy.arb b/assets/l10n/intl_cy.arb new file mode 100644 index 0000000..800c9c5 --- /dev/null +++ b/assets/l10n/intl_cy.arb @@ -0,0 +1,6 @@ +{ + "@@locale": "cy", + "posts": "Postiadau", + "comments": "Sylwadau", + "post": "post" +} diff --git a/lib/l10n/intl_da.arb b/assets/l10n/intl_da.arb similarity index 88% rename from lib/l10n/intl_da.arb rename to assets/l10n/intl_da.arb index ce6958b..bd7effe 100644 --- a/lib/l10n/intl_da.arb +++ b/assets/l10n/intl_da.arb @@ -105,11 +105,11 @@ "post_title_too_long": "Indlægstitel for lang.", "email_already_exists": "Emailen findes allerede.", "user_already_exists": "Brugeren findes allerede.", - "number_of_users_online": "{count,plural, =1{{count} Bruger Online} other{{count} Brugere Online}}", - "number_of_comments": "{count,plural, =1{{count} Kommentar} other{{count} Kommentarer}}", - "number_of_posts": "{count,plural, =1{{count} Indlæg} other{{count} Indlæg}}", - "number_of_subscribers": "{count,plural, =1{{count} Abonnent} other{{count} Abonnenter}}", - "number_of_users": "{count,plural, =1{{count} Bruger} other{{count} Brugere}}", + "number_of_users_online": "{formattedCount,plural, =1{{formattedCount} Bruger Online} other{{formattedCount} Brugere Online}}", + "number_of_comments": "{formattedCount,plural, =1{{formattedCount} Kommentar} other{{formattedCount} Kommentarer}}", + "number_of_posts": "{formattedCount,plural, =1{{formattedCount} Indlæg} other{{formattedCount} Indlæg}}", + "number_of_subscribers": "{formattedCount,plural, =1{{formattedCount} Abonnent} other{{formattedCount} Abonnenter}}", + "number_of_users": "{formattedCount,plural, =1{{formattedCount} Bruger} other{{formattedCount} Brugere}}", "unsubscribe": "Afmeld abbonement", "subscribe": "Abboner", "messages": "Beskeder", diff --git a/lib/l10n/intl_de.arb b/assets/l10n/intl_de.arb similarity index 74% rename from lib/l10n/intl_de.arb rename to assets/l10n/intl_de.arb index bfcff43..0b0df1e 100644 --- a/lib/l10n/intl_de.arb +++ b/assets/l10n/intl_de.arb @@ -53,6 +53,7 @@ "chat": "Chat", "admin": "Administrator", "by": "von", + "not_a_mod_or_admin": "Kein Moderator oder Admin.", "not_an_admin": "Kein Administrator.", "couldnt_find_post": "Konnte Beitrag nicht finden.", "not_logged_in": "Nicht eingeloggt.", @@ -61,14 +62,18 @@ "downvotes_disabled": "Downvotes deaktiviert", "invalid_url": "Ungültige URL.", "locked": "gesperrt", - "couldnt_create_comment": "Konnte Kommentar nicht anlegen.", + "couldnt_create_comment": "Konnte Kommentar nicht erstellen.", "couldnt_like_comment": "Konnte nicht liken.", "couldnt_update_comment": "Konnte Kommentar nicht aktualisieren.", "no_comment_edit_allowed": "Keine Erlaubnis Kommentar zu editieren.", "couldnt_save_comment": "Konnte Kommentar nicht speichern.", "couldnt_get_comments": "Konnte Kommentare nicht laden.", + "report_reason_required": "Meldungsgrund benötigt.", + "report_too_long": "Meldung zu lang.", + "couldnt_create_report": "Meldung konnte nicht angelegt werden.", + "couldnt_resolve_report": "Meldung konnte nicht gelöst werden.", "invalid_post_title": "Ungültiger Post Titel", - "couldnt_create_post": "Konnte Beitrag nicht anlegen.", + "couldnt_create_post": "Konnte Beitrag nicht erstellen.", "couldnt_like_post": "Konnte Beitrag nicht liken.", "couldnt_find_community": "Konnte Community nicht finden.", "couldnt_get_posts": "Konnte Beiträge nicht holen", @@ -101,16 +106,16 @@ "post_title_too_long": "Posttitel zu lang.", "email_already_exists": "Email existiert bereits.", "user_already_exists": "Nutzer existiert bereits.", - "number_of_users_online": "{count,plural, =1{{count} Benutzer online} other{{count} Benutzer*innen online}}", - "number_of_comments": "{count,plural, =1{{count} Kommentar} other{{count} Kommentare}}", - "number_of_posts": "{count,plural, =1{{count} Beitrag} other{{count} Beiträge}}", - "number_of_subscribers": "{count,plural, =1{{count} Abonnent} other{{count} Abonnent*innen}}", - "number_of_users": "{count,plural, =1{{count} Benutzer} other{{count} Benutzer*innen}}", + "number_of_users_online": "{formattedCount,plural, =1{{formattedCount} Benutzer online} other{{formattedCount} Benutzer*innen online}}", + "number_of_comments": "{formattedCount,plural, =1{{formattedCount} Kommentar} other{{formattedCount} Kommentare}}", + "number_of_posts": "{formattedCount,plural, =1{{formattedCount} Beitrag} other{{formattedCount} Beiträge}}", + "number_of_subscribers": "{formattedCount,plural, =1{{formattedCount} Abonnent} other{{formattedCount} Abonnent*innen}}", + "number_of_users": "{formattedCount,plural, =1{{formattedCount} Benutzer} other{{formattedCount} Benutzer*innen}}", "unsubscribe": "Deabonnieren", "subscribe": "Abonnieren", "messages": "Nachrichten", "banned_users": "Gebannte Benutzer", - "delete_account_confirm": "Achtung: Dadurch werden alle Ihre Daten dauerhaft gelöscht. Geben Sie zur Bestätigung Ihr Passwort ein.", + "delete_account_confirm": "Achtung: Dadurch werden alle deine Daten aus dieser Instanz dauerhaft gelöscht. Es mag sein, dass deine Daten nicht aus anderen Instanzen gelöscht werden. Gib zur Bestätigung dein Passwort ein.", "new_password": "Neues Passwort", "verify_password": "Passwort überprüfen", "old_password": "Letztes Passwort", @@ -118,5 +123,14 @@ "search": "Suchen", "send_message": "Nachricht absenden", "top_day": "Top täglich", - "active": "Aktiv" + "top_week": "Top wöchentlich", + "top_month": "Top monatlich", + "top_year": "Top jährlich", + "top_all": "Top aller Zeiten", + "most_comments": "Meistkommentiert", + "new_comments": "Neue Kommentare", + "active": "Aktiv", + "bot_account": "Bot Konto", + "show_bot_accounts": "Bot-Konten anzeigen", + "show_read_posts": "Gelesene Beiträge anzeigen" } diff --git a/lib/l10n/intl_el.arb b/assets/l10n/intl_el.arb similarity index 64% rename from lib/l10n/intl_el.arb rename to assets/l10n/intl_el.arb index bfa2d3f..6ddb6ad 100644 --- a/lib/l10n/intl_el.arb +++ b/assets/l10n/intl_el.arb @@ -10,7 +10,7 @@ "url": "URL", "title": "Επικεφαλίδα", "body": "Κορμός", - "nsfw": "Ακατάλληλο για ανηλίκους", + "nsfw": "Ακατάλληλο εν ώρα εργασίας", "post": "δημοσίευση", "save": "αποθήκευση", "subscribed": "Συνδρομές", @@ -22,8 +22,8 @@ "to": "προς", "deleted_by_creator": "διαγράφηκε από τον δημιουργό", "more": "περισσότερα", - "mark_as_read": "επισήμανση ως διαβασμένο", - "mark_as_unread": "επισήμανση ως μη διαβασμένο", + "mark_as_read": "επισήμανση ως αναγνωσμένο", + "mark_as_unread": "επισήμανση ως μη αναγνωσμένο", "reply": "απάντηση", "edit": "επεξεργασία", "delete": "διαγραφή", @@ -38,7 +38,7 @@ "matrix_user": "Χρήστης Matrix", "sort_type": "Ταξινόμηση κατά", "type": "Είδος", - "show_nsfw": "Προβολή περιεχομένου ακατάλληλου για ανηλίκους", + "show_nsfw": "Προβολή περιεχομένου ακατάλληλου εν ώρα εργασίας", "send_notifications_to_email": "Αποστολή ειδοποιήσεων στη διεύθυνση ηλεκτρονικού ταχυδρομείου", "delete_account": "Διαγραφή λογαριασμού", "saved": "Αποθηκευμένα", @@ -46,79 +46,80 @@ "users": "Χρήστες", "theme": "Θέμα", "language": "Γλώσσα", - "hot": "Δημοφιλία", - "new_": "Φρεσκάδα", + "hot": "Δημοφιλή", + "new_": "Νέα", "old": "Παλιά", "top": "Κορυφαία", "chat": "Συνομιλία", "admin": "διαχειριστής", "by": "από", + "not_a_mod_or_admin": "Ο χρήστης δεν είναι συντονιστής ή διαχειριστής.", "not_an_admin": "Ο χρήστης δεν είναι διαχειριστής.", - "couldnt_find_post": "Δεν μπόρεσε να βρεθεί η δημοσίευση.", - "not_logged_in": "Αποσυνδεδέμενος.", + "couldnt_find_post": "Αδυναμία εύρεσης δημοσίευσης.", + "not_logged_in": "Δεν είστε συνδεμένος.", "site_ban": "Έχετε αποβληθεί από τον ιστότοπο", "community_ban": "Έχετε αποβληθεί από αυτή την κοινότητα.", "downvotes_disabled": "Αρνητικές ψήφοι απενεργοποιημένες", "invalid_url": "Μη έγκυρο URL.", "locked": "κλειδωμένο", "couldnt_create_comment": "Αδυναμία δημιουργίας σχόλιου.", - "couldnt_like_comment": "Δεν μπόρεσε να ψηφισθεί θετικά το σχόλιο.", - "couldnt_update_comment": "Δεν μπόρεσε να ενημερωθεί το σχόλιο.", - "no_comment_edit_allowed": "Δεν επιτρέπεται η επεξεργασία του σχολίου.", - "couldnt_save_comment": "Δεν μπόρεσε να αποθηκευτεί το σχόλιο.", - "couldnt_get_comments": "Δεν μπόρεσαν να φορτώσουν τα σχόλια.", + "couldnt_like_comment": "Αδυναμία αποθήκευσης θετικής ψήφου στο σχόλιο.", + "couldnt_update_comment": "Αδυναμία ενημέρωσης σχολίου.", + "no_comment_edit_allowed": "Δεν επιτρέπεται η επεξεργασία σχολίου.", + "couldnt_save_comment": "Αδυναμία αποθήκευσης σχολίου.", + "couldnt_get_comments": "Αδυναμία φόρτωσης σχολίων.", "report_reason_required": "Απαιτείται λόγος αναφοράς.", "report_too_long": "Η αναφορά είναι υπερβολικά μεγάλη.", "couldnt_create_report": "Αδυναμία δημιουργίας αναφοράς.", "couldnt_resolve_report": "Αδυναμία επίλυσης αναφοράς.", "invalid_post_title": "Μη έγκυρη επικεφαλίδα δημοσίευσης", - "couldnt_create_post": "Δεν μπόρεσε να δημιουργηθεί η δημοσίευση.", - "couldnt_like_post": "Δεν μπόρεσε να ψηφισθεί θετικά η δημοσίευση.", - "couldnt_find_community": "Δεν μπόρεσε να βρεθεί η κοινότητα.", - "couldnt_get_posts": "Αδυναμία εύρεσης δημοσιεύσων", - "no_post_edit_allowed": "Δεν επιτρέπεται η επεξεργασία της δημοσίευσης.", - "couldnt_save_post": "Δεν μπόρεσε να αποθηκευτεί η δημοσίευση.", + "couldnt_create_post": "Αδυναμία δημιουργίας δημοσίευσης.", + "couldnt_like_post": "Αδυναμία αποθήκευσης θετικής ψήφου στη δημοσίευση.", + "couldnt_find_community": "Αδυναμία εύρεσης κοινότητας.", + "couldnt_get_posts": "Αδυναμία φόρτωσης δημοσιεύσεων", + "no_post_edit_allowed": "Δεν επιτρέπεται η επεξεργασία δημοσίευσης.", + "couldnt_save_post": "Αδυναμία αποθήκευσης δημοσίευσης.", "site_already_exists": "Ο ιστότοπος υπάρχει ήδη.", "couldnt_update_site": "Αδυναμία ενημέρωσης ιστότοπου.", - "invalid_community_name": "Άκυρο όνομα.", + "invalid_community_name": "Μη έγκυρο όνομα.", "community_already_exists": "Η κοινότητα υπάρχει ήδη.", "community_moderator_already_exists": "Ο χρήστης είναι ήδη συντονιστής της κοινότητας.", "community_follower_already_exists": "Ο χρήστης είναι ήδη εγγεγραμμένος στην κοινότητα.", - "not_a_moderator": "Δεν είναι συντονιστής.", - "couldnt_update_community": "Δεν μπόρεσε να ενημερωθεί η κοινότητα.", - "no_community_edit_allowed": "Δεν επιτρέπεται η επεξεργασία της κοινότητας.", + "not_a_moderator": "Ο χρήστης δεν είναι συντονιστής.", + "couldnt_update_community": "Αδυναμία ενημέρωσης κοινότητας.", + "no_community_edit_allowed": "Δεν επιτρέπεται η επεξεργασία κοινότητας.", "system_err_login": "Σφάλμα στο σύστημα. Προσπαθήστε να αποσυνδεθείτε και να συνδεθείτε ξανά.", "community_user_already_banned": "Ο χρήστης έχει ήδη αποβληθεί από την κοινότητα.", "couldnt_find_that_username_or_email": "Αδυναμία εύρεσης χρήστη ή διεύθυνσης ηλεκτρονικού ταχυδρομείου.", - "password_incorrect": "Λάθος κωδικός.", + "password_incorrect": "Εσφαλμένος κωδικός.", "registration_closed": "Εγγραφή κλειστή", "invalid_password": "Άκυρος κωδικός. Ο κωδικός πρέπει να είναι <= 60 χαρακτήρες.", "passwords_dont_match": "Οι κωδικοί δεν ταιριάζουν.", "captcha_incorrect": "Εσφαλμένο captcha.", - "invalid_username": "Λάθος όνομα χρήστη.", + "invalid_username": "Εσφαλμένο όνομα χρήστη.", "bio_length_overflow": "Το βιογραφικό χρήστη δεν μπορεί να ξεπερνά τους 300 χαρακτήρες.", "couldnt_update_user": "Αδυναμία ενημέρωσης χρήστη.", "couldnt_update_private_message": "Αδυναμία ενημέρωσης προσωπικού μηνύματος.", - "couldnt_update_post": "Αδυναμία ενημέρωσης δημοσιεύσης", + "couldnt_update_post": "Αδυναμία ενημέρωσης δημοσίευσης", "couldnt_create_private_message": "Αδυναμία δημιουργίας προσωπικού μηνύματος.", "no_private_message_edit_allowed": "Δεν επιτρέπεται η επεξεργασία του προσωπικού μηνύματος.", "post_title_too_long": "Η επικεφαλίδα της δημοσίευσης είναι υπερβολικά μεγάλη.", "email_already_exists": "Η διεύθυνση ηλεκτρονικού ταχυδρομείου υπάρχει ήδη.", "user_already_exists": "Ο χρήστης υπάρχει ήδη.", - "number_of_users_online": "{count,plural, =1{{count} ενεργός χρήστης} other{{count} ενεργοί χρήστες}}", - "number_of_comments": "{count,plural, =1{{count} Σχόλιο} other{{count} Σχόλια}}", - "number_of_posts": "{count,plural, =1{{count} Δημοσίευση} other{{count} Δημοσιεύσεις}}", - "number_of_subscribers": "{count,plural, =1{{count} εγγεγραμμένος} other{{count} εγγεγραμμένοι}}", - "number_of_users": "{count,plural, =1{{count} χρήστης} other{{count} χρήστες}}", + "number_of_users_online": "{formattedCount,plural, =1{{formattedCount} ενεργός χρήστης} other{{formattedCount} ενεργοί χρήστες}}", + "number_of_comments": "{formattedCount,plural, =1{{formattedCount} σχόλιο} other{{formattedCount} σχόλια}}", + "number_of_posts": "{formattedCount,plural, =1{{formattedCount} δημοσίευση} other{{formattedCount} δημοσιεύσεις}}", + "number_of_subscribers": "{formattedCount,plural, =1{{formattedCount} εγγεγραμμένος} other{{formattedCount} εγγεγραμμένοι}}", + "number_of_users": "{formattedCount,plural, =1{{formattedCount} χρήστης} other{{formattedCount} χρήστες}}", "unsubscribe": "Απεγγραφή", "subscribe": "Εγγραφή", "messages": "Μηνύματα", "banned_users": "Αποβεβλημένοι χρήστες", - "delete_account_confirm": "Προσοχή: αυτό θα διαγράψει όλα τα δεδομένα σας. Είσαγετε τον κωδικό σας για επιβεβαίωση.", + "delete_account_confirm": "Προσοχή: αυτό θα διαγράψει όλα τα δεδομένα σας από αυτόν τον διακομιστή. Τα δεδομένα σας ενδέχεται να μη διαγραφούν σε άλλους διακομιστές. Εισάγετε τον κωδικό σας για επιβεβαίωση.", "new_password": "Νέος κωδικός", "verify_password": "Επαλήθευση κωδικού", "old_password": "Παλιός κωδικός", - "show_avatars": "Εμφάνιση των άβαταρς", + "show_avatars": "Εμφάνιση άβαταρς", "search": "Αναζήτηση", "send_message": "Αποστολή μηνύματος", "top_day": "Κορυφαία σήμερα", @@ -127,7 +128,9 @@ "top_year": "Κορυφαία φέτος", "top_all": "Κορυφαία από πάντα", "most_comments": "Περισσότερα σχόλια", - "new_comments": "Νέα σχόλια", - "active": "Δραστηριότητα", - "not_a_mod_or_admin": "Δεν είστε συντονιστής ή διαχειριστής." + "new_comments": "Πρόσφατα σχόλια", + "active": "Δραστήρια", + "bot_account": "Λογαριασμός bot", + "show_bot_accounts": "Προβολή λογαριασμών bot", + "show_read_posts": "Προβολή αναγνωσμένων δημοσιεύσεων" } diff --git a/lib/l10n/intl_en.arb b/assets/l10n/intl_en.arb similarity index 90% rename from lib/l10n/intl_en.arb rename to assets/l10n/intl_en.arb index 8497c6b..f9af2a1 100644 --- a/lib/l10n/intl_en.arb +++ b/assets/l10n/intl_en.arb @@ -212,40 +212,40 @@ "@email_already_exists": {}, "user_already_exists": "User already exists.", "@user_already_exists": {}, - "number_of_users_online": "{count,plural, =1{{count} user online} other{{count} users online}}", + "number_of_users_online": "{formattedCount,plural, =1{{formattedCount} user online} other{{formattedCount} users online}}", "@number_of_users_online": { "placeholders": { - "count": {} + "formattedCount": {} } }, - "number_of_comments": "{count,plural, =1{{count} comment} other{{count} comments}}", + "number_of_comments": "{formattedCount,plural, =1{{formattedCount} comment} other{{formattedCount} comments}}", "@number_of_comments": { "placeholders": { - "count": { + "formattedCount": { "type": "int", "format": "compact" } } }, - "number_of_posts": "{count,plural, =1{{count} post} other{{count} posts}}", + "number_of_posts": "{formattedCount,plural, =1{{formattedCount} post} other{{formattedCount} posts}}", "@number_of_posts": { "placeholders": { - "count": { + "formattedCount": { "type": "int", "format": "compact" } } }, - "number_of_subscribers": "{count,plural, =1{{count} subscriber} other{{count} subscribers}}", + "number_of_subscribers": "{formattedCount,plural, =1{{formattedCount} subscriber} other{{formattedCount} subscribers}}", "@number_of_subscribers": { "placeholders": { - "count": {} + "formattedCount": {} } }, - "number_of_users": "{count,plural, =1{{count} user} other{{count} users}}", + "number_of_users": "{formattedCount,plural, =1{{formattedCount} user} other{{formattedCount} users}}", "@number_of_users": { "placeholders": { - "count": {} + "formattedCount": {} } }, "unsubscribe": "unsubscribe", @@ -256,7 +256,7 @@ "@messages": {}, "banned_users": "Banned users", "@banned_users": {}, - "delete_account_confirm": "Warning: this will permanently delete all your data. Enter your password to confirm.", + "delete_account_confirm": "Warning: this will permanently delete all of your data from this instance. Your data may not be deleted on other, existing instances. Enter your password to confirm.", "@delete_account_confirm": {}, "new_password": "New password", "@new_password": {}, diff --git a/lib/l10n/intl_eo.arb b/assets/l10n/intl_eo.arb similarity index 88% rename from lib/l10n/intl_eo.arb rename to assets/l10n/intl_eo.arb index 90bb870..77cda7b 100644 --- a/lib/l10n/intl_eo.arb +++ b/assets/l10n/intl_eo.arb @@ -53,6 +53,7 @@ "chat": "Babilo", "admin": "administranto", "by": "de", + "not_a_mod_or_admin": "Nek reguligisto nek administranto.", "not_an_admin": "Ne estas administranto.", "couldnt_find_post": "Ne povis trovi la afiŝon.", "not_logged_in": "Nesalutinta.", @@ -105,11 +106,11 @@ "post_title_too_long": "Titolo de afiŝo estas tro longa.", "email_already_exists": "Retpoŝtadreso jam ekzistas.", "user_already_exists": "Uzanto jam ekzistas.", - "number_of_users_online": "{count,plural, =1{{count} uzanto enreta} other{{count} uzantoj enretaj}}", - "number_of_comments": "{count,plural, =1{{count} komento} other{{count} komentoj}}", - "number_of_posts": "{count,plural, =1{{count} afiŝo} other{{count} afiŝoj}}", - "number_of_subscribers": "{count,plural, =1{{count} abonanto} other{{count} abonantoj}}", - "number_of_users": "{count,plural, =1{{count} uzanto} other{{count} uzantoj}}", + "number_of_users_online": "{formattedCount,plural, =1{{formattedCount} uzanto enreta} other{{formattedCount} uzantoj enretaj}}", + "number_of_comments": "{formattedCount,plural, =1{{formattedCount} komento} other{{formattedCount} komentoj}}", + "number_of_posts": "{formattedCount,plural, =1{{formattedCount} afiŝo} other{{formattedCount} afiŝoj}}", + "number_of_subscribers": "{formattedCount,plural, =1{{formattedCount} abonanto} other{{formattedCount} abonantoj}}", + "number_of_users": "{formattedCount,plural, =1{{formattedCount} uzanto} other{{formattedCount} uzantoj}}", "unsubscribe": "Malaboni", "subscribe": "Aboni", "messages": "Mesaĝoj", @@ -128,6 +129,5 @@ "top_all": "Supraj ĉiamaj", "most_comments": "Plej komentitaj", "new_comments": "Nove komentitaj", - "active": "Aktiva", - "not_a_mod_or_admin": "Nek reguligisto nek administranto." + "active": "Aktiva" } diff --git a/lib/l10n/intl_es.arb b/assets/l10n/intl_es.arb similarity index 83% rename from lib/l10n/intl_es.arb rename to assets/l10n/intl_es.arb index 494f913..3028529 100644 --- a/lib/l10n/intl_es.arb +++ b/assets/l10n/intl_es.arb @@ -10,7 +10,7 @@ "url": "URL", "title": "Título", "body": "Descripción", - "nsfw": "Para adultos", + "nsfw": "No seguro para el trabajo (NSFW)", "post": "publicar", "save": "guardar", "subscribed": "Suscrito", @@ -38,7 +38,7 @@ "matrix_user": "Usuario Matrix", "sort_type": "Tipo de orden", "type": "Tipo", - "show_nsfw": "Mostrar contenido para adultos", + "show_nsfw": "Mostrar contenido no seguro para el trabajo (NSFW)", "send_notifications_to_email": "Enviar notificaciones al correo", "delete_account": "Eliminar cuenta", "saved": "Guardado", @@ -53,6 +53,7 @@ "chat": "Chat", "admin": "administrador", "by": "por", + "not_a_mod_or_admin": "No eres un moderador ni un administrador.", "not_an_admin": "No es un administrador.", "couldnt_find_post": "No se pudo encontrar la publicación.", "not_logged_in": "No has iniciado sesión.", @@ -105,16 +106,16 @@ "post_title_too_long": "El título de la publicación es muy largo.", "email_already_exists": "El correo ya está en uso.", "user_already_exists": "El usuario ya existe.", - "number_of_users_online": "{count,plural, =1{{count} usuario en línea} other{{count} usuarios en línea}}", - "number_of_comments": "{count,plural, =1{{count} Comentario} other{{count} Comentarios}}", - "number_of_posts": "{count,plural, =1{{count} Publicación} other{{count} Publicaciones}}", - "number_of_subscribers": "{count,plural, =1{{count} suscriptor} other{{count} suscriptores}}", - "number_of_users": "{count,plural, =1{{count} usuario} other{{count} usuarios}}", + "number_of_users_online": "{formattedCount,plural, =1{{formattedCount} usuario en línea} other{{formattedCount} usuarios en línea}}", + "number_of_comments": "{formattedCount,plural, =1{{formattedCount} Comentario} other{{formattedCount} Comentarios}}", + "number_of_posts": "{formattedCount,plural, =1{{formattedCount} Publicación} other{{formattedCount} Publicaciones}}", + "number_of_subscribers": "{formattedCount,plural, =1{{formattedCount} suscriptor/a} other{{formattedCount} suscriptores/as}}", + "number_of_users": "{formattedCount,plural, =1{{formattedCount} usuari@} other{{formattedCount} usuari@s}}", "unsubscribe": "Desuscribirse", "subscribe": "Suscribirse", "messages": "Mensajes", "banned_users": "Usuarios expulsados", - "delete_account_confirm": "Advertencia: esta acción eliminará permanentemente toda su información. Introduzca su contraseña para confirmar.", + "delete_account_confirm": "Advertencia: esto eliminará permanentemente todos sus datos de esta instancia. Tus datos no podrán ser eliminados en otras instancias existentes. Introduzca su contraseña para confirmar.", "new_password": "Nueva contraseña", "verify_password": "Verificar contraseña", "old_password": "Antigua contraseña", @@ -129,5 +130,7 @@ "most_comments": "Más comentados", "new_comments": "Nuevos Comentarios", "active": "Activo", - "not_a_mod_or_admin": "No eres un moderador ni un administrador." + "bot_account": "Cuenta de bot", + "show_bot_accounts": "Mostrar las cuentas de bots", + "show_read_posts": "Mostrar publicaciones leídas" } diff --git a/lib/l10n/intl_eu.arb b/assets/l10n/intl_eu.arb similarity index 75% rename from lib/l10n/intl_eu.arb rename to assets/l10n/intl_eu.arb index 60684df..4c0a478 100644 --- a/lib/l10n/intl_eu.arb +++ b/assets/l10n/intl_eu.arb @@ -22,8 +22,8 @@ "to": "non:", "deleted_by_creator": "sortzaileak ezabatu du", "more": "gehiago", - "mark_as_read": "markatu irakurritako gisa", - "mark_as_unread": "markatu ez irakurrita", + "mark_as_read": "markatu irakurritakoa bezala", + "mark_as_unread": "markatu ez irakurritakoa bezala", "reply": "erantzun", "edit": "editatu", "delete": "ezabatu", @@ -53,11 +53,12 @@ "chat": "Txata", "admin": "administratzailea", "by": "egilea:", + "not_a_mod_or_admin": "Ez zara moderatzaile bat, ezta administratzaile bat ere.", "not_an_admin": "Ez zara administratzailea.", "couldnt_find_post": "Ezin izan da bidalketarik aurkitu.", "not_logged_in": "Ez duzu saiorik hasi.", - "site_ban": "Gune honetan sartzea debekatu dizute", - "community_ban": "Komunitate honetan sartzea debekatu dizute.", + "site_ban": "Gune honetatik kaleratua izan zara", + "community_ban": "Komunitate honetatik kaleratua izan zara.", "downvotes_disabled": "Kontrako bozkak desgaituta", "invalid_url": "URL baliogabea.", "locked": "blokeatuta", @@ -67,10 +68,10 @@ "no_comment_edit_allowed": "Ezin duzu iruzkina editatu.", "couldnt_save_comment": "Ezin izan da iruzkina gorde.", "couldnt_get_comments": "Ezin izan da iruzkinik lortu.", - "report_reason_required": "Salaketaren arrazoia ezinbestekoa da.", - "report_too_long": "Salaketa luzeegia.", - "couldnt_create_report": "Ezin izan da salaketa sortu.", - "couldnt_resolve_report": "Ezin izan da salaketa itxi.", + "report_reason_required": "Berriematearen arrazoia ezinbestekoa da.", + "report_too_long": "Berriemate luzeegia.", + "couldnt_create_report": "Ezin izan da berriematea sortu.", + "couldnt_resolve_report": "Ezin izan da berriematea itxi.", "invalid_post_title": "Bidalketa izenburu baliogabea", "couldnt_create_post": "Ezin izan da bidalketa sortu.", "couldnt_like_post": "Ezin izan da bidalketari datsegit eman.", @@ -88,7 +89,7 @@ "couldnt_update_community": "Ezin izan da komunitatea eguneratu.", "no_community_edit_allowed": "Ezin duzu komunitatea editatu.", "system_err_login": "Sistemaren errorea. Saiatu saioa ixten eta berriz hasten.", - "community_user_already_banned": "Komunitateko erabiltzaile hau dagoeneko debekatuta dago.", + "community_user_already_banned": "Komunitateko erabiltzaile hau dagoeneko kaleratuta dago.", "couldnt_find_that_username_or_email": "Ezin izan da aurkitu erabiltzaile-izen edo eposta hori.", "password_incorrect": "Pasahitz okerra.", "registration_closed": "Izen-ematea itxira", @@ -105,16 +106,16 @@ "post_title_too_long": "Bidalketaren izenburua luzeegia da.", "email_already_exists": "Eposta hori dagoeneko existitzen da.", "user_already_exists": "Erabiltzaile hori dagoeneko existitzen da.", - "number_of_users_online": "{count,plural, =1{Erabiltzaile {count} konektatuta} other{{count} erabiltzaile konektatuta}}", - "number_of_comments": "{count,plural, =1{Iruzkin {count}} other{{count} iruzkin}}", - "number_of_posts": "{count,plural, =1{Bidalketa {count}} other{{count} bidalketa}}", - "number_of_subscribers": "{count,plural, =1{Harpidetu {count}} other{{count} harpidetu}}", - "number_of_users": "{count,plural, =1{Erabiltzaile {count}} other{{count} erabiltzaile}}", + "number_of_users_online": "{formattedCount,plural, =1{Erabiltzaile {formattedCount} konektatuta} other{{formattedCount} erabiltzaile konektatuta}}", + "number_of_comments": "{formattedCount,plural, =1{Iruzkin {formattedCount}} other{{formattedCount} iruzkin}}", + "number_of_posts": "{formattedCount,plural, =1{Bidalketa {formattedCount}} other{{formattedCount} bidalketa}}", + "number_of_subscribers": "{formattedCount,plural, =1{Harpidetu {formattedCount}} other{{formattedCount} harpidetu}}", + "number_of_users": "{formattedCount,plural, =1{Erabiltzaile {formattedCount}} other{{formattedCount} erabiltzaile}}", "unsubscribe": "Ezabatu harpidetza", "subscribe": "Harpidetu", "messages": "Mezuak", - "banned_users": "Debekatutako erabiltzaileak", - "delete_account_confirm": "Abisua: honek zure datu guztiak betirako ezabatu ditu. Sartu zure pasahitza baieztatzeko.", + "banned_users": "Kaleratutako erabiltzaileak", + "delete_account_confirm": "Oharra: honek etengabe ezabatuko ditu zure datu guztiak instantzia honetatik. Zure datuak ezin izango dira ezabatu beste instantzia batzuetan. Sartu zure pasahitza baieztatzeko.", "new_password": "Pasahitz berria", "verify_password": "Balioztatu pasahitza", "old_password": "Aurreko pasahitza", @@ -122,12 +123,14 @@ "search": "Bilatu", "send_message": "Bidali mezua", "top_day": "Gaur pil-pilean", - "top_week": "Asteko Onena", + "top_week": "Asteko onena", "top_month": "Hilabeteko Onena", "top_year": "Urteko Onena", "top_all": "Onena", "most_comments": "Iruzkin gehienak", "new_comments": "Iruzkin berriak", "active": "Aktibo", - "not_a_mod_or_admin": "Ez zara moderatzaile bat, ezta administratzaile bat ere." + "bot_account": "Bot kontua", + "show_bot_accounts": "Erakutsi bot kontuak", + "show_read_posts": "Erakutsi irakurritako bidalketak" } diff --git a/assets/l10n/intl_fa.arb b/assets/l10n/intl_fa.arb new file mode 100644 index 0000000..d835790 --- /dev/null +++ b/assets/l10n/intl_fa.arb @@ -0,0 +1,135 @@ +{ + "@@locale": "fa", + "settings": "تنظیمات", + "password": "گذرواژه", + "email_or_username": "رایانامه یا نام‌کاربری", + "posts": "مطالب", + "comments": "نظرات", + "modlog": "گزارش ناظم", + "community": "اجتماع", + "url": "نشانی", + "title": "عنوان", + "body": "بدنه", + "nsfw": "NSFW", + "post": "فرسته", + "save": "ذخیره", + "subscribed": "مشترک", + "local": "محلی", + "all": "همه", + "replies": "پاسخ‌ها", + "mentions": "اشاره‌ها", + "from": "از", + "to": "به", + "deleted_by_creator": "پاک شد", + "more": "بیشتر", + "mark_as_read": "علامت‌گذاری به عنوان خوانده شده", + "mark_as_unread": "علامت‌گذاری به عنوان خوانده نشده", + "reply": "پاسخ", + "edit": "ویرایش", + "delete": "پاک کردن", + "restore": "بازگردانی", + "yes": "بله", + "no": "خیر", + "avatar": "آواتار", + "display_name": "نام نمایشی", + "bio": "زندگی‌نامه", + "email": "رایانامه", + "matrix_user": "کاربر ماتریس", + "sort_type": "نوع ترتیب", + "type": "نوع", + "show_nsfw": "نمایش محتوای NSFW", + "send_notifications_to_email": "فرستادن اعلانات به رایانامه", + "delete_account": "پاک کردن حساب", + "saved": "ذخیره شد", + "communities": "جوامع", + "users": "کاربران", + "theme": "پوسته", + "language": "زبان", + "hot": "داغ", + "new_": "تازه", + "old": "قدیمی", + "top": "بالاترین", + "chat": "گپ", + "admin": "مدیر", + "by": "توسط", + "not_a_mod_or_admin": "ناظم یا مدیر نیست.", + "not_an_admin": "مدیر نیستید.", + "couldnt_find_post": "نتوانستیم فرسته را بیابیم.", + "not_logged_in": "وارد نشده‌اید.", + "site_ban": "فعالیت شما در این پایگاه ممنوع شده است", + "community_ban": "فعالیت شما در این اجتماع ممنوع شده است.", + "downvotes_disabled": "رای پایین غیرفعال است", + "invalid_url": "نشانی نامعتبر است.", + "locked": "قفل شد", + "couldnt_create_comment": "ناتوانی در ایجاد نظر.", + "couldnt_like_comment": "ناتوانی در پسنیدن نظر.", + "couldnt_update_comment": "ناتوانی در به‌روزرسانی نظر.", + "no_comment_edit_allowed": "مجاز به ویرایش نظر نیستید.", + "couldnt_save_comment": "ناتوانی در ذخیره نظر.", + "couldnt_get_comments": "نتوانستیم نظرات را دریافت کنی.", + "report_reason_required": "دلیل گزارش الزامی است.", + "report_too_long": "گزارش بیش از حد طولانی است.", + "couldnt_create_report": "نتوانستیم گزارش بسازیم.", + "couldnt_resolve_report": "نتوانستیم این گزارش را حل کنیم.", + "invalid_post_title": "عنوان فرسته نامعتبر است", + "couldnt_create_post": "نتوانستیم فرسته را ایجاد کنیم.", + "couldnt_like_post": "نتوانستیم فرسته را بپسندیم.", + "couldnt_find_community": "نتوانستیم اجتماع را بیابیم.", + "couldnt_get_posts": "ناتوانی در دریافت مطالب", + "no_post_edit_allowed": "مجاز به ویرایش فرسته نیستید.", + "couldnt_save_post": "نتوانستیم فرسته را ذخیره کنیم.", + "site_already_exists": "این پایگاه از قبل وجود داشته است.", + "couldnt_update_site": "ناتوانی در به‌روزرسانی پایگاه.", + "invalid_community_name": "نام نامعتبر.", + "community_already_exists": "این اجتماع از قبل وجود داشته است.", + "community_moderator_already_exists": "ناظم اجتماع از پیش وجود دارد.", + "community_follower_already_exists": "این کاربر از قبل پیگیر این اجتماع است.", + "not_a_moderator": "ناظم نیست.", + "couldnt_update_community": "نتوانستیم این اجتماع را به‌روز کنیم.", + "no_community_edit_allowed": "مجاز به ویرایش اجتماع نیستید.", + "system_err_login": "خطای سامانه. سعی کنید خارج شده و دوباره وارد شوید.", + "community_user_already_banned": "کاربر این اجتماع از قبل ممنوع شده است.", + "couldnt_find_that_username_or_email": "ناتوانی در یافتن این نام کاربری یا رایانامه.", + "password_incorrect": "گذرواژه نادرست.", + "registration_closed": "نام‌نویسی بسته است", + "invalid_password": "گذرواژه نامعتبر. گذرواژه باید کمتر از ۶۰ حرف داشته باشد.", + "passwords_dont_match": "گذرواژه‌ها با هم منطبق نیستند.", + "captcha_incorrect": "کپچا درست نیست.", + "invalid_username": "نام کاربری نامعتبر است.", + "bio_length_overflow": "زندگی‌نامه کاربر نمی‌تواند از ۳۰۰ حرف فزونی یابد.", + "couldnt_update_user": "ناتوانی در به‌روزرسانی کاربر.", + "couldnt_update_private_message": "نتوانستیم پیام خصوصی را به‌روز کنیم.", + "couldnt_update_post": "نتوانسیم فرسته را به‌روز کنیم", + "couldnt_create_private_message": "نتوانستیم پیام خصوصی ایجاد کنید.", + "no_private_message_edit_allowed": "نمی‌شود پیام خصوصی را ویرایش کرد.", + "post_title_too_long": "عنوان فرسته بیش از حد طولانی است.", + "email_already_exists": "این رایانامه از قبل وجود دارد.", + "user_already_exists": "این کاربر از قبل وجود دارد.", + "number_of_users_online": "{formattedCount,plural, =1{{formattedCount} کاربر برخط} other{{formattedCount} کاربر برخط}}", + "number_of_comments": "{formattedCount,plural, =1{{formattedCount} نظر} other{{formattedCount} نظر}}", + "number_of_posts": "{formattedCount,plural, =1{{formattedCount} فرسته} other{{formattedCount} فرسته}}", + "number_of_subscribers": "{formattedCount,plural, =1{{formattedCount} مشترک} other{{formattedCount} مشترک}}", + "number_of_users": "{formattedCount,plural, =1{{formattedCount} کاربر} other{{formattedCount} کاربر‫}}", + "unsubscribe": "لغو اشتراک", + "subscribe": "اشتراک", + "messages": "پیام‌ها", + "banned_users": "کاربران ممنوع شده", + "delete_account_confirm": "هشدار: این کنش، تمام اطلاعات شما را برای همیشه پاک می‌کند. برای تایید، گذرواژه خود را وارد کنید.", + "new_password": "گذرواژه جدید", + "verify_password": "تایید گذرواژه", + "old_password": "پسورد پیشین", + "show_avatars": "نمایش آواتارها", + "search": "جستجو", + "send_message": "ارسال پیام", + "top_day": "بهترین‌های روز", + "top_week": "بهترین‌های هفته", + "top_month": "بهترین‌های ماه", + "top_year": "بهترین‌های سال", + "top_all": "بهترین‌ها از ابتدا", + "most_comments": "بیشترین نظرات", + "new_comments": "نظرات جدید", + "active": "فعال", + "bot_account": "حساب بات", + "show_bot_accounts": "نمایش حساب‌های بات", + "show_read_posts": "نمایش فرسته‌های خوانده شده" +} diff --git a/lib/l10n/intl_fi.arb b/assets/l10n/intl_fi.arb similarity index 80% rename from lib/l10n/intl_fi.arb rename to assets/l10n/intl_fi.arb index 666b275..69129f6 100644 --- a/lib/l10n/intl_fi.arb +++ b/assets/l10n/intl_fi.arb @@ -2,8 +2,8 @@ "@@locale": "fi", "settings": "Asetukset", "password": "Salasana", - "email_or_username": "Sähköposti tai käyttäjätunnus", - "posts": "Viestit", + "email_or_username": "Sähköposti tai käyttäjänimi", + "posts": "Viestejä", "comments": "Kommentit", "modlog": "Moderoinnin loki", "community": "Yhteisö", @@ -14,12 +14,13 @@ "post": "viesti", "save": "tallenna", "subscribed": "Tilattu", + "local": "Paikallinen", "all": "Kaikki", "replies": "Vastaukset", "mentions": "Maininnat", "from": "paikasta", "to": "yhteisössä", - "deleted_by_creator": "poistettu", + "deleted_by_creator": "Käyttäjä on poistanut", "more": "lisää", "mark_as_read": "merkitse luetuksi", "mark_as_unread": "merkitse lukemattomaksi", @@ -29,7 +30,10 @@ "restore": "palauta", "yes": "kyllä", "no": "ei", - "avatar": "avatar", + "avatar": "Avatari", + "banner": "Banneri", + "display_name": "Näyttönimi", + "bio": "Kuvaus", "email": "Sähköposti", "matrix_user": "Matrix-käyttäjä", "sort_type": "Lajittele tyypin mukaan", @@ -49,12 +53,14 @@ "chat": "Chat", "admin": "ylläpitäjä", "by": "käyttäjältä", + "not_a_mod_or_admin": "Et ole moderaattori tai ylläpitäjä.", "not_an_admin": "Ei ole ylläpitäjä.", - "couldnt_find_post": "Viestiä ei löytynyt.", + "couldnt_find_post": "Viestejä ei löytynyt.", "not_logged_in": "Ei kirjautunut sisään.", "site_ban": "Sinut on asetettu porttikieltoon tällä sivustolla", "community_ban": "Sinulle on asetettu porttikielto tähän yhteisöön.", "downvotes_disabled": "Alaäänet otettu pois päältä", + "invalid_url": "Viallinen URL.", "locked": "lukittu", "couldnt_create_comment": "Kommenttia ei pystytty luomaan.", "couldnt_like_comment": "Kommentista ei voitu tykätä.", @@ -62,7 +68,11 @@ "no_comment_edit_allowed": "Sinulla ei ole oikeutta muokata kommenttia.", "couldnt_save_comment": "Kommenttia ei voitu tallentaa.", "couldnt_get_comments": "Kommentteja ei voitu hakea.", - "invalid_post_title": "Väärä viestin otsikko", + "report_reason_required": "Ilmiannolle tarvitaan syy.", + "report_too_long": "Ilmianto on turhan pitkä.", + "couldnt_create_report": "Ilmiantoa ei pystytty luomaan.", + "couldnt_resolve_report": "Ilmiantoa ei pystytty selvittämään.", + "invalid_post_title": "Viallinen viestin otsikko", "couldnt_create_post": "Ei voitu luoda viestiä.", "couldnt_like_post": "Viestistä ei voitu tykätä.", "couldnt_find_community": "Yhteisöä ei voitu löytää.", @@ -71,9 +81,11 @@ "couldnt_save_post": "Viestiä ei voitu tallentaa.", "site_already_exists": "Sivusto on jo olemassa.", "couldnt_update_site": "Sivustoa ei voitu päivittää.", + "invalid_community_name": "Viallinen yhteisön nimi.", "community_already_exists": "Yhteisö on jo olemassa.", "community_moderator_already_exists": "Yhteisön moderaattori on jo olemassa.", "community_follower_already_exists": "Yhteisön seuraaja on jo olemassa.", + "not_a_moderator": "Ei ole moderaattori.", "couldnt_update_community": "Yhteisöä ei voitu päivittää.", "no_community_edit_allowed": "Sinulla ei ole oikeutta muokata yhteisöä.", "system_err_login": "Järjestelmävirhe. Yritä kirjautua ulos ja kirjautua uudestaan sisään.", @@ -81,7 +93,11 @@ "couldnt_find_that_username_or_email": "Käyttäjänimeä tai sähköpostia ei onnistuttu löytämään.", "password_incorrect": "Salasana on väärin.", "registration_closed": "Rekisteröityminen suljettu", + "invalid_password": "Virheellinen salasana. Salasanan on oltava <= 60 merkkiä.", "passwords_dont_match": "Salasanat eivät täsmää.", + "captcha_incorrect": "Captcha on väärin.", + "invalid_username": "Viallinen käyttäjänimi.", + "bio_length_overflow": "Käyttäjän kuvaus ei voi olla pidempi kuin 300 merkkiä.", "couldnt_update_user": "Käyttäjää ei voitu päivittää.", "couldnt_update_private_message": "Yksityisviestiä ei voitu päivittää.", "couldnt_update_post": "Viestiä ei voitu päivittää", @@ -90,16 +106,16 @@ "post_title_too_long": "Viestin otsikko on liian pitkä.", "email_already_exists": "Sähköposti on jo olemassa.", "user_already_exists": "Käyttäjä on jo olemassa.", - "number_of_users_online": "{count,plural, =1{{count} käyttäjä aktiivisena} other{{count} käyttäjää aktiivisena}}", - "number_of_comments": "{count,plural, =1{{count} kommentti} other{{count} kommenttia}}", - "number_of_posts": "{count,plural, =1{{count} viesti} other{{count} viestiä}}", - "number_of_subscribers": "{count,plural, =1{{count} tilaaja} other{{count} tilaajaa}}", - "number_of_users": "{count,plural, =1{{count} käyttäjä} other{{count} käyttäjää}}", + "number_of_users_online": "{formattedCount,plural, =1{{formattedCount} käyttäjä aktiivisena} other{{formattedCount} käyttäjää aktiivisena}}", + "number_of_comments": "{formattedCount,plural, =1{{formattedCount} kommentti} other{{formattedCount} kommenttia}}", + "number_of_posts": "{formattedCount,plural, =1{{formattedCount} Viesti} other{{formattedCount} Viestejä}}", + "number_of_subscribers": "{formattedCount,plural, =1{{formattedCount} tilaaja} other{{formattedCount} tilaajat}}", + "number_of_users": "{formattedCount,plural, =1{{formattedCount} käyttäjä} other{{formattedCount} käyttäjää}}", "unsubscribe": "Poista tilaus", "subscribe": "Tilaa", "messages": "Viestit", "banned_users": "Porttikieltoon asetetut käyttäjät", - "delete_account_confirm": "Varoitus: tämä poistaa pysyvästi kaiken datasi. Anna salasanasi varmistukseksi.", + "delete_account_confirm": "Varoitus: tämä poistaa pysyvästi kaiken datasi tästä instanssista. Dataasi ei poisteta muista olemassaolevista instansseista. Anna salasanasi varmistukseksi.", "new_password": "Uusi salasana", "verify_password": "Vahvista salasana", "old_password": "Vanha salasana", @@ -107,27 +123,14 @@ "search": "Etsi", "send_message": "Lähetä viesti", "top_day": "Päivän parhaimmat", - "local": "Paikallinen", - "banner": "Banneri", - "display_name": "Näyttönimi", - "bio": "Kuvaus", - "not_a_mod_or_admin": "Et ole moderaattori tai ylläpitäjä.", - "invalid_url": "Viallinen URL.", - "report_reason_required": "Ilmiannolle tarvitaan selitys.", - "report_too_long": "Ilmianto on turhan pitkä.", - "couldnt_create_report": "Ilmiantoa ei pystytty luomaan.", - "couldnt_resolve_report": "Ilmiantoa ei pystytty selvittämään.", - "invalid_community_name": "Viallinen yhteisön nimi.", - "not_a_moderator": "Ei moderaattori.", - "invalid_password": "Virheellinen salasana. Salasanan on oltava <= 60 merkkiä.", - "captcha_incorrect": "Captcha on väärin.", - "invalid_username": "Viallinen käyttäjänimi.", - "bio_length_overflow": "Käyttäjän kuvaus ei voi olla pidempi kuin 300 merkkiä.", "top_week": "Viikon parhaimmat", "top_month": "Kuukauden parhaimmat", "top_year": "Vuoden parhaimmat", "top_all": "Kaikkien aikojen parhaimmat", "most_comments": "Eniten kommentteja", "new_comments": "Uudet kommentit", - "active": "Aktiivinen" + "active": "Aktiivinen", + "bot_account": "Botin tili", + "show_bot_accounts": "Näytä bottien tilit", + "show_read_posts": "Näytä luetut viestit" } diff --git a/lib/l10n/intl_fr.arb b/assets/l10n/intl_fr.arb similarity index 89% rename from lib/l10n/intl_fr.arb rename to assets/l10n/intl_fr.arb index 13a87d9..0b77518 100644 --- a/lib/l10n/intl_fr.arb +++ b/assets/l10n/intl_fr.arb @@ -53,6 +53,7 @@ "chat": "Chat", "admin": "admin", "by": "par", + "not_a_mod_or_admin": "Pas un modérateur ou un administrateur.", "not_an_admin": "Pas administrateur.", "couldnt_find_post": "Impossible de trouver la publication.", "not_logged_in": "Vous n’êtes pas connecté.", @@ -68,6 +69,7 @@ "couldnt_save_comment": "Impossible de sauvegarder le commentaire.", "couldnt_get_comments": "Impossible d'obtenir les commentaires.", "report_reason_required": "Raison du signalement requise.", + "report_too_long": "Rapport trop long.", "couldnt_create_report": "Impossible de créer le signalement.", "couldnt_resolve_report": "Impossible de résoudre le rapport.", "invalid_post_title": "Titre du post invalide", @@ -104,11 +106,11 @@ "post_title_too_long": "Le titre de la publication est trop long.", "email_already_exists": "L’email existe déjà.", "user_already_exists": "L’utilisateur·rice existe déjà.", - "number_of_users_online": "{count,plural, =1{{count} Utilisateur en ligne} other{{count} Utilisateurs en ligne}}", - "number_of_comments": "{count,plural, =1{{count} Commentaire} other{{count} Commentaires}}", - "number_of_posts": "{count,plural, =1{{count} Publication} other{{count} Publications}}", - "number_of_subscribers": "{count,plural, =1{{count} Abonné} other{{count} Abonnés}}", - "number_of_users": "{count,plural, =1{{count} Utilisateur} other{{count} Utilisateurs}}", + "number_of_users_online": "{formattedCount,plural, =1{{formattedCount} Utilisateur en ligne} other{{formattedCount} Utilisateurs en ligne}}", + "number_of_comments": "{formattedCount,plural, =1{{formattedCount} Commentaire} other{{formattedCount} Commentaires}}", + "number_of_posts": "{formattedCount,plural, =1{{formattedCount} Publication} other{{formattedCount} Publications}}", + "number_of_subscribers": "{formattedCount,plural, =1{{formattedCount} Abonné} other{{formattedCount} Abonnés}}", + "number_of_users": "{formattedCount,plural, =1{{formattedCount} Utilisateur} other{{formattedCount} Utilisateurs}}", "unsubscribe": "Se désabonner", "subscribe": "S’abonner", "messages": "Messages", @@ -128,6 +130,5 @@ "most_comments": "Plus commentés", "new_comments": "Nouveaux commentaires", "active": "Actif", - "report_too_long": "Rapport trop long.", - "not_a_mod_or_admin": "Pas un modérateur ou un administrateur." + "bot_account": "Compte" } diff --git a/lib/l10n/intl_ga.arb b/assets/l10n/intl_ga.arb similarity index 98% rename from lib/l10n/intl_ga.arb rename to assets/l10n/intl_ga.arb index abf9557..6e93b62 100644 --- a/lib/l10n/intl_ga.arb +++ b/assets/l10n/intl_ga.arb @@ -53,6 +53,7 @@ "chat": "Comhrá", "admin": "riarthóir", "by": "le", + "not_a_mod_or_admin": "Ní modhnóir ná riarthóir é.", "not_an_admin": "Ní riarthóir é.", "couldnt_find_post": "Níorbh fhéidir an post a aimsiú.", "not_logged_in": "Ní logáilte isteach.", @@ -67,6 +68,10 @@ "no_comment_edit_allowed": "Ní cheadaítear trácht a chur in eagar.", "couldnt_save_comment": "Níorbh fhéidir trácht a shábháil.", "couldnt_get_comments": "Níorbh fhéidir tuairimí a fháil.", + "report_reason_required": "Cúis leis an Tuarascáil Riachtanach.", + "report_too_long": "Tuairiscigh ró-fhada.", + "couldnt_create_report": "Níorbh fhéidir tuairisc a chruthú.", + "couldnt_resolve_report": "Níorbh fhéidir an tuarascáil a réiteach.", "invalid_post_title": "Teideal poist neamhbhailí", "couldnt_create_post": "Níorbh fhéidir postáil a chruthú.", "couldnt_like_post": "Níorbh fhéidir a is maith post.", @@ -113,16 +118,11 @@ "search": "Cuardaigh", "send_message": "Seol Teachtaireacht", "top_day": "Lá Barr", - "active": "Gnóthach", - "not_a_mod_or_admin": "Ní modhnóir ná riarthóir é.", - "report_reason_required": "Cúis leis an Tuarascáil Riachtanach.", - "report_too_long": "Tuairiscigh ró-fhada.", - "couldnt_create_report": "Níorbh fhéidir tuairisc a chruthú.", - "couldnt_resolve_report": "Níorbh fhéidir an tuarascáil a réiteach.", "top_week": "Seachtain Barr", "top_month": "Barr Mí", "top_year": "Bar Bliain", "top_all": "Barr an Ama Uile", "most_comments": "Tuairimí an chuid is mó", - "new_comments": "Tráchtaireachtaí Nua" + "new_comments": "Tráchtaireachtaí Nua", + "active": "Gnóthach" } diff --git a/lib/l10n/intl_gl.arb b/assets/l10n/intl_gl.arb similarity index 87% rename from lib/l10n/intl_gl.arb rename to assets/l10n/intl_gl.arb index 5cf96d9..a20e39c 100644 --- a/lib/l10n/intl_gl.arb +++ b/assets/l10n/intl_gl.arb @@ -9,7 +9,7 @@ "community": "Comunidade", "url": "URL", "title": "Título", - "body": "Body", + "body": "Corpo", "nsfw": "NSFW", "post": "publicar", "save": "gardar", @@ -106,16 +106,16 @@ "post_title_too_long": "O título é demasiado longo.", "email_already_exists": "Xa existe o email.", "user_already_exists": "Xa existe a usuaria.", - "number_of_users_online": "{count,plural, =1{{count} usuaria conectada} other{{count} usuarias conectadas}}", - "number_of_comments": "{count,plural, =1{{count} Comentario} other{{count} Comentarios}}", - "number_of_posts": "{count,plural, =1{{count} Publicación} other{{count} Publicacións}}", - "number_of_subscribers": "{count,plural, =1{{count} subscritora} other{{count} subscritoras}}", - "number_of_users": "{count,plural, =1{{count} usuaria} other{{count} usuarias}}", + "number_of_users_online": "{formattedCount,plural, =1{{formattedCount} usuaria conectada} other{{formattedCount} usuarias conectadas}}", + "number_of_comments": "{formattedCount,plural, =1{{formattedCount} Comentario} other{{formattedCount} Comentarios}}", + "number_of_posts": "{formattedCount,plural, =1{{formattedCount} Post} other{{formattedCount} Publicacións}}", + "number_of_subscribers": "{formattedCount,plural, =1{{formattedCount} subscritora} other{{formattedCount} subscritoras}}", + "number_of_users": "{formattedCount,plural, =1{{formattedCount} usuaria} other{{formattedCount} usuarias}}", "unsubscribe": "Dar de baixa", "subscribe": "Subscribir", "messages": "Mensaxes", "banned_users": "Usuarias vetadas", - "delete_account_confirm": "Aviso: isto eliminará permanentemente tódolos teus datos. Escribe o contrasinal para confirmar.", + "delete_account_confirm": "Aviso: isto eliminará permanentemente tódolos teus datos nesta instancia. Os teus datos poderían non ser eliminados noutras instancias. Escribe o contrasinal para confirmar.", "new_password": "Novo contrasinal", "verify_password": "Verifica o contrasinal", "old_password": "Contrasinal anterior", diff --git a/lib/l10n/intl_hi.arb b/assets/l10n/intl_hi.arb similarity index 76% rename from lib/l10n/intl_hi.arb rename to assets/l10n/intl_hi.arb index 6b6915a..0108e69 100644 --- a/lib/l10n/intl_hi.arb +++ b/assets/l10n/intl_hi.arb @@ -17,8 +17,8 @@ "couldnt_create_comment": "टिप्पणी (कमेंट) नहीं बना पाईं |", "couldnt_find_community": "समुदायों नहीं ढूंढ़ पाएं |", "community_already_exists": "यह समुदाय पहले स मौजूद है |", - "number_of_comments": "{count,plural, =1{{{ count }} टिप्पणी (कमेंट )} other{{{ count }} टिप्पणियाँ (कोम्मेंट्स )}}", - "number_of_posts": "{count,plural, =1{{count} पोस्ट} other{{count} पोस्ट्स}}", + "number_of_comments": "{formattedCount,plural, =1{{{ count }} टिप्पणी (कमेंट )} other{{{ count }} टिप्पणियाँ (कोम्मेंट्स )}}", + "number_of_posts": "{formattedCount,plural, =1{{formattedCount} पोस्ट} other{{formattedCount} पोस्ट्स}}", "show_avatars": "अवतार दिखाएँ", "send_message": "संदेश भेजें" } diff --git a/lib/l10n/intl_hr.arb b/assets/l10n/intl_hr.arb similarity index 100% rename from lib/l10n/intl_hr.arb rename to assets/l10n/intl_hr.arb diff --git a/lib/l10n/intl_hu.arb b/assets/l10n/intl_hu.arb similarity index 88% rename from lib/l10n/intl_hu.arb rename to assets/l10n/intl_hu.arb index f44c578..90fd9f1 100644 --- a/lib/l10n/intl_hu.arb +++ b/assets/l10n/intl_hu.arb @@ -91,11 +91,11 @@ "post_title_too_long": "A bejegyzés címe túl hosszú.", "email_already_exists": "Az email már létezik.", "user_already_exists": "A felhasználó már létezik.", - "number_of_users_online": "{count,plural, =1{{count} online felhasználó} other{{count} online felhasználó}}", - "number_of_comments": "{count,plural, =1{{count} hozzászólás} other{{count} hozzászólás}}", - "number_of_posts": "{count,plural, =1{{count} bejegyzés} other{{count} bejegyzés}}", - "number_of_subscribers": "{count,plural, =1{{count} feliratkozó} other{{count} feliratkozó}}", - "number_of_users": "{count,plural, =1{{count} felhasználó} other{{count} felhasználó}}", + "number_of_users_online": "{formattedCount,plural, =1{{formattedCount} online felhasználó} other{{formattedCount} online felhasználó}}", + "number_of_comments": "{formattedCount,plural, =1{{formattedCount} hozzászólás} other{{formattedCount} hozzászólás}}", + "number_of_posts": "{formattedCount,plural, =1{{formattedCount} bejegyzés} other{{formattedCount} bejegyzés}}", + "number_of_subscribers": "{formattedCount,plural, =1{{formattedCount} feliratkozó} other{{formattedCount} feliratkozó}}", + "number_of_users": "{formattedCount,plural, =1{{formattedCount} felhasználó} other{{formattedCount} felhasználó}}", "unsubscribe": "Leiratkozás", "subscribe": "Feliratkozás", "messages": "Üzenetek", diff --git a/assets/l10n/intl_id.arb b/assets/l10n/intl_id.arb new file mode 100644 index 0000000..c704958 --- /dev/null +++ b/assets/l10n/intl_id.arb @@ -0,0 +1,136 @@ +{ + "@@locale": "id", + "settings": "Pengaturan", + "password": "Kata Sandi", + "email_or_username": "Surel atau Nama Pengguna", + "posts": "Pos", + "comments": "Komentar", + "modlog": "Log Moderator", + "community": "Komunitas", + "url": "URL", + "title": "Judul", + "body": "Isi", + "nsfw": "NSFW", + "post": "pos", + "save": "simpan", + "subscribed": "Telah berlangganan", + "local": "Lokal", + "all": "Semua", + "replies": "Balasan", + "mentions": "Merujuk", + "from": "dari", + "to": "untuk", + "deleted_by_creator": "dihapus oleh pembuat", + "more": "lainnya", + "mark_as_read": "tandai sebagai telah dibaca", + "mark_as_unread": "tandai sebagai belum dibaca", + "reply": "balas", + "edit": "sunting", + "delete": "hapus", + "restore": "pulihkan", + "yes": "ya", + "no": "tidak", + "avatar": "Avatar", + "banner": "Spanduk", + "display_name": "Nama Tampilan", + "bio": "Bio", + "email": "Surel", + "matrix_user": "Pengguna Matrix", + "sort_type": "Tipe penyortiran", + "type": "Tipe", + "show_nsfw": "Perlihatkan konten NSFW", + "send_notifications_to_email": "Mengirim notifikasi ke surel", + "delete_account": "Hapus Akun", + "saved": "Tersimpan", + "communities": "Komunitas", + "users": "Pengguna", + "theme": "Tema", + "language": "Bahasa", + "hot": "Hangat", + "new_": "Baru", + "old": "Lama", + "top": "Teratas", + "chat": "Obrolan", + "admin": "admin", + "by": "oleh", + "not_a_mod_or_admin": "Bukan seorang moderator atau admin.", + "not_an_admin": "Bukan seorang admin.", + "couldnt_find_post": "Tidak bisa menemukan pos.", + "not_logged_in": "Belum masuk.", + "site_ban": "Anda sudah terlarang dari situs ini", + "community_ban": "Anda sudah terlarang dari komunitas ini.", + "downvotes_disabled": "Pilih Turun dinonaktifkan", + "invalid_url": "URL tidak valid.", + "locked": "dikunci", + "couldnt_create_comment": "Tidak bisa membuat komentar.", + "couldnt_like_comment": "Tidak bisa menyukai komentar.", + "couldnt_update_comment": "Tidak bisa memperbarui komentar.", + "no_comment_edit_allowed": "Tidak diperbolehkan untuk mengedit komentar.", + "couldnt_save_comment": "Tidak bisa menyimpan komentar.", + "couldnt_get_comments": "Tidak bisa mendapatkan komentar.", + "report_reason_required": "Alasan laporan diperlukan.", + "report_too_long": "Laporan terlalu panjang.", + "couldnt_create_report": "Tidak bisa membuat laporan.", + "couldnt_resolve_report": "Tidak bisa menyelesaikan laporan.", + "invalid_post_title": "Judul pos tidak valid", + "couldnt_create_post": "Tidak bisa membuat pos.", + "couldnt_like_post": "Tidak bisa menyukai pos.", + "couldnt_find_community": "Tidak bisa menemukan komunitas.", + "couldnt_get_posts": "Tidak bisa mendapatkan pos", + "no_post_edit_allowed": "Tidak diperbolehkan untuk mengedit pos.", + "couldnt_save_post": "Tidak bisa menyimpan pos.", + "site_already_exists": "Situs sudah tersedia.", + "couldnt_update_site": "Tidak bisa memperbarui situs.", + "invalid_community_name": "Nama tidak valid.", + "community_already_exists": "Komunitas sudah ada.", + "community_moderator_already_exists": "Moderator komunitas sudah ada.", + "community_follower_already_exists": "Pengikut komunitas sudah ada.", + "not_a_moderator": "Bukan seorang moderator.", + "couldnt_update_community": "Tidak bisa memperbarui Komunitas.", + "no_community_edit_allowed": "Tidak diperbolehkan untuk mengedit komunitas.", + "system_err_login": "Sistem ada kesalahan. Coba keluar dan masuk kembali.", + "community_user_already_banned": "Pengguna komunitas sudah terlarang.", + "couldnt_find_that_username_or_email": "Tidak bisa menemukan nama pengguna atau surel tersebut.", + "password_incorrect": "Kata Sandi salah.", + "registration_closed": "Pendaftaran Ditutup", + "invalid_password": "Kata sandi tidak valid. Kata sandi harus <= 60 karakter.", + "passwords_dont_match": "Kata Sandi tidak sesuai.", + "captcha_incorrect": "Captcha salah.", + "invalid_username": "Nama Pengguna tidak valid.", + "bio_length_overflow": "Bio pengguna tidak boleh melibihi 300 karakter.", + "couldnt_update_user": "Tidak bisa memperbarui pengguna.", + "couldnt_update_private_message": "Tidak bisa memperbarui pesan pribadi.", + "couldnt_update_post": "Tidak bisa memperbarui pos", + "couldnt_create_private_message": "Tidak bisa membuat pesan pribadi.", + "no_private_message_edit_allowed": "Tidak diperbolehkan untuk mengedit pesan pribadi.", + "post_title_too_long": "Judul pos terlalu panjang.", + "email_already_exists": "Surel sudah ada.", + "user_already_exists": "Pengguna sudah ada.", + "number_of_users_online": "{formattedCount,plural, other{{formattedCount} pengguna sedang daring}}", + "number_of_comments": "{formattedCount,plural, other{{formattedCount} Komentar}}", + "number_of_posts": "{formattedCount,plural, other{{formattedCount} Pos}}", + "number_of_subscribers": "{formattedCount,plural, other{{formattedCount} pelanggan}}", + "number_of_users": "{formattedCount,plural, other{{formattedCount} pengguna}}", + "unsubscribe": "Berhenti berlangganan", + "subscribe": "Berlangganan", + "messages": "Pesan", + "banned_users": "Pengguna Yang Dilarang", + "delete_account_confirm": "Peringatan: ini akan menghapus secara permanen seluruh data Anda di peladen ini. Data Anda mungkin tidak terhapus di peladen lain yang aktif. Masukkan kata sandi Anda untuk mengonfirmasi.", + "new_password": "Kata Sandi Baru", + "verify_password": "Verifikasi Kata Sandi", + "old_password": "Kata Sandi Lama", + "show_avatars": "Perlihatkan Avatar", + "search": "Cari", + "send_message": "Kirim Pesan", + "top_day": "Teratas Hari Ini", + "top_week": "Teratas Pekan Ini", + "top_month": "Teratas Bulan Ini", + "top_year": "Teratas Tahun Ini", + "top_all": "Teratas Sepanjang Waktu", + "most_comments": "Paling Banyak Komentar", + "new_comments": "Komentar Terbaru", + "active": "Aktif", + "bot_account": "Akun Bot", + "show_bot_accounts": "Perlihatkan Akun Bot", + "show_read_posts": "Perlihatkan Pos Yang Sudah Dibaca" +} diff --git a/lib/l10n/intl_it.arb b/assets/l10n/intl_it.arb similarity index 83% rename from lib/l10n/intl_it.arb rename to assets/l10n/intl_it.arb index 75c580a..6753e72 100644 --- a/lib/l10n/intl_it.arb +++ b/assets/l10n/intl_it.arb @@ -53,6 +53,7 @@ "chat": "Chat", "admin": "amministratore", "by": "di", + "not_a_mod_or_admin": "Non moderatore o amministratore.", "not_an_admin": "Non un amministratore.", "couldnt_find_post": "Impossibile trovare la pubblicazione.", "not_logged_in": "Non hai effettuato l'accesso.", @@ -105,16 +106,16 @@ "post_title_too_long": "Titolo della pubblicazione troppo lungo.", "email_already_exists": "Indirizzo email già presente.", "user_already_exists": "L'utente esiste già.", - "number_of_users_online": "{count,plural, =1{{count} utente connesso} other{{count} utenti connessi}}", - "number_of_comments": "{count,plural, =1{{count} Commento} other{{count} Commenti}}", - "number_of_posts": "{count,plural, =1{{count} Pubblicazione} other{{count} Pubblicazioni}}", - "number_of_subscribers": "{count,plural, =1{{count} iscritto} other{{count} iscritti}}", - "number_of_users": "{count,plural, =1{{count} utente} other{{count} utenti}}", + "number_of_users_online": "{formattedCount,plural, =1{{formattedCount} utente connesso} other{{formattedCount} utenti connessi}}", + "number_of_comments": "{formattedCount,plural, =1{{formattedCount} Commento} other{{formattedCount} Commenti}}", + "number_of_posts": "{formattedCount,plural, =1{{formattedCount} Pubblicazione} other{{formattedCount} Pubblicazioni}}", + "number_of_subscribers": "{formattedCount,plural, =1{{formattedCount} iscritto} other{{formattedCount} iscritti}}", + "number_of_users": "{formattedCount,plural, =1{{formattedCount} utente} other{{formattedCount} utenti}}", "unsubscribe": "Disiscriviti", "subscribe": "Iscriviti", "messages": "Messaggi", "banned_users": "Utenti Espulsi", - "delete_account_confirm": "Attenzione: stai per cancellare permanentemente tutti i tuoi dati. Inserisci la tua password per confermare questa azione.", + "delete_account_confirm": "Attenzione: questo cancellerà per sempre tutti i tuoi dati da questa istanza. I tuoi dati potrebbero non essere cancellati da altre istanze esistenti. Inserisci la tua password per confermare questa azione.", "new_password": "Nuova Password", "verify_password": "Verifica Password", "old_password": "Vecchia Password", @@ -129,5 +130,7 @@ "most_comments": "Più commenti", "new_comments": "Nuovi Commenti", "active": "Attivi", - "not_a_mod_or_admin": "Non moderatore o amministratore." + "bot_account": "Profilo bot", + "show_bot_accounts": "Mostra profili bot", + "show_read_posts": "Mostra pubblicazioni già visitate" } diff --git a/assets/l10n/intl_ja.arb b/assets/l10n/intl_ja.arb new file mode 100644 index 0000000..8fa3bd0 --- /dev/null +++ b/assets/l10n/intl_ja.arb @@ -0,0 +1,132 @@ +{ + "@@locale": "ja", + "settings": "設定", + "password": "パスワード", + "email_or_username": "メールアドレスまたはユーザー名", + "posts": "投稿", + "comments": "コメント", + "modlog": "モデレーションログ", + "community": "コミュニティ", + "url": "URL", + "title": "タイトル", + "body": "本文", + "nsfw": "閲覧注意", + "post": "投稿", + "save": "保存", + "subscribed": "登録済み", + "local": "インスタンス内", + "all": "全て", + "replies": "返信", + "mentions": "言及", + "from": "から", + "to": "投稿先", + "deleted_by_creator": "投稿者によって削除済み", + "more": "さらに表示", + "mark_as_read": "既読にする", + "mark_as_unread": "未読にする", + "reply": "返信", + "edit": "編集", + "delete": "削除", + "restore": "復元", + "yes": "はい", + "no": "いいえ", + "avatar": "アバター", + "banner": "バナー", + "display_name": "アカウント名", + "bio": "自己紹介", + "email": "メールアドレス", + "matrix_user": "Matrix のユーザーアカウント", + "sort_type": "投稿やコメントの並び順", + "type": "コミュニティの表示", + "show_nsfw": "閲覧注意のコンテンツを表示", + "send_notifications_to_email": "通知を設定したメールアドレスに送信", + "delete_account": "アカウントを削除", + "saved": "保存済み", + "communities": "コミュニティ", + "users": "ユーザー", + "theme": "テーマ", + "language": "言語", + "hot": "人気", + "new_": "新しい順", + "old": "古い順", + "top": "トップ", + "chat": "会話", + "admin": "管理者", + "by": "投稿者", + "not_a_mod_or_admin": "モデレーターまたは管理者ではありません。", + "not_an_admin": "管理者ではありません。", + "couldnt_find_post": "投稿が見つかりせんでした。", + "not_logged_in": "ログインしていません。", + "site_ban": "サイトへのアクセスを禁止されています", + "community_ban": "このコミュニティへのアクセスを禁止されています。", + "downvotes_disabled": "反対票を無効化", + "invalid_url": "無効なURL。", + "locked": "凍結中", + "couldnt_create_comment": "投稿が作成されませんでした。", + "couldnt_like_comment": "コメントを「いいね」できませんでした。", + "couldnt_update_comment": "コメントが更新されませんでした。", + "no_comment_edit_allowed": "コメントの編集権限がありません。", + "couldnt_save_comment": "コメントが保存されませんでした。", + "couldnt_get_comments": "コメントを読み込みできませんでした。", + "invalid_post_title": "無効な投稿のタイトル", + "couldnt_create_post": "投稿が作成されませんでした。", + "couldnt_like_post": "投稿を「いいね」できませんでした。", + "couldnt_find_community": "コミュニティが見つかりませんでした。", + "couldnt_get_posts": "投稿を読み込みできませんでした", + "no_post_edit_allowed": "投稿の編集権限がありません。", + "couldnt_save_post": "投稿が保存されませんでした。", + "site_already_exists": "サイトは既に存在します。", + "couldnt_update_site": "サイトが更新されませんでした。", + "invalid_community_name": "無効な名前です。", + "community_already_exists": "コミュニティは既に存在します。", + "community_moderator_already_exists": "コミュニティのモデレーターは既に存在しています。", + "community_follower_already_exists": "コミュニティへのフォロワーは既に存在します。", + "not_a_moderator": "モデレーターではありません。", + "couldnt_update_community": "コミュニティを更新できませんでした。", + "no_community_edit_allowed": "コミュニティの編集許可がありません。", + "system_err_login": "システムエラーが発生しました。一度ログアウトして、再度ログインをお試しください。", + "community_user_already_banned": "コミュニティのユーザーは既にアクセスが禁止されています。", + "couldnt_find_that_username_or_email": "ユーザー名またはメールアドレスが見つかりませんでした。", + "password_incorrect": "無効なパスワードです。", + "registration_closed": "新規登録は受け付けていません", + "invalid_password": "無効なパスワードです。パスワードは必ず60文字以下にしてください。", + "passwords_dont_match": "パスワードが一致しません。", + "captcha_incorrect": "Captchaコードが合っていません。", + "invalid_username": "無効なユーザーネームです。", + "bio_length_overflow": "自己紹介は 300 文字までです。", + "couldnt_update_user": "ユーザーが更新されない。", + "couldnt_update_private_message": "プライベートメッセージが更新されませんでした。", + "couldnt_update_post": "投稿が更新されませんでした", + "couldnt_create_private_message": "プライベートメッセージが作成されませんでした。", + "no_private_message_edit_allowed": "プライベートメッセージの編集許可がありません。", + "post_title_too_long": "投稿のタイトルが長すぎます。", + "email_already_exists": "メールアドレスが既に使用されています。", + "user_already_exists": "ユーザーは既に存在します。", + "number_of_users_online": "{formattedCount,plural, other{{formattedCount}名のユーザーがオンライン}}", + "number_of_comments": "{formattedCount,plural, other{{formattedCount}件のコメント}}", + "number_of_posts": "{formattedCount,plural, other{{formattedCount}件の投稿}}", + "number_of_subscribers": "{formattedCount,plural, other{{formattedCount}名の登録者}}", + "number_of_users": "{formattedCount,plural, other{{formattedCount}名のユーザー}}", + "unsubscribe": "登録解除", + "subscribe": "登録", + "messages": "メッセージ", + "banned_users": "アクセス禁止してるユーザー", + "delete_account_confirm": "警告: あなたの全てのデータをこのインスタンスから永久に削除します。連合機能によって他のインスタンスにあるあなたのデータは、削除されないかもしれません。確認のため、パスワードを入力してください。", + "new_password": "新しいパスワード", + "verify_password": "パスワードの確認", + "old_password": "現在のパスワード", + "show_avatars": "アバターを表示", + "search": "検索", + "send_message": "メッセージを送信", + "top_day": "今日の人気順", + "top_week": "週間での人気順", + "top_month": "月間での人気順", + "top_year": "年間での人気順", + "top_all": "全ての期間での人気順", + "most_comments": "コメントの多い順", + "new_comments": "新しくコメントが入った順", + "active": "活発", + "bot_account": "このアカウントをbotにする", + "show_bot_accounts": "ボットアカウントを表示", + "show_read_posts": "読んだ投稿を表示" +} diff --git a/lib/l10n/intl_ka.arb b/assets/l10n/intl_ka.arb similarity index 90% rename from lib/l10n/intl_ka.arb rename to assets/l10n/intl_ka.arb index 6252aa9..1ff6030 100644 --- a/lib/l10n/intl_ka.arb +++ b/assets/l10n/intl_ka.arb @@ -86,11 +86,11 @@ "post_title_too_long": "პოსტის სათაური ძალიან გრძელია.", "email_already_exists": "ელ-პოსტა უკვე არსებობს.", "user_already_exists": "მომხმარებელი უკვე არსებობს.", - "number_of_users_online": "{count,plural, =1{მომხმარებელი საიტზე} other{მომხმარებელი საიტზე}}", - "number_of_comments": "{count,plural, =1{კომენტარი} other{კომანტარები}}", - "number_of_posts": "{count,plural, =1{თარგმნა} other{თარგმნა}}", - "number_of_subscribers": "{count,plural, =1{გამომწერი} other{გამომწერები}}", - "number_of_users": "{count,plural, =1{მომხმარებელი} other{მომხმარებლები}}", + "number_of_users_online": "{formattedCount,plural, =1{მომხმარებელი საიტზე} other{მომხმარებელი საიტზე}}", + "number_of_comments": "{formattedCount,plural, =1{კომენტარი} other{კომანტარები}}", + "number_of_posts": "{formattedCount,plural, =1{თარგმნა} other{თარგმნა}}", + "number_of_subscribers": "{formattedCount,plural, =1{გამომწერი} other{გამომწერები}}", + "number_of_users": "{formattedCount,plural, =1{მომხმარებელი} other{მომხმარებლები}}", "unsubscribe": "გამოწერის გაუქმნება", "subscribe": "გამოწერა", "messages": "მესეჯები", diff --git a/lib/l10n/intl_km.arb b/assets/l10n/intl_km.arb similarity index 100% rename from lib/l10n/intl_km.arb rename to assets/l10n/intl_km.arb diff --git a/lib/l10n/intl_ko.arb b/assets/l10n/intl_ko.arb similarity index 57% rename from lib/l10n/intl_ko.arb rename to assets/l10n/intl_ko.arb index 6c393f2..84d6bca 100644 --- a/lib/l10n/intl_ko.arb +++ b/assets/l10n/intl_ko.arb @@ -2,15 +2,15 @@ "@@locale": "ko", "settings": "설정", "password": "비밀번호", - "email_or_username": "이메일 또는 유저명", - "posts": "게시글", - "comments": "덧글", - "modlog": "관리기록", + "email_or_username": "이메일 또는 이용자 명", + "posts": "글", + "comments": "댓글", + "modlog": "중재 기록", "community": "커뮤니티", "url": "URL", "title": "제목", "body": "내용", - "nsfw": "18+ 콘텐츠", + "nsfw": "19금, 후방주의, 혐짤", "post": "등록", "save": "저장", "subscribed": "구독", @@ -19,12 +19,12 @@ "replies": "댓글", "mentions": "언급", "from": "에서", - "to": "to", - "deleted_by_creator": "글쓴이에 의해 삭제됨", + "to": "/", + "deleted_by_creator": "글쓴이가 글을 삭제하였습니다", "more": "더 보기", "mark_as_read": "읽은 상태로 표시", "mark_as_unread": "읽지 않은 상태로 표시", - "reply": "댓글", + "reply": "답글", "edit": "수정", "delete": "삭제", "restore": "복원", @@ -35,15 +35,15 @@ "display_name": "표시 이름", "bio": "자기 소개", "email": "이메일", - "matrix_user": "메트릭스 사용자", + "matrix_user": "Matrix 가입자", "sort_type": "정렬", "type": "유형", - "show_nsfw": "18+ 콘텐츠 보기", + "show_nsfw": "불쾌할 수 있는 글(19금, 후방주의, 혐짤 포함)도 보여주기", "send_notifications_to_email": "이메일로 알림 보내기", "delete_account": "계정 삭제", - "saved": "저장한글", + "saved": "저장한 글", "communities": "커뮤니티", - "users": "유저", + "users": "이용자", "theme": "테마", "language": "언어", "hot": "인기있는", @@ -53,31 +53,32 @@ "chat": "대화", "admin": "관리자", "by": "작성", + "not_a_mod_or_admin": "중재자 또는 관리자가 아닙니다.", "not_an_admin": "관리자가 아닙니다.", - "couldnt_find_post": "게시물을 찾을 수 없습니다.", + "couldnt_find_post": "글을 찾을 수 없습니다.", "not_logged_in": "로그인하지 않았습니다.", "site_ban": "당신은 사이트에서 추방되었습니다", - "community_ban": "이 커뮤니티에서 추방되었습니다.", - "downvotes_disabled": "내림 비활성화", + "community_ban": "당신은 이 커뮤니티에서 추방되었습니다.", + "downvotes_disabled": "내림버튼 비활성화", "invalid_url": "잘못된 URL.", "locked": "잠김", - "couldnt_create_comment": "덧글을 작성할 수 없습니다.", - "couldnt_like_comment": "덧글에 좋아요 표시를 할 수 없습니다.", - "couldnt_update_comment": "덧글을 업데이트 할 수 없습니다.", - "no_comment_edit_allowed": "덧글을 수정할 수 없습니다.", - "couldnt_save_comment": "덧글을 저장할 수 없습니다.", - "couldnt_get_comments": "덧글을 가져올 수 없습니다.", + "couldnt_create_comment": "댓글을 작성할 수 없습니다.", + "couldnt_like_comment": "댓글에 좋아요 표시를 할 수 없습니다.", + "couldnt_update_comment": "댓글을 업데이트 할 수 없습니다.", + "no_comment_edit_allowed": "댓글을 수정할 수 없습니다.", + "couldnt_save_comment": "댓글을 저장할 수 없습니다.", + "couldnt_get_comments": "댓글을 가져올 수 없습니다.", "report_reason_required": "사유를 제출해야합니다.", "report_too_long": "보고 글이 너무 길어요.", "couldnt_create_report": "보고서를 생성할 수 없습니다.", "couldnt_resolve_report": "보고서를 해결할 수 없습니다.", - "invalid_post_title": "잘못된 게시물 제목", - "couldnt_create_post": "게시물을 작성할 수 없습니다.", - "couldnt_like_post": "이 게시물에 좋아요 표시를 할 수 없습니다.", + "invalid_post_title": "잘못된 글 제목", + "couldnt_create_post": "글을 작성할 수 없습니다.", + "couldnt_like_post": "이 글에 좋아요 표시를 할 수 없습니다.", "couldnt_find_community": "커뮤니티를 찾을 수 없습니다.", - "couldnt_get_posts": "게시물을 가져올 수 없습니다", - "no_post_edit_allowed": "게시물을 수정할 수 없습니다.", - "couldnt_save_post": "게시물을 저장할 수 없습니다.", + "couldnt_get_posts": "글을 가져올 수 없습니다", + "no_post_edit_allowed": "글을 수정할 권한이 없습니다.", + "couldnt_save_post": "글을 저장할 수 없습니다.", "site_already_exists": "사이트가 이미 존재합니다.", "couldnt_update_site": "사이트를 업데이트 할 수 없습니다.", "invalid_community_name": "잘못된 이름.", @@ -85,49 +86,51 @@ "community_moderator_already_exists": "커뮤니티 운영자가 이미 존재합니다.", "community_follower_already_exists": "커뮤니티 팔로어가 이미 존재합니다.", "not_a_moderator": "중재자가 아닙니다.", - "couldnt_update_community": "커뮤니티를 업데이트 할 수 없습니다.", + "couldnt_update_community": "커뮤니티를 업데이트할 수 없습니다.", "no_community_edit_allowed": "커뮤니티를 수정할 수 없습니다.", "system_err_login": "시스템 오류. 다시 로그인하십시오.", - "community_user_already_banned": "커뮤니티 사용자가 이미 차단되었습니다.", + "community_user_already_banned": "커뮤니티 사용자가 이미 추방되었습니다.", "couldnt_find_that_username_or_email": "해당 사용자 이름이나 이메일을 찾을 수 없습니다.", "password_incorrect": "잘못된 비밀번호입니다.", "registration_closed": "등록 닫기", - "invalid_password": "잘못된 비밀번호입니다. 비밀번호는 60글자이하로 만들어야 합니다.", + "invalid_password": "잘못된 비밀번호입니다. 비밀번호는 60글자 이하로 만들어야 합니다.", "passwords_dont_match": "비밀번호가 일치하지 않습니다.", "captcha_incorrect": "보안문자가 일치하지 않습니다.", "invalid_username": "잘못된 사용자 이름.", - "bio_length_overflow": "자기 소개는 300자를 초과 할 수 없습니다.", + "bio_length_overflow": "자기 소개는 300자를 초과할 수 없습니다.", "couldnt_update_user": "사용자를 업데이트 할 수 없습니다.", "couldnt_update_private_message": "개인 메시지를 업데이트 할 수 없습니다.", - "couldnt_update_post": "게시물을 업데이트 할 수 없습니다", + "couldnt_update_post": "글을 업데이트 할 수 없습니다", "couldnt_create_private_message": "개인 메시지를 만들 수 없습니다.", "no_private_message_edit_allowed": "개인 메시지를 편집 할 수 없습니다.", - "post_title_too_long": "게시물 제목이 너무 깁니다.", + "post_title_too_long": "글 제목이 너무 깁니다.", "email_already_exists": "이메일이 이미 존재합니다.", "user_already_exists": "사용자가 이미 존재합니다.", - "number_of_users_online": "{count,plural, other{접속자수 {count}}}", - "number_of_comments": "{count,plural, other{덧글수 {count}}}", - "number_of_posts": "{count,plural, other{게시물수 {count}}}", - "number_of_subscribers": "{count,plural, other{구독자수 {count}}}", - "number_of_users": "{count,plural, other{가입자수 {count}}}", - "unsubscribe": "구독취소", + "number_of_users_online": "{formattedCount,plural, other{현재 접속자 {formattedCount}}}", + "number_of_comments": "{formattedCount,plural, other{댓글 수 {formattedCount}}}", + "number_of_posts": "{formattedCount,plural, other{글 수 {formattedCount}}}", + "number_of_subscribers": "{formattedCount,plural, other{구독자 수 {formattedCount}}}", + "number_of_users": "{formattedCount,plural, other{가입자 수 {formattedCount}}}", + "unsubscribe": "구독 취소", "subscribe": "구독", - "messages": "메세지", - "banned_users": "금지 된 사용자", - "delete_account_confirm": "경고: 모든 데이터가 영구적으로 삭제됩니다. 확인을 위해 비밀번호를 입력하십시오.", + "messages": "메시지", + "banned_users": "차단된 이용자", + "delete_account_confirm": "경고: 이 인스턴스에서 모든 데이터가 영구적으로 삭제됩니다.기존의 다른 인스턴스에서는 데이터를 삭제할 수 없습니다. 확인을 위해 비밀번호를 입력하십시오.", "new_password": "새 비밀번호", "verify_password": "비밀번호 재입력", "old_password": "기존 비밀번호", "show_avatars": "아바타 보기", "search": "검색", - "send_message": "메세지 전송", + "send_message": "메시지 보내기", "top_day": "일별", "top_week": "주별", "top_month": "월별", "top_year": "년간", "top_all": "전체", - "most_comments": "최근 덧글", - "new_comments": "새 덧글", + "most_comments": "가장 많은 댓글", + "new_comments": "새 댓글", "active": "활발한", - "not_a_mod_or_admin": "중재자 또는 관리자가 아닙니다." + "bot_account": "봇 계정", + "show_bot_accounts": "봇 계정 보기", + "show_read_posts": "읽은 글 보기" } diff --git a/assets/l10n/intl_ml.arb b/assets/l10n/intl_ml.arb new file mode 100644 index 0000000..2cb2242 --- /dev/null +++ b/assets/l10n/intl_ml.arb @@ -0,0 +1,71 @@ +{ + "@@locale": "ml", + "settings": "ക്രമീകരണങ്ങൾ", + "password": "രഹസ്യവാക്ക്", + "email_or_username": "ഇമെയിൽ അല്ലെങ്കിൽ ഉപയോക്തൃനാമം", + "posts": "പോസ്റ്റുകൾ", + "modlog": "മോഡ്ലോഗ്", + "url": "യുആർഎൽ", + "title": "ശീർഷകം", + "post": "പോസ്റ്റ് ചെയ്യൂ", + "save": "സംരക്ഷിക്കുക", + "local": "പ്രാദേശികം", + "all": "എല്ലാം", + "replies": "മറുപടികൾ", + "mentions": "സൂചനകൾ", + "more": "കൂടുതൽ", + "mark_as_read": "വായിച്ചതായി അടയാളപ്പെടുത്തുക", + "mark_as_unread": "വായിക്കാത്തതായി അടയാളപ്പെടുത്തുക", + "reply": "മറുപടി", + "edit": "തിരുത്തുക", + "delete": "ഇല്ലാതാക്കുക", + "restore": "വീണ്ടെടുക്കുക", + "yes": "അതെ", + "no": "അല്ല", + "avatar": "അവതാർ", + "banner": "ബാനർ", + "display_name": "പ്രദർശന പേര്", + "bio": "ബയോ", + "email": "ഇമെയിൽ", + "type": "തരം", + "send_notifications_to_email": "അറിയിപ്പുകൾ ഇമെയിലിലേക്ക് അയയ്ക്കുക", + "delete_account": "അക്കൗണ്ട് ഇല്ലാതാക്കുക", + "saved": "സംരക്ഷിച്ചു", + "communities": "കൂട്ടായ്മകൾ", + "users": "ഉപയോക്താക്കൾ", + "theme": "തീം", + "language": "ഭാഷ", + "hot": "'ഹോട്ട്'", + "new_": "പുതിയത്", + "old": "പഴയത്", + "top": "മികച്ചത്", + "chat": "ചാറ്റ്", + "admin": "അഡ്മിൻ", + "not_a_mod_or_admin": "ഒരു മോഡറേറ്റർ അല്ലെങ്കിൽ അഡ്മിൻ അല്ല.", + "not_an_admin": "ഒരു അഡ്മിൻ അല്ല.", + "not_logged_in": "പ്രവേശിച്ചിട്ടില്ല", + "site_ban": "നിങ്ങളെ ഈ സൈറ്റിൽ നിന്ന് നിരോധിച്ചിരിക്കുന്നു", + "locked": "പൂട്ടിയിരിക്കുന്നു", + "invalid_community_name": "അസാധുവായ പേര്.", + "not_a_moderator": "ഒരു മോഡറേറ്റർ അല്ല.", + "email_already_exists": "ഇമെയിൽ ഇതിനകം നിലവിലുണ്ട്.", + "number_of_users_online": "{formattedCount,plural, =1{{formattedCount} ഉപയോക്താവ് ഓൺലൈൻ} other{{formattedCount} ഉപയോക്താക്കൾ ഓൺലൈൻ}}", + "number_of_comments": "{formattedCount,plural, =1{{formattedCount} കമ്മന്റ്} other{{formattedCount} കമ്മന്റുകൾ}}", + "number_of_posts": "{formattedCount,plural, =1{{formattedCount} പോസ്റ്റ്} other{{formattedCount} പോസ്റ്റുകൾ}}", + "number_of_users": "{formattedCount,plural, =1{{formattedCount} ഉപയോക്താവ്} other{{formattedCount} ഉപയോക്താക്കൾ}}", + "messages": "സന്ദേശങ്ങൾ", + "banned_users": "നിരോധിച്ച ഉപയോക്താക്കൾ", + "new_password": "പുതിയ രഹസ്യവാക്ക്", + "verify_password": "രഹസ്യവാക്ക് ഉറപ്പാക്കുക", + "old_password": "പഴയ രഹസ്യവാക്ക്", + "show_avatars": "അവതാറുകൾ കാണിക്കുക", + "search": "തിരയുക", + "send_message": "സന്ദേശം അയയ്ക്കുക", + "top_month": "മാസത്തിൽ മികച്ചത്", + "top_year": "വർഷത്തിൽ മികച്ചത്", + "top_all": "എക്കാലത്തെയും മികച്ചത്", + "active": "സജീവമാണ്", + "bot_account": "റോബോട്ട് അക്കൗണ്ട്", + "show_bot_accounts": "റോബോട്ട് അക്കൗണ്ടുകൾ കാണിക്കുക", + "show_read_posts": "വായിച്ച പോസ്റ്റുകൾ കാണിക്കുക" +} diff --git a/assets/l10n/intl_mnc.arb b/assets/l10n/intl_mnc.arb new file mode 100644 index 0000000..3af01e2 --- /dev/null +++ b/assets/l10n/intl_mnc.arb @@ -0,0 +1,8 @@ +{ + "@@locale": "mnc", + "posts": "ᡧᡠ", + "comments": "ᠯᡝᠣᠯᡝᠨ", + "post": "ᡧ", + "number_of_comments": "{formattedCount,plural, =1{{formattedCount} ᠯᡝᠣᠯᡝᠨ} other{{formattedCount} ᠯᡝᠣᠯᡝᠨ}}", + "number_of_posts": "{formattedCount,plural, =1{{formattedCount} ᡧᡠ} other{{formattedCount} ᡧᡠ}}" +} diff --git a/lib/l10n/intl_nb.arb b/assets/l10n/intl_nb.arb similarity index 100% rename from lib/l10n/intl_nb.arb rename to assets/l10n/intl_nb.arb diff --git a/lib/l10n/intl_nb_NO.arb b/assets/l10n/intl_nb_NO.arb similarity index 54% rename from lib/l10n/intl_nb_NO.arb rename to assets/l10n/intl_nb_NO.arb index aa058bb..ef0dcd7 100644 --- a/lib/l10n/intl_nb_NO.arb +++ b/assets/l10n/intl_nb_NO.arb @@ -1,14 +1,18 @@ { "@@locale": "nb_NO", + "posts": "innleggene", "comments": "Kommentarer", + "post": "Innlegg", "more": "mer", "reply": "svare", "edit": "Redigere", "avatar": "Profilbilde", "banner": "Banner", + "display_name": "Vis navn", "communities": "Nettsamfunn", "users": "Brukere", - "number_of_comments": "{count,plural, =1{{count} Kommentar} other{{count} Kommentarer}}", + "number_of_comments": "{formattedCount,plural, =1{{formattedCount} Kommentar} other{{formattedCount} Kommentarer}}", + "number_of_posts": "{formattedCount,plural, =1{{formattedCount} Innlegg} other{{formattedCount} innleggene}}", "show_avatars": "Vis profilbilder", "send_message": "Sende melding", "bot_account": "Bot Konto", diff --git a/lib/l10n/intl_nl.arb b/assets/l10n/intl_nl.arb similarity index 85% rename from lib/l10n/intl_nl.arb rename to assets/l10n/intl_nl.arb index d6ad7cb..7bae8e8 100644 --- a/lib/l10n/intl_nl.arb +++ b/assets/l10n/intl_nl.arb @@ -14,6 +14,7 @@ "post": "bericht", "save": "opslaan", "subscribed": "Geabonneerd", + "local": "Lokaal", "all": "Alle", "replies": "Antwoorden", "mentions": "Vermeldingen", @@ -30,6 +31,9 @@ "yes": "ja", "no": "nee", "avatar": "Avatar", + "banner": "Banier", + "display_name": "Weergavenaam", + "bio": "Biografie", "email": "E-mail", "matrix_user": "Matrix-gebruiker", "sort_type": "Sorteertype", @@ -49,12 +53,14 @@ "chat": "Babbel", "admin": "beheerder", "by": "door", + "not_a_mod_or_admin": "Niet een moderator of beheerder.", "not_an_admin": "Niet een beheerder.", "couldnt_find_post": "Het bericht kon niet gevonden worden.", "not_logged_in": "Niet aangemeld.", "site_ban": "U werd verbannen van deze site", "community_ban": "U werd verbannen uit deze gemeenschap.", "downvotes_disabled": "Neerstemmen uitgeschakeld", + "invalid_url": "Ongeldige URL.", "locked": "vergrendeld", "couldnt_create_comment": "Reactie kon niet aangemaakt worden.", "couldnt_like_comment": "Reactie kon niet leuk gevonden worden.", @@ -62,6 +68,11 @@ "no_comment_edit_allowed": "Reactie bewerken is niet toegestaan.", "couldnt_save_comment": "Reactie kon niet opgeslagen worden.", "couldnt_get_comments": "Reacties konden niet opgehaald worden.", + "report_reason_required": "Een rapporteringsmotivering is vereist.", + "report_too_long": "Het rapport is te lang.", + "couldnt_create_report": "Het rapport kon niet aangemaakt worden.", + "couldnt_resolve_report": "Het rapport kon niet opgelost worden.", + "invalid_post_title": "Ongeldige berichttitel", "couldnt_create_post": "Bericht kon niet aangemaakt worden.", "couldnt_like_post": "Het bericht kon niet leuk gevonden worden.", "couldnt_find_community": "De gemeenschap kon niet teruggevonden worden.", @@ -74,6 +85,7 @@ "community_already_exists": "Deze gemeenschap bestaat reeds.", "community_moderator_already_exists": "Deze gemeenschaps-moderator bestaat reeds.", "community_follower_already_exists": "Deze gemeenschapsvolger bestaat reeds.", + "not_a_moderator": "Niet een moderator.", "couldnt_update_community": "De gemeenschap kon niet bijgewerkt worden.", "no_community_edit_allowed": "Gemeenschap bewerken is niet toegestaan.", "system_err_login": "Systeemfout. Probeer af te melden en vervolgens weer aan te melden.", @@ -81,8 +93,11 @@ "couldnt_find_that_username_or_email": "De gebruikersnaam of het e-mailadres kon niet gevonden worden.", "password_incorrect": "Wachtwoord incorrect.", "registration_closed": "Registratie gesloten", + "invalid_password": "Ongeldig wachtwoord. Het wachtwoord moet kleiner dan of gelijk aan 60 tekens zijn.", "passwords_dont_match": "Wachtwoorden komen niet overeen.", + "captcha_incorrect": "Incorrecte Captcha.", "invalid_username": "Ongeldige gebruikersnaam.", + "bio_length_overflow": "De gebruikersbiografie mag niet 300 tekens overschrijden.", "couldnt_update_user": "De gebruiker kon niet bijgewerkt worden.", "couldnt_update_private_message": "Het privé-bericht kon niet bijgewerkt worden.", "couldnt_update_post": "De berichten konden niet bijgewerkt worden", @@ -91,16 +106,16 @@ "post_title_too_long": "De berichttitel is te lang.", "email_already_exists": "E-mailadres bestaat reeds.", "user_already_exists": "Gebruiker bestaat reeds.", - "number_of_users_online": "{count,plural, =1{{count} gebruiker online} other{{count} gebruikers online}}", - "number_of_comments": "{count,plural, =1{{count} reactie} other{{count} reacties}}", - "number_of_posts": "{count,plural, =1{{count} bericht} other{{count} berichten}}", - "number_of_subscribers": "{count,plural, =1{{count} abonnee} other{{count} abonnees}}", - "number_of_users": "{count,plural, =1{{count} gebruiker} other{{count} gebruikers}}", + "number_of_users_online": "{formattedCount,plural, =1{{formattedCount} gebruiker online} other{{formattedCount} gebruikers online}}", + "number_of_comments": "{formattedCount,plural, =1{{formattedCount} reactie} other{{formattedCount} reacties}}", + "number_of_posts": "{formattedCount,plural, =1{{formattedCount} bericht} other{{formattedCount} berichten}}", + "number_of_subscribers": "{formattedCount,plural, =1{{formattedCount} abonnee} other{{formattedCount} abonnees}}", + "number_of_users": "{formattedCount,plural, =1{{formattedCount} gebruiker} other{{formattedCount} gebruikers}}", "unsubscribe": "Afmelden", "subscribe": "Abonneren", "messages": "Boodschappen", "banned_users": "Verbannen gebruikers", - "delete_account_confirm": "Waarschuwing: dit zal al uw data voorgoed verwijderen. Vul uw wachtwoord in om te bevestigen.", + "delete_account_confirm": "Waarschuwing: dit zal al uw data voorgoed verwijderen van deze instantie. Mogelijk blijft uw data bewaard op andere (reeds bestaande) instanties. Vul uw wachtwoord in om de verwijdering te bevestigen.", "new_password": "Nieuw wachtwoord", "verify_password": "Bevestig wachtwoord", "old_password": "Oud wachtwoord", @@ -108,26 +123,14 @@ "search": "Zoeken", "send_message": "Boodschap versturen", "top_day": "Dagelijks hoogtepunt", - "local": "Lokaal", - "banner": "Banier", - "display_name": "Weergavenaam", - "bio": "Biografie", - "not_a_mod_or_admin": "Niet een moderator of beheerder.", - "invalid_url": "Ongeldige URL.", - "report_reason_required": "Een rapporteringsmotivering is vereist.", - "report_too_long": "Het rapport is te lang.", - "couldnt_create_report": "Het rapport kon niet aangemaakt worden.", - "couldnt_resolve_report": "Het rapport kon niet opgelost worden.", - "invalid_post_title": "Ongeldige berichttitel", - "not_a_moderator": "Niet een moderator.", - "invalid_password": "Ongeldig wachtwoord. Het wachtwoord moet kleiner dan of gelijk aan 60 tekens zijn.", - "captcha_incorrect": "Incorrecte Captcha.", - "bio_length_overflow": "De gebruikersbiografie mag niet 300 tekens overschrijden.", "top_week": "Wekelijks hoogtepunt", "top_month": "Maandelijks hoogtepunt", "top_year": "Jaarlijks hoogtepunt", "top_all": "Hoogtepunt aller tijden", "most_comments": "Meeste reacties", "new_comments": "Nieuwe reacties", - "active": "Actief" + "active": "Actief", + "bot_account": "Robotgebruiker", + "show_bot_accounts": "Toon robotgebruikers", + "show_read_posts": "Toon gelezen berichten" } diff --git a/assets/l10n/intl_oc.arb b/assets/l10n/intl_oc.arb new file mode 100644 index 0000000..964f935 --- /dev/null +++ b/assets/l10n/intl_oc.arb @@ -0,0 +1,55 @@ +{ + "@@locale": "oc", + "settings": "Paramètres", + "password": "Senhal", + "posts": "Publicacions", + "comments": "Comentaris", + "community": "Comunitat", + "url": "URL", + "title": "Títol", + "body": "Còs", + "post": "publicar", + "replies": "Responsas", + "mentions": "Mencions", + "more": "mai", + "reply": "respondre", + "edit": "editar", + "delete": "suprimir", + "restore": "restaurar", + "yes": "òc", + "no": "non", + "avatar": "Avatar", + "banner": "Bandièra", + "display_name": "Nom d'afichatge", + "bio": "Biografia", + "email": "Adreça electronica", + "sort_type": "Triar per tipe", + "type": "Tipe", + "delete_account": "Suprimir lo compte", + "saved": "Enregistrat", + "communities": "Comunitats", + "users": "Utilizaires", + "theme": "Tèma", + "language": "Lenga", + "new_": "Nòu", + "by": "per", + "not_logged_in": "Pas connectat.", + "invalid_url": "URL invalida.", + "invalid_community_name": "Nom invalid.", + "invalid_username": "Nom d'utilizaire invalid.", + "user_already_exists": "L’utilizaire existís ja.", + "number_of_users_online": "{formattedCount,plural, =1{{formattedCount} utilizaire en linha} other{{formattedCount} utilizaires en linha}}", + "number_of_comments": "{formattedCount,plural, =1{{formattedCount} comentari} other{{formattedCount} comentaris}}", + "number_of_posts": "{formattedCount,plural, =1{{formattedCount} publicacion} other{{formattedCount} publicacions}}", + "number_of_users": "{formattedCount,plural, =1{{formattedCount} utilizaire} other{{formattedCount} utilizaires}}", + "messages": "Messatges", + "new_password": "Senhal novèl", + "verify_password": "Verificar lo senhal", + "old_password": "Senhal ancian", + "show_avatars": "Mostrar los avatars", + "search": "Recercar", + "send_message": "Enviar un messatge", + "new_comments": "Comentaris novèls", + "bot_account": "Compte de robòt", + "show_bot_accounts": "Mostrar los comptes de robòts" +} diff --git a/lib/l10n/intl_pl.arb b/assets/l10n/intl_pl.arb similarity index 91% rename from lib/l10n/intl_pl.arb rename to assets/l10n/intl_pl.arb index 1fc7117..563a650 100644 --- a/lib/l10n/intl_pl.arb +++ b/assets/l10n/intl_pl.arb @@ -7,7 +7,7 @@ "comments": "Komentarze", "modlog": "Log moderatorski", "community": "Społeczność", - "url": "URL", + "url": "Link", "title": "Tytuł", "body": "Treść", "nsfw": "NSFW (18+)", @@ -20,7 +20,7 @@ "mentions": "Wzmianki", "from": "od", "to": "do", - "deleted_by_creator": "usunięte przez autora", + "deleted_by_creator": "usunięte przez osobę publikującą", "more": "więcej", "mark_as_read": "zaznacz jako przeczytane", "mark_as_unread": "zaznacz jako nieprzeczytane", @@ -53,13 +53,14 @@ "chat": "Dyskusja", "admin": "admin", "by": "przez", + "not_a_mod_or_admin": "Nie moderuje ani administruje.", "not_an_admin": "Nie jest administratorem.", "couldnt_find_post": "Nie udało się znaleźć posta.", "not_logged_in": "Nie jesteś zalogowana/y.", "site_ban": "Zostałaś/eś zbanowana/y z tej witryny", "community_ban": "Zostałaś/eś zbanowana/y z tej społeczności.", "downvotes_disabled": "Wdółgłosy wyłączone", - "invalid_url": "Nieprawidłowy URL.", + "invalid_url": "Nieprawidłowy link.", "locked": "zablokowane", "couldnt_create_comment": "Nie udało się stworzyć komentarza.", "couldnt_like_comment": "Polubienie komentarza nie powiodło się.", @@ -109,7 +110,7 @@ "subscribe": "Subskrybuj", "messages": "Wiadomości", "banned_users": "Zbanowani Użytkownicy", - "delete_account_confirm": "Ostrzeżenie: twoje dane zostaną bezpowrotnie usunięte. Wpisz swoje hasło aby potwierdzić.", + "delete_account_confirm": "Ostrzeżenie: twoje dane zostaną bezpowrotnie usunięte na tej instancji. Mogą one pozostać na innych instancjach. Wpisz swoje hasło aby potwierdzić.", "new_password": "Nowe Hasło", "verify_password": "Zweryfikuj Hasło", "old_password": "Stare Hasło", @@ -122,5 +123,9 @@ "top_year": "Najpopularniejsze rok", "top_all": "Najpopularniejsze kiedykolwiek", "most_comments": "Najwięcej komentarzy", - "active": "Aktywne" + "new_comments": "Nowe komentarze", + "active": "Aktywne", + "bot_account": "Konto bota", + "show_bot_accounts": "Pokaż konta botów", + "show_read_posts": "Pokaż przeczytane posty" } diff --git a/assets/l10n/intl_pt.arb b/assets/l10n/intl_pt.arb new file mode 100644 index 0000000..776b44a --- /dev/null +++ b/assets/l10n/intl_pt.arb @@ -0,0 +1,136 @@ +{ + "@@locale": "pt", + "settings": "Definições", + "password": "Palavra-passe", + "email_or_username": "Email ou nome de utilizador", + "posts": "Publicações", + "comments": "Comentários", + "modlog": "Registo de moderação", + "community": "Comunidade", + "url": "URL", + "title": "Título", + "body": "Texto", + "nsfw": "NSFW", + "post": "publicar", + "save": "guardar", + "subscribed": "Subscrito", + "local": "Local", + "all": "Tudo", + "replies": "Respostas", + "mentions": "Menções", + "from": "de", + "to": "para", + "deleted_by_creator": "apagado pelo autor", + "more": "mais", + "mark_as_read": "marcar como lida", + "mark_as_unread": "marcar como não lida", + "reply": "responder", + "edit": "editar", + "delete": "apagar", + "restore": "restaurar", + "yes": "sim", + "no": "não", + "avatar": "Avatar", + "banner": "Capa", + "display_name": "Nome de exibição", + "bio": "Biografia", + "email": "Correio eletrónico", + "matrix_user": "Utilizador Matrix", + "sort_type": "Tipo de ordenação", + "type": "Tipo", + "show_nsfw": "Mostrar conteúdo NSFW", + "send_notifications_to_email": "Enviar notificações por correio eletrónico", + "delete_account": "Apagar conta", + "saved": "Guardado", + "communities": "Comunidades", + "users": "Utilizadores", + "theme": "Tema", + "language": "Idioma", + "hot": "Mais ativos", + "new_": "Novo", + "old": "Antigo", + "top": "Topo", + "chat": "Conversa", + "admin": "administrador", + "by": "por", + "not_a_mod_or_admin": "Não és um moderador ou administrador.", + "not_an_admin": "Não és um administrador.", + "couldnt_find_post": "Não foi possível encontrar a publicação.", + "not_logged_in": "Não autenticado.", + "site_ban": "Foste banido do site", + "community_ban": "Foste banido desta comunidade.", + "downvotes_disabled": "Votos negativos desativados", + "invalid_url": "URL inválido.", + "locked": "bloqueado", + "couldnt_create_comment": "Não foi possível criar o comentário.", + "couldnt_like_comment": "Não foi possível gostar do comentário.", + "couldnt_update_comment": "Não foi possível atualizar o comentário.", + "no_comment_edit_allowed": "Não podes editar este comentário.", + "couldnt_save_comment": "Não foi possível guardar o comentário.", + "couldnt_get_comments": "Não foi possível obter os comentários.", + "report_reason_required": "É necessária uma razão para a denúncia.", + "report_too_long": "Denúncia demasiado longa.", + "couldnt_create_report": "Não foi possível criar a denúncia.", + "couldnt_resolve_report": "Não foi possível resolver a denúncia.", + "invalid_post_title": "Título de publicação inválido", + "couldnt_create_post": "Não foi possível criar a publicação.", + "couldnt_like_post": "Não foi possível gostar da publicação.", + "couldnt_find_community": "Não foi possível encontrar a comunidade.", + "couldnt_get_posts": "Não foi possível obter as publicações", + "no_post_edit_allowed": "Não podes editar esta publicação.", + "couldnt_save_post": "Não foi possível guardar a publicação.", + "site_already_exists": "O site já existe.", + "couldnt_update_site": "Não foi possível atualizar o site.", + "invalid_community_name": "Nome inválido.", + "community_already_exists": "Essa comunidade já existe.", + "community_moderator_already_exists": "Esse utilizador já modera esta comunidade.", + "community_follower_already_exists": "Esse utilizador já segue esta comunidade.", + "not_a_moderator": "Não és um moderador.", + "couldnt_update_community": "Não foi possível atualizar a comunidade.", + "no_community_edit_allowed": "Não podes editar esta comunidade.", + "system_err_login": "Erro do sistema. Tenta sair e voltar a entrar.", + "community_user_already_banned": "Esse utilizador já foi banido da comunidade.", + "couldnt_find_that_username_or_email": "Não foi possível encontrar esse nome ou endereço de correio eletrónico.", + "password_incorrect": "Palavra-passe incorreta.", + "registration_closed": "Inscrições fechadas", + "invalid_password": "Palavra-passe inválida. Tem que ter 60 ou menos caracteres.", + "passwords_dont_match": "As palavras-passe não coincidem.", + "captcha_incorrect": "CAPTCHA incorreto.", + "invalid_username": "Nome de utilizador inválido.", + "bio_length_overflow": "A biografia não pode exceder 300 caracteres.", + "couldnt_update_user": "Não foi possível atualizar o utilizador.", + "couldnt_update_private_message": "Não foi possível atualizar a mensagem privada.", + "couldnt_update_post": "Não foi possível atualizar a publicação", + "couldnt_create_private_message": "Não foi possível criar a mensagem privada.", + "no_private_message_edit_allowed": "Não podes editar a mensagem privada.", + "post_title_too_long": "Título da publicação demasiado longo.", + "email_already_exists": "Esse endereço de correio eletrónico já está registado.", + "user_already_exists": "Esse utilizador já existe.", + "number_of_users_online": "{formattedCount,plural, =1{{formattedCount} utilizador em linha} other{{formattedCount} utilizadores em linha}}", + "number_of_comments": "{formattedCount,plural, =1{{formattedCount} comentário} other{{formattedCount} comentários}}", + "number_of_posts": "{formattedCount,plural, =1{{formattedCount} publicação} other{{formattedCount} publicações}}", + "number_of_subscribers": "{formattedCount,plural, =1{{formattedCount} subscritor} other{{formattedCount} subscritores}}", + "number_of_users": "{formattedCount,plural, =1{{formattedCount} utilizador} other{{formattedCount} utilizadores}}", + "unsubscribe": "Cancelar subscrição", + "subscribe": "Subscrever", + "messages": "Mensagens", + "banned_users": "Utilizadores banidos", + "delete_account_confirm": "Aviso: esta ação irá apagar permanentemente todos os teus dados desta instância. Estes poderão não ser apagados noutras instâncias existentes. Insire a tua palavra-passe para confirmar.", + "new_password": "Nova palavra-passe", + "verify_password": "Verificar palavra-passe", + "old_password": "Palavra-passe antiga", + "show_avatars": "Mostrar avatares", + "search": "Procurar", + "send_message": "Enviar mensagem", + "top_day": "Topo do dia", + "top_week": "Topo da semana", + "top_month": "Topo do mês", + "top_year": "Topo do ano", + "top_all": "Topo de sempre", + "most_comments": "Mais comentários", + "new_comments": "Novos comentários", + "active": "Ativos", + "bot_account": "Conta robô", + "show_bot_accounts": "Mostrar contas robô", + "show_read_posts": "Mostrar publicações lidas" +} diff --git a/lib/l10n/intl_pt_BR.arb b/assets/l10n/intl_pt_BR.arb similarity index 88% rename from lib/l10n/intl_pt_BR.arb rename to assets/l10n/intl_pt_BR.arb index 5f6458b..58dea54 100644 --- a/lib/l10n/intl_pt_BR.arb +++ b/assets/l10n/intl_pt_BR.arb @@ -53,6 +53,7 @@ "chat": "Chat", "admin": "administrador", "by": "por", + "not_a_mod_or_admin": "Não é moderador ou administrador.", "not_an_admin": "Não é administrador.", "couldnt_find_post": "Não foi possível encontrar a publicação.", "not_logged_in": "Não autenticado.", @@ -101,11 +102,11 @@ "post_title_too_long": "Título da publicação muito longo.", "email_already_exists": "Este e-mail já existe.", "user_already_exists": "Este usuário já existe.", - "number_of_users_online": "{count,plural, =1{{count} usuário online} other{{count} usuários online}}", - "number_of_comments": "{count,plural, =1{{count} comentário} other{{count} comentários}}", - "number_of_posts": "{count,plural, =1{{count} publicação} other{{count} publicações}}", - "number_of_subscribers": "{count,plural, =1{{count} inscrito} other{{count} inscritos}}", - "number_of_users": "{count,plural, =1{{count} usuário} other{{count} usuários}}", + "number_of_users_online": "{formattedCount,plural, =1{{formattedCount} usuário online} other{{formattedCount} usuários online}}", + "number_of_comments": "{formattedCount,plural, =1{{formattedCount} comentário} other{{formattedCount} comentários}}", + "number_of_posts": "{formattedCount,plural, =1{{formattedCount} publicação} other{{formattedCount} publicações}}", + "number_of_subscribers": "{formattedCount,plural, =1{{formattedCount} inscrito} other{{formattedCount} inscritos}}", + "number_of_users": "{formattedCount,plural, =1{{formattedCount} usuário} other{{formattedCount} usuários}}", "unsubscribe": "Cancelar inscrição", "subscribe": "Inscrever-se", "messages": "Mensagens", @@ -118,11 +119,10 @@ "search": "Busca", "send_message": "Enviar mensagem", "top_day": "Melhor do dia", - "active": "Ativo", - "not_a_mod_or_admin": "Não é moderador ou administrador.", "top_week": "Melhor da semana", "top_month": "Melhor do mês", "top_year": "Melhor do ano", "most_comments": "Mais comentados", - "new_comments": "Novos comentários" + "new_comments": "Novos comentários", + "active": "Ativo" } diff --git a/lib/l10n/intl_ru.arb b/assets/l10n/intl_ru.arb similarity index 93% rename from lib/l10n/intl_ru.arb rename to assets/l10n/intl_ru.arb index 8575a0e..2a7fea1 100644 --- a/lib/l10n/intl_ru.arb +++ b/assets/l10n/intl_ru.arb @@ -2,16 +2,16 @@ "@@locale": "ru", "settings": "Настройки", "password": "Пароль", - "email_or_username": "Электронная почта или Имя пользователя", - "posts": "Посты", + "email_or_username": "Эл.почта или Имя пользователя", + "posts": "Поста", "comments": "Комментарии", - "modlog": "Модерация", + "modlog": "Журнал Администраторов", "community": "Сообщество", "url": "URL", - "title": "Название", + "title": "Заголовок", "body": "Тело", "nsfw": "NSFW", - "post": "запостить", + "post": "пост", "save": "сохранить", "subscribed": "Подписаны", "local": "Локальные", @@ -53,6 +53,7 @@ "chat": "Чат", "admin": "администратор", "by": "от", + "not_a_mod_or_admin": "Не модератор и не админинстратор.", "not_an_admin": "Не администратор.", "couldnt_find_post": "Не удалось найти пост.", "not_logged_in": "Не авторизованы.", @@ -108,7 +109,7 @@ "unsubscribe": "Отписаться", "subscribe": "Подписаться", "messages": "Сообщения", - "banned_users": "Забаненные Пользователи", + "banned_users": "Блокированные Пользователи", "delete_account_confirm": "Предупреждение: это действие полностью уничтожит все данные вашего аккаунта. Введите свой пароль для подтверждения.", "new_password": "Новый Пароль", "verify_password": "Подтвердите Пароль", @@ -121,8 +122,10 @@ "top_month": "Лучшие за Месяц", "top_year": "Лучшие за Год", "top_all": "Лучшие за Всё Время", - "active": "Активные", - "not_a_mod_or_admin": "Не модератор и не админинстратор.", "most_comments": "Наиболее Комментируемые", - "new_comments": "Новые Комментарии" + "new_comments": "Новые Комментарии", + "active": "Активные", + "bot_account": "Аккаунт Бота", + "show_bot_accounts": "Покзать Аккаунты Ботов", + "show_read_posts": "Показать Прочитанные Посты" } diff --git a/assets/l10n/intl_sk.arb b/assets/l10n/intl_sk.arb new file mode 100644 index 0000000..e324219 --- /dev/null +++ b/assets/l10n/intl_sk.arb @@ -0,0 +1,8 @@ +{ + "@@locale": "sk", + "posts": "Príspevky", + "comments": "Komentáre", + "post": "Poslať", + "communities": "Komunity", + "users": "Užívatelia" +} diff --git a/lib/l10n/intl_sq.arb b/assets/l10n/intl_sq.arb similarity index 88% rename from lib/l10n/intl_sq.arb rename to assets/l10n/intl_sq.arb index ed4aca4..100dfc8 100644 --- a/lib/l10n/intl_sq.arb +++ b/assets/l10n/intl_sq.arb @@ -91,11 +91,11 @@ "post_title_too_long": "Titulli i postimit ishte shumë i gjatë.", "email_already_exists": "Email-i tashmë ekziston.", "user_already_exists": "Përdoruesi tashmë ekziston.", - "number_of_users_online": "{count,plural, =1{{count} Përdorues Online} other{{count} Përdoruesa Online}}", - "number_of_comments": "{count,plural, =1{{count} Koment} other{{count} Komente}}", - "number_of_posts": "{count,plural, =1{{count} Postim} other{{count} Postime}}", - "number_of_subscribers": "{count,plural, =1{{count} i abonuar} other{{count} të abonuar}}", - "number_of_users": "{count,plural, =1{{count} Përdorues} other{{count} Përdoruesa}}", + "number_of_users_online": "{formattedCount,plural, =1{{formattedCount} Përdorues Online} other{{formattedCount} Përdoruesa Online}}", + "number_of_comments": "{formattedCount,plural, =1{{formattedCount} Koment} other{{formattedCount} Komente}}", + "number_of_posts": "{formattedCount,plural, =1{{formattedCount} Postim} other{{formattedCount} Postime}}", + "number_of_subscribers": "{formattedCount,plural, =1{{formattedCount} i abonuar} other{{formattedCount} të abonuar}}", + "number_of_users": "{formattedCount,plural, =1{{formattedCount} Përdorues} other{{formattedCount} Përdoruesa}}", "unsubscribe": "Ndalo Abonimin", "subscribe": "Abonohu", "messages": "Mesazhet", diff --git a/lib/l10n/intl_sr.arb b/assets/l10n/intl_sr.arb similarity index 100% rename from lib/l10n/intl_sr.arb rename to assets/l10n/intl_sr.arb diff --git a/lib/l10n/intl_sr_Latn.arb b/assets/l10n/intl_sr_Latn.arb similarity index 100% rename from lib/l10n/intl_sr_Latn.arb rename to assets/l10n/intl_sr_Latn.arb diff --git a/lib/l10n/intl_sv.arb b/assets/l10n/intl_sv.arb similarity index 85% rename from lib/l10n/intl_sv.arb rename to assets/l10n/intl_sv.arb index 80ee766..5b09846 100644 --- a/lib/l10n/intl_sv.arb +++ b/assets/l10n/intl_sv.arb @@ -53,6 +53,7 @@ "chat": "Chatta", "admin": "administratör", "by": "av", + "not_a_mod_or_admin": "Inte en moderator eller administratör.", "not_an_admin": "Inte en administratör.", "couldnt_find_post": "Kunde inte hitta inlägg.", "not_logged_in": "Inte inloggad.", @@ -105,16 +106,16 @@ "post_title_too_long": "Inläggstiteln är för lång.", "email_already_exists": "E-post finns redan.", "user_already_exists": "Användaren finns redan.", - "number_of_users_online": "{count,plural, =1{{count} användare inloggad} other{{count} användare inloggade}}", - "number_of_comments": "{count,plural, =1{{count} kommentar} other{{count} kommentarer}}", - "number_of_posts": "{count,plural, =1{{count} inlägg} other{{count} inlägg}}", - "number_of_subscribers": "{count,plural, =1{{count} prenumerant} other{{count} prenumeranter}}", - "number_of_users": "{count,plural, =1{{count} användare} other{{count} användare}}", + "number_of_users_online": "{formattedCount,plural, =1{{formattedCount} användare inloggad} other{{formattedCount} användare inloggade}}", + "number_of_comments": "{formattedCount,plural, =1{{formattedCount} kommentar} other{{formattedCount} kommentarer}}", + "number_of_posts": "{formattedCount,plural, =1{{formattedCount} inlägg} other{{formattedCount} inlägg}}", + "number_of_subscribers": "{formattedCount,plural, =1{{formattedCount} prenumerant} other{{formattedCount} prenumeranter}}", + "number_of_users": "{formattedCount,plural, =1{{formattedCount} användare} other{{formattedCount} användare}}", "unsubscribe": "Avsluta prenumeration", "subscribe": "Prenumerera", "messages": "Meddelanden", "banned_users": "Blockerade användare", - "delete_account_confirm": "Varning: den här åtgärden kommer radera alla dina data permanent. Skriv in ditt lösenord för att bekräfta.", + "delete_account_confirm": "Varning: den här åtgärden kommer radera alla dina data på den här instansen permanent. Dina data raderas inte från andra instanser. Skriv in ditt lösenord för att bekräfta.", "new_password": "Nytt lösenord", "verify_password": "Bekräfta lösenord", "old_password": "Gammalt lösenord", @@ -127,7 +128,9 @@ "top_year": "Årstoppen", "top_all": "Totaltoppen", "most_comments": "Flest kommentarer", + "new_comments": "Nya kommentarer", "active": "Aktivt", - "not_a_mod_or_admin": "Inte en moderator eller administratör.", - "new_comments": "Nya kommentarer" + "bot_account": "Robotkonto", + "show_bot_accounts": "Visa robotkonton", + "show_read_posts": "Visa lästa inlägg" } diff --git a/lib/l10n/intl_th.arb b/assets/l10n/intl_th.arb similarity index 61% rename from lib/l10n/intl_th.arb rename to assets/l10n/intl_th.arb index 386dc3e..ecc32ae 100644 --- a/lib/l10n/intl_th.arb +++ b/assets/l10n/intl_th.arb @@ -5,6 +5,10 @@ "email_or_username": "อีเมลหรือชื่อผู้ใช้", "posts": "โพสต์", "comments": "ความคิดเห็น", + "community": "ชุมชน", + "url": "ลิงก์", + "title": "หัวข้อ", + "body": "แสดง", "post": "โพสต์", "save": "บันทึก", "all": "ทั้งหมด", @@ -21,32 +25,46 @@ "yes": "ใช่", "no": "ไม่", "avatar": "รูปประจำตัว", + "banner": "แบนเนอร์", + "bio": "ชีวประวัติ", "email": "อีเมล", + "type": "ชนิด", "delete_account": "ลบบัญชี", "saved": "บันทึกแล้ว", "communities": "ชุมชน", "users": "ผู้ใช้งาน", + "theme": "ธีม", "language": "ภาษา", "new_": "ใหม่", "old": "เก่า", "chat": "แชท", + "admin": "ผู้ดูแล", "by": "โดย", "not_logged_in": "ไม่ได้เข้าสู่ระบบ", + "couldnt_save_comment": "ไม่สามารถบันทึกความคิดเห็นได้", + "report_too_long": "รายงานยาวเกินไป", + "couldnt_create_report": "ไม่สามารถสร้างรายงานได้", + "couldnt_create_post": "ไม่สามารถสร้างโพสต์ได้", "couldnt_save_post": "ไม่สามารถบันทึกโพสต์ได้", "invalid_community_name": "ชื่อไม่ถูกต้อง", "password_incorrect": "รหัสผ่านไม่ถูกต้อง", "registration_closed": "การลงทะเบียนปิดอยู่", "passwords_dont_match": "รหัสผ่านไม่ตรงกัน", + "post_title_too_long": "หัวข้อโพสต์ยาวเกินไป", "email_already_exists": "อีเมลถูกใช้งานแล้ว", - "number_of_comments": "{count,plural, other{{count} ความคิดเห็น}}", - "number_of_posts": "{count,plural, other{{count} โพสต์}}", - "number_of_users": "{count,plural, other{ผู้ใช้ {count} คน}}", + "number_of_comments": "{formattedCount,plural, other{{formattedCount} ความคิดเห็น}}", + "number_of_posts": "{formattedCount,plural, other{{formattedCount} โพสต์}}", + "number_of_users": "{formattedCount,plural, other{ผู้ใช้ {formattedCount} คน}}", "unsubscribe": "เลิกติดตาม", "subscribe": "ติดตาม", "messages": "ข้อความ", "new_password": "รหัสผ่านใหม่", "verify_password": "ยืนยันรหัสผ่าน", "old_password": "รหัสผ่านเก่า", + "show_avatars": "แสดงรูปประจำตัว", "search": "ค้นหา", - "send_message": "ส่งข้อความ" + "send_message": "ส่งข้อความ", + "bot_account": "บัญชีบอต", + "show_bot_accounts": "แสดงบัญชีบอต", + "show_read_posts": "แสดงโพสต์ที่อ่านแล้ว" } diff --git a/lib/l10n/intl_tr.arb b/assets/l10n/intl_tr.arb similarity index 85% rename from lib/l10n/intl_tr.arb rename to assets/l10n/intl_tr.arb index 7f4caef..da43868 100644 --- a/lib/l10n/intl_tr.arb +++ b/assets/l10n/intl_tr.arb @@ -19,7 +19,7 @@ "mentions": "Bahisler", "from": "tarafından", "to": "tarafına", - "deleted_by_creator": "yazarı tarafından silindi", + "deleted_by_creator": "yazar tarafından silindi", "more": "dahası", "mark_as_read": "okunmuş olarak işaretle", "mark_as_unread": "okunmamış olarak işaretle", @@ -91,11 +91,11 @@ "post_title_too_long": "Paylaşım başlığı çok uzun.", "email_already_exists": "Böyle bir e-mail adresi zaten var.", "user_already_exists": "Böyle bir kullanıcı zaten var.", - "number_of_users_online": "{count,plural, =1{{count} Kullanıcı Hatta} other{{count} Kullanıcı Hatta}}", - "number_of_comments": "{count,plural, =1{{count} Yorum} other{{count} Yorum}}", - "number_of_posts": "{count,plural, =1{{count} Paylaşım} other{{count} Paylaşım}}", - "number_of_subscribers": "{count,plural, =1{{count} Takipçi} other{{count} Takipçi}}", - "number_of_users": "{count,plural, =1{{count} Kullanıcı} other{{count} Kullanıcı}}", + "number_of_users_online": "{formattedCount,plural, =1{{formattedCount} Kullanıcı Hatta} other{{formattedCount} Kullanıcı Hatta}}", + "number_of_comments": "{formattedCount,plural, =1{{formattedCount} Yorum} other{{formattedCount} Yorum}}", + "number_of_posts": "{formattedCount,plural, =1{{formattedCount} Paylaşım} other{{formattedCount} Paylaşım}}", + "number_of_subscribers": "{formattedCount,plural, =1{{formattedCount} Takipçi} other{{formattedCount} Takipçi}}", + "number_of_users": "{formattedCount,plural, =1{{formattedCount} Kullanıcı} other{{formattedCount} Kullanıcı}}", "unsubscribe": "Takibi bırak", "subscribe": "Takip et", "messages": "Mesajlar", @@ -107,5 +107,6 @@ "show_avatars": "Avatarları Göster", "search": "Ara", "send_message": "Mesaj Yolla", - "top_day": "Günün en iyileri" + "top_day": "Günün en iyileri", + "show_bot_accounts": "Bot Hesapları Göster" } diff --git a/lib/l10n/intl_uk.arb b/assets/l10n/intl_uk.arb similarity index 100% rename from lib/l10n/intl_uk.arb rename to assets/l10n/intl_uk.arb diff --git a/assets/l10n/intl_vi.arb b/assets/l10n/intl_vi.arb new file mode 100644 index 0000000..1169f0d --- /dev/null +++ b/assets/l10n/intl_vi.arb @@ -0,0 +1,136 @@ +{ + "@@locale": "vi", + "settings": "Cài đặt", + "password": "Mật khẩu", + "email_or_username": "Email hoặc Tên tài khoản", + "posts": "Bài đăng", + "comments": "Bình luận", + "modlog": "Nhật ký kiểm duyệt", + "community": "Cộng đồng", + "url": "URL", + "title": "Tiêu đề", + "body": "Nội dung", + "nsfw": "NSFW", + "post": "Bình luận", + "save": "Lưu", + "subscribed": "Đã đăng ký", + "local": "Máy chủ", + "all": "Toàn bộ", + "replies": "Trả lời", + "mentions": "Lượt nhắc", + "from": "từ", + "to": "trong", + "deleted_by_creator": "người viết tự xoá", + "more": "xem thêm", + "mark_as_read": "đánh dấu là đã đọc", + "mark_as_unread": "đánh dấu là chưa đọc", + "reply": "trả lời", + "edit": "chỉnh sửa", + "delete": "xoá", + "restore": "khôi phục", + "yes": "đồng ý", + "no": "huỷ bỏ", + "avatar": "Ảnh đại diện", + "banner": "Ảnh bìa", + "display_name": "Tên hiển thị", + "bio": "Tiểu sử", + "email": "Email", + "matrix_user": "Matrix", + "sort_type": "Xếp theo", + "type": "Loại", + "show_nsfw": "Hiện nội dung NSFW", + "send_notifications_to_email": "Gửi thông báo đến email", + "delete_account": "Xoá tài khoản", + "saved": "Đã lưu", + "communities": "Danh sách cộng đồng", + "users": "Thành viên", + "theme": "Giao diện", + "language": "Ngôn ngữ", + "hot": "Hot", + "new_": "Mới nhất", + "old": "Cũ nhất", + "top": "Nổi bật nhất", + "chat": "Chat", + "admin": "quản trị viên", + "by": "bởi", + "not_a_mod_or_admin": "Không phải đội ngũ vận hành.", + "not_an_admin": "Không phải quản trị viên.", + "couldnt_find_post": "Không tìm thấy bài đăng.", + "not_logged_in": "Chưa đăng nhập", + "site_ban": "Bạn vừa bị cấm khỏi trang", + "community_ban": "Bạn bị cấm ở cộng đồng này.", + "downvotes_disabled": "Phản đối đã tắt", + "invalid_url": "URL không hợp lệ.", + "locked": "đã khóa", + "couldnt_create_comment": "Không thể bình luận.", + "couldnt_like_comment": "Không thể thích bình luận", + "couldnt_update_comment": "Không thể cập nhật bình luận.", + "no_comment_edit_allowed": "Không cho phép sửa bình luận.", + "couldnt_save_comment": "Không thể lưu bình luận.", + "couldnt_get_comments": "Không thể xem bình luận.", + "report_reason_required": "Bắt buộc có lý do báo cáo.", + "report_too_long": "Báo cáo quá dài.", + "couldnt_create_report": "Không thể tạo báo cáo.", + "couldnt_resolve_report": "Không thể giải quyết báo cáo.", + "invalid_post_title": "Tựa đề bài đăng không hợp lệ", + "couldnt_create_post": "Không thể đăng bài.", + "couldnt_like_post": "Không thể thích bài đăng.", + "couldnt_find_community": "Không tìm thấy cộng đồng", + "couldnt_get_posts": "Không thể xem bài đăng", + "no_post_edit_allowed": "Không cho phép sửa bài đăng.", + "couldnt_save_post": "Không thể lưu bài đăng.", + "site_already_exists": "Trang đã tồn tại.", + "couldnt_update_site": "Không thể cập nhật trang.", + "invalid_community_name": "Tên không hợp lệ.", + "community_already_exists": "Cộng đồng đã tồn tại.", + "community_moderator_already_exists": "Kiểm duyệt viên đã tồn tại.", + "community_follower_already_exists": "Người theo dõi cộng đồng đã tồn tại.", + "not_a_moderator": "Không phải kiểm duyệt viên.", + "couldnt_update_community": "Không thể cập nhật cộng đồng.", + "no_community_edit_allowed": "Không cho phép sửa cộng đồng.", + "system_err_login": "Lỗi hệ thống. Hãy đăng xuất rồi đăng nhập lại.", + "community_user_already_banned": "Đã cấm thành viên cộng đồng.", + "couldnt_find_that_username_or_email": "Không tìm thấy tên thành viên hoặc email.", + "password_incorrect": "Sai mật khẩu.", + "registration_closed": "Đăng ký đã tắt", + "invalid_password": "Mật khẩu không hợp lệ. Mật khẩu phải ít hơn 60 ký tự.", + "passwords_dont_match": "Mật khẩu không khớp.", + "captcha_incorrect": "Sai captcha.", + "invalid_username": "Tên tài khoản không hợp lệ.", + "bio_length_overflow": "Tiểu sử thành viên tối đa 300 ký tự.", + "couldnt_update_user": "Không thể cập nhật thành viên.", + "couldnt_update_private_message": "Không thể cập nhật tin nhắn riêng.", + "couldnt_update_post": "Không thể cập nhật bài đăng", + "couldnt_create_private_message": "Không thể nhắn tin riêng.", + "no_private_message_edit_allowed": "Không cho phép chỉnh sửa tin nhắn riêng.", + "post_title_too_long": "Tựa đề quá dài.", + "email_already_exists": "Email đã tồn tại.", + "user_already_exists": "Thành viên đã tồn tại.", + "number_of_users_online": "{formattedCount,plural, other{{formattedCount} thành viên online}}", + "number_of_comments": "{formattedCount,plural, other{{formattedCount} Bình luận}}", + "number_of_posts": "{formattedCount,plural, other{{formattedCount} Bài đăng}}", + "number_of_subscribers": "{formattedCount,plural, other{{formattedCount} người theo dõi}}", + "number_of_users": "{formattedCount,plural, other{{formattedCount} thành viên}}", + "unsubscribe": "Huỷ đăng ký", + "subscribe": "Đăng ký", + "messages": "Tin nhắn", + "banned_users": "Những tài khoản đã bị cấm", + "delete_account_confirm": "Cảnh báo: điều này sẽ khiến toàn bộ dữ liệu của bạn bị xoá vĩnh viễn khỏi máy chủ. Nhập mật khẩu để xác nhận.", + "new_password": "Mật khẩu mới", + "verify_password": "Xác nhận mật khẩu", + "old_password": "Mật khẩu cũ", + "show_avatars": "Hiện Ảnh đại diện", + "search": "Tìm kiếm", + "send_message": "Nhắn tin", + "top_day": "Theo ngày", + "top_week": "Theo tuần", + "top_month": "Theo tháng", + "top_year": "Theo năm", + "top_all": "Mọi lúc", + "most_comments": "Nhiều bình luận", + "new_comments": "Mới bình luận", + "active": "Ngẫu nhiên", + "bot_account": "Tài khoản Bot", + "show_bot_accounts": "Hiện Tài khoản Bot", + "show_read_posts": "Hiện Bài đăng đọc" +} diff --git a/lib/l10n/intl_zh.arb b/assets/l10n/intl_zh.arb similarity index 86% rename from lib/l10n/intl_zh.arb rename to assets/l10n/intl_zh.arb index 55ae9f7..06037be 100644 --- a/lib/l10n/intl_zh.arb +++ b/assets/l10n/intl_zh.arb @@ -53,6 +53,7 @@ "chat": "聊天", "admin": "总管理员", "by": " ", + "not_a_mod_or_admin": "不是仲裁员或管理员。", "not_an_admin": "不是管理员。", "couldnt_find_post": "无法找到帖子。", "not_logged_in": "未登录。", @@ -105,11 +106,11 @@ "post_title_too_long": "帖子标题过长。", "email_already_exists": "邮箱已占用。", "user_already_exists": "用户已存在。", - "number_of_users_online": "{count,plural, =1{{count} 在线用户} other{{count} 名在线用户}}", - "number_of_comments": "{count,plural, =1{{count} 条评论} other{{count} 条评论}}", - "number_of_posts": "{count,plural, =1{{count} 个帖子} other{{count} 条帖子}}", - "number_of_subscribers": "{count,plural, =1{{count} 订阅者} other{{count} 名订阅者}}", - "number_of_users": "{count,plural, =1{{count} 用户} other{{count} 名用户}}", + "number_of_users_online": "{formattedCount,plural, =1{{formattedCount} 在线用户} other{{formattedCount} 名在线用户}}", + "number_of_comments": "{formattedCount,plural, =1{{formattedCount} 条评论} other{{formattedCount} 条评论}}", + "number_of_posts": "{formattedCount,plural, =1{{formattedCount} 个帖子} other{{formattedCount} 条帖子}}", + "number_of_subscribers": "{formattedCount,plural, =1{{formattedCount} 订阅者} other{{formattedCount} 名订阅者}}", + "number_of_users": "{formattedCount,plural, =1{{formattedCount} 用户} other{{formattedCount} 名用户}}", "unsubscribe": "取消订阅", "subscribe": "订阅", "messages": "信息", @@ -129,5 +130,6 @@ "most_comments": "最多评论", "new_comments": "新评论", "active": "活跃", - "not_a_mod_or_admin": "不是仲裁员或管理员。" + "bot_account": "机器人账户", + "show_bot_accounts": "显示机器人账户" } diff --git a/assets/l10n/intl_zh_Hant.arb b/assets/l10n/intl_zh_Hant.arb new file mode 100644 index 0000000..8d9af15 --- /dev/null +++ b/assets/l10n/intl_zh_Hant.arb @@ -0,0 +1,29 @@ +{ + "@@locale": "zh_Hant", + "settings": "設定", + "posts": "貼文", + "comments": "評論", + "modlog": "管理紀錄", + "post": "回文", + "deleted_by_creator": "作者已刪除", + "more": "更多", + "mark_as_read": "標記為已讀", + "mark_as_unread": "標記為未讀", + "reply": "回覆", + "edit": "編輯", + "delete": "刪除", + "avatar": "頭貼", + "banner": "橫幅", + "delete_account": "刪除帳號", + "communities": "社群", + "users": "使用者", + "locked": "已鎖定", + "invalid_community_name": "無效的名稱。", + "number_of_comments": "{formattedCount,plural, other{{formattedCount} 則評論}}", + "number_of_posts": "{formattedCount,plural, other{{formattedCount} 貼文}}", + "show_avatars": "顯示頭貼", + "send_message": "發送私人訊息", + "bot_account": "機器人帳號", + "show_bot_accounts": "顯示機器人帳號", + "show_read_posts": "顯示已讀貼文" +} diff --git a/assets/l10n/untranslated.json b/assets/l10n/untranslated.json new file mode 100644 index 0000000..acbb132 --- /dev/null +++ b/assets/l10n/untranslated.json @@ -0,0 +1,1978 @@ +{ + "ar": [ + "number_of_users_online", + "number_of_comments", + "number_of_posts", + "number_of_subscribers", + "number_of_users" + ], + + "bn": [ + "password", + "email_or_username", + "community", + "url", + "title", + "body", + "nsfw", + "save", + "subscribed", + "local", + "all", + "replies", + "mentions", + "from", + "to", + "restore", + "yes", + "no", + "display_name", + "bio", + "email", + "matrix_user", + "sort_type", + "type", + "show_nsfw", + "send_notifications_to_email", + "saved", + "theme", + "language", + "hot", + "new_", + "old", + "top", + "chat", + "by", + "not_a_mod_or_admin", + "not_an_admin", + "couldnt_find_post", + "not_logged_in", + "site_ban", + "community_ban", + "downvotes_disabled", + "invalid_url", + "couldnt_create_comment", + "couldnt_like_comment", + "couldnt_update_comment", + "no_comment_edit_allowed", + "couldnt_save_comment", + "couldnt_get_comments", + "report_reason_required", + "report_too_long", + "couldnt_create_report", + "couldnt_resolve_report", + "invalid_post_title", + "couldnt_create_post", + "couldnt_like_post", + "couldnt_find_community", + "couldnt_get_posts", + "no_post_edit_allowed", + "couldnt_save_post", + "site_already_exists", + "couldnt_update_site", + "community_already_exists", + "community_moderator_already_exists", + "community_follower_already_exists", + "not_a_moderator", + "couldnt_update_community", + "no_community_edit_allowed", + "system_err_login", + "community_user_already_banned", + "couldnt_find_that_username_or_email", + "password_incorrect", + "registration_closed", + "invalid_password", + "passwords_dont_match", + "captcha_incorrect", + "invalid_username", + "bio_length_overflow", + "couldnt_update_user", + "couldnt_update_private_message", + "couldnt_update_post", + "couldnt_create_private_message", + "no_private_message_edit_allowed", + "post_title_too_long", + "email_already_exists", + "user_already_exists", + "number_of_users_online", + "number_of_subscribers", + "number_of_users", + "unsubscribe", + "subscribe", + "messages", + "banned_users", + "new_password", + "verify_password", + "old_password", + "search", + "top_day", + "top_week", + "top_month", + "top_year", + "top_all", + "most_comments", + "new_comments", + "active" + ], + + "ca": [ + "bot_account", + "show_bot_accounts", + "show_read_posts" + ], + + "cs": [ + "to", + "couldnt_like_comment", + "couldnt_like_post", + "number_of_users_online", + "number_of_comments", + "number_of_posts", + "number_of_subscribers", + "number_of_users" + ], + + "cy": [ + "settings", + "password", + "email_or_username", + "modlog", + "community", + "url", + "title", + "body", + "nsfw", + "save", + "subscribed", + "local", + "all", + "replies", + "mentions", + "from", + "to", + "deleted_by_creator", + "more", + "mark_as_read", + "mark_as_unread", + "reply", + "edit", + "delete", + "restore", + "yes", + "no", + "avatar", + "banner", + "display_name", + "bio", + "email", + "matrix_user", + "sort_type", + "type", + "show_nsfw", + "send_notifications_to_email", + "delete_account", + "saved", + "communities", + "users", + "theme", + "language", + "hot", + "new_", + "old", + "top", + "chat", + "admin", + "by", + "not_a_mod_or_admin", + "not_an_admin", + "couldnt_find_post", + "not_logged_in", + "site_ban", + "community_ban", + "downvotes_disabled", + "invalid_url", + "locked", + "couldnt_create_comment", + "couldnt_like_comment", + "couldnt_update_comment", + "no_comment_edit_allowed", + "couldnt_save_comment", + "couldnt_get_comments", + "report_reason_required", + "report_too_long", + "couldnt_create_report", + "couldnt_resolve_report", + "invalid_post_title", + "couldnt_create_post", + "couldnt_like_post", + "couldnt_find_community", + "couldnt_get_posts", + "no_post_edit_allowed", + "couldnt_save_post", + "site_already_exists", + "couldnt_update_site", + "invalid_community_name", + "community_already_exists", + "community_moderator_already_exists", + "community_follower_already_exists", + "not_a_moderator", + "couldnt_update_community", + "no_community_edit_allowed", + "system_err_login", + "community_user_already_banned", + "couldnt_find_that_username_or_email", + "password_incorrect", + "registration_closed", + "invalid_password", + "passwords_dont_match", + "captcha_incorrect", + "invalid_username", + "bio_length_overflow", + "couldnt_update_user", + "couldnt_update_private_message", + "couldnt_update_post", + "couldnt_create_private_message", + "no_private_message_edit_allowed", + "post_title_too_long", + "email_already_exists", + "user_already_exists", + "number_of_users_online", + "number_of_comments", + "number_of_posts", + "number_of_subscribers", + "number_of_users", + "unsubscribe", + "subscribe", + "messages", + "banned_users", + "delete_account_confirm", + "new_password", + "verify_password", + "old_password", + "show_avatars", + "search", + "send_message", + "top_day", + "top_week", + "top_month", + "top_year", + "top_all", + "most_comments", + "new_comments", + "active", + "bot_account", + "show_bot_accounts", + "show_read_posts" + ], + + "da": [ + "not_a_mod_or_admin", + "top_week", + "top_month", + "top_year", + "top_all", + "most_comments", + "new_comments", + "bot_account", + "show_bot_accounts", + "show_read_posts" + ], + + "eo": [ + "bot_account", + "show_bot_accounts", + "show_read_posts" + ], + + "fa": [ + "banner" + ], + + "fr": [ + "show_bot_accounts", + "show_read_posts" + ], + + "ga": [ + "number_of_users_online", + "number_of_comments", + "number_of_posts", + "number_of_subscribers", + "number_of_users", + "bot_account", + "show_bot_accounts", + "show_read_posts" + ], + + "hi": [ + "password", + "email_or_username", + "modlog", + "url", + "title", + "body", + "nsfw", + "save", + "subscribed", + "local", + "all", + "replies", + "mentions", + "from", + "to", + "deleted_by_creator", + "mark_as_read", + "mark_as_unread", + "delete", + "restore", + "yes", + "no", + "banner", + "display_name", + "bio", + "email", + "matrix_user", + "sort_type", + "type", + "show_nsfw", + "send_notifications_to_email", + "delete_account", + "saved", + "theme", + "language", + "hot", + "new_", + "old", + "top", + "chat", + "by", + "not_a_mod_or_admin", + "not_an_admin", + "not_logged_in", + "site_ban", + "community_ban", + "downvotes_disabled", + "invalid_url", + "couldnt_like_comment", + "couldnt_update_comment", + "no_comment_edit_allowed", + "couldnt_save_comment", + "couldnt_get_comments", + "report_reason_required", + "report_too_long", + "couldnt_create_report", + "couldnt_resolve_report", + "invalid_post_title", + "couldnt_create_post", + "couldnt_like_post", + "couldnt_get_posts", + "no_post_edit_allowed", + "couldnt_save_post", + "site_already_exists", + "couldnt_update_site", + "invalid_community_name", + "community_moderator_already_exists", + "community_follower_already_exists", + "not_a_moderator", + "couldnt_update_community", + "no_community_edit_allowed", + "system_err_login", + "community_user_already_banned", + "couldnt_find_that_username_or_email", + "password_incorrect", + "registration_closed", + "invalid_password", + "passwords_dont_match", + "captcha_incorrect", + "invalid_username", + "bio_length_overflow", + "couldnt_update_user", + "couldnt_update_private_message", + "couldnt_update_post", + "couldnt_create_private_message", + "no_private_message_edit_allowed", + "post_title_too_long", + "email_already_exists", + "user_already_exists", + "number_of_users_online", + "number_of_subscribers", + "number_of_users", + "unsubscribe", + "subscribe", + "messages", + "banned_users", + "delete_account_confirm", + "new_password", + "verify_password", + "old_password", + "search", + "top_day", + "top_week", + "top_month", + "top_year", + "top_all", + "most_comments", + "new_comments", + "active", + "bot_account", + "show_bot_accounts", + "show_read_posts" + ], + + "hr": [ + "settings", + "password", + "email_or_username", + "posts", + "comments", + "modlog", + "community", + "url", + "title", + "body", + "nsfw", + "post", + "save", + "subscribed", + "local", + "all", + "replies", + "mentions", + "from", + "to", + "deleted_by_creator", + "more", + "mark_as_read", + "mark_as_unread", + "reply", + "edit", + "delete", + "restore", + "yes", + "no", + "avatar", + "banner", + "display_name", + "bio", + "email", + "matrix_user", + "sort_type", + "type", + "show_nsfw", + "send_notifications_to_email", + "delete_account", + "saved", + "communities", + "users", + "theme", + "language", + "hot", + "new_", + "old", + "top", + "chat", + "admin", + "by", + "not_a_mod_or_admin", + "not_an_admin", + "couldnt_find_post", + "not_logged_in", + "site_ban", + "community_ban", + "downvotes_disabled", + "invalid_url", + "locked", + "couldnt_create_comment", + "couldnt_like_comment", + "couldnt_update_comment", + "no_comment_edit_allowed", + "couldnt_save_comment", + "couldnt_get_comments", + "report_reason_required", + "report_too_long", + "couldnt_create_report", + "couldnt_resolve_report", + "invalid_post_title", + "couldnt_create_post", + "couldnt_like_post", + "couldnt_find_community", + "couldnt_get_posts", + "no_post_edit_allowed", + "couldnt_save_post", + "site_already_exists", + "couldnt_update_site", + "invalid_community_name", + "community_already_exists", + "community_moderator_already_exists", + "community_follower_already_exists", + "not_a_moderator", + "couldnt_update_community", + "no_community_edit_allowed", + "system_err_login", + "community_user_already_banned", + "couldnt_find_that_username_or_email", + "password_incorrect", + "registration_closed", + "invalid_password", + "passwords_dont_match", + "captcha_incorrect", + "invalid_username", + "bio_length_overflow", + "couldnt_update_user", + "couldnt_update_private_message", + "couldnt_update_post", + "couldnt_create_private_message", + "no_private_message_edit_allowed", + "post_title_too_long", + "email_already_exists", + "user_already_exists", + "number_of_users_online", + "number_of_comments", + "number_of_posts", + "number_of_subscribers", + "number_of_users", + "unsubscribe", + "subscribe", + "messages", + "banned_users", + "delete_account_confirm", + "new_password", + "verify_password", + "old_password", + "show_avatars", + "search", + "send_message", + "top_day", + "top_week", + "top_month", + "top_year", + "top_all", + "most_comments", + "new_comments", + "active", + "bot_account", + "show_bot_accounts", + "show_read_posts" + ], + + "hu": [ + "local", + "banner", + "display_name", + "bio", + "not_a_mod_or_admin", + "invalid_url", + "report_reason_required", + "report_too_long", + "couldnt_create_report", + "couldnt_resolve_report", + "invalid_post_title", + "not_a_moderator", + "invalid_password", + "captcha_incorrect", + "bio_length_overflow", + "top_week", + "top_month", + "top_year", + "top_all", + "most_comments", + "new_comments", + "active", + "bot_account", + "show_bot_accounts", + "show_read_posts" + ], + + "ja": [ + "report_reason_required", + "report_too_long", + "couldnt_create_report", + "couldnt_resolve_report" + ], + + "ka": [ + "local", + "banner", + "display_name", + "bio", + "not_a_mod_or_admin", + "invalid_url", + "report_reason_required", + "report_too_long", + "couldnt_create_report", + "couldnt_resolve_report", + "invalid_post_title", + "invalid_community_name", + "not_a_moderator", + "invalid_password", + "captcha_incorrect", + "invalid_username", + "bio_length_overflow", + "couldnt_update_private_message", + "couldnt_create_private_message", + "no_private_message_edit_allowed", + "top_week", + "top_month", + "top_year", + "top_all", + "most_comments", + "new_comments", + "active", + "bot_account", + "show_bot_accounts", + "show_read_posts" + ], + + "km": [ + "settings", + "password", + "email_or_username", + "posts", + "comments", + "modlog", + "community", + "url", + "title", + "body", + "nsfw", + "post", + "save", + "subscribed", + "local", + "all", + "replies", + "mentions", + "from", + "to", + "deleted_by_creator", + "more", + "mark_as_read", + "mark_as_unread", + "reply", + "edit", + "delete", + "restore", + "yes", + "no", + "avatar", + "banner", + "display_name", + "bio", + "email", + "matrix_user", + "sort_type", + "type", + "show_nsfw", + "send_notifications_to_email", + "delete_account", + "saved", + "communities", + "users", + "theme", + "language", + "hot", + "new_", + "old", + "top", + "chat", + "admin", + "by", + "not_a_mod_or_admin", + "not_an_admin", + "couldnt_find_post", + "not_logged_in", + "site_ban", + "community_ban", + "downvotes_disabled", + "invalid_url", + "locked", + "couldnt_create_comment", + "couldnt_like_comment", + "couldnt_update_comment", + "no_comment_edit_allowed", + "couldnt_save_comment", + "couldnt_get_comments", + "report_reason_required", + "report_too_long", + "couldnt_create_report", + "couldnt_resolve_report", + "invalid_post_title", + "couldnt_create_post", + "couldnt_like_post", + "couldnt_find_community", + "couldnt_get_posts", + "no_post_edit_allowed", + "couldnt_save_post", + "site_already_exists", + "couldnt_update_site", + "invalid_community_name", + "community_already_exists", + "community_moderator_already_exists", + "community_follower_already_exists", + "not_a_moderator", + "couldnt_update_community", + "no_community_edit_allowed", + "system_err_login", + "community_user_already_banned", + "couldnt_find_that_username_or_email", + "password_incorrect", + "registration_closed", + "invalid_password", + "passwords_dont_match", + "captcha_incorrect", + "invalid_username", + "bio_length_overflow", + "couldnt_update_user", + "couldnt_update_private_message", + "couldnt_update_post", + "couldnt_create_private_message", + "no_private_message_edit_allowed", + "post_title_too_long", + "email_already_exists", + "user_already_exists", + "number_of_users_online", + "number_of_comments", + "number_of_posts", + "number_of_subscribers", + "number_of_users", + "unsubscribe", + "subscribe", + "messages", + "banned_users", + "delete_account_confirm", + "new_password", + "verify_password", + "old_password", + "show_avatars", + "search", + "send_message", + "top_day", + "top_week", + "top_month", + "top_year", + "top_all", + "most_comments", + "new_comments", + "active", + "bot_account", + "show_bot_accounts", + "show_read_posts" + ], + + "ml": [ + "comments", + "community", + "body", + "nsfw", + "subscribed", + "from", + "to", + "deleted_by_creator", + "matrix_user", + "sort_type", + "show_nsfw", + "by", + "couldnt_find_post", + "community_ban", + "downvotes_disabled", + "invalid_url", + "couldnt_create_comment", + "couldnt_like_comment", + "couldnt_update_comment", + "no_comment_edit_allowed", + "couldnt_save_comment", + "couldnt_get_comments", + "report_reason_required", + "report_too_long", + "couldnt_create_report", + "couldnt_resolve_report", + "invalid_post_title", + "couldnt_create_post", + "couldnt_like_post", + "couldnt_find_community", + "couldnt_get_posts", + "no_post_edit_allowed", + "couldnt_save_post", + "site_already_exists", + "couldnt_update_site", + "community_already_exists", + "community_moderator_already_exists", + "community_follower_already_exists", + "couldnt_update_community", + "no_community_edit_allowed", + "system_err_login", + "community_user_already_banned", + "couldnt_find_that_username_or_email", + "password_incorrect", + "registration_closed", + "invalid_password", + "passwords_dont_match", + "captcha_incorrect", + "invalid_username", + "bio_length_overflow", + "couldnt_update_user", + "couldnt_update_private_message", + "couldnt_update_post", + "couldnt_create_private_message", + "no_private_message_edit_allowed", + "post_title_too_long", + "user_already_exists", + "number_of_subscribers", + "unsubscribe", + "subscribe", + "delete_account_confirm", + "top_day", + "top_week", + "most_comments", + "new_comments" + ], + + "mnc": [ + "settings", + "password", + "email_or_username", + "modlog", + "community", + "url", + "title", + "body", + "nsfw", + "save", + "subscribed", + "local", + "all", + "replies", + "mentions", + "from", + "to", + "deleted_by_creator", + "more", + "mark_as_read", + "mark_as_unread", + "reply", + "edit", + "delete", + "restore", + "yes", + "no", + "avatar", + "banner", + "display_name", + "bio", + "email", + "matrix_user", + "sort_type", + "type", + "show_nsfw", + "send_notifications_to_email", + "delete_account", + "saved", + "communities", + "users", + "theme", + "language", + "hot", + "new_", + "old", + "top", + "chat", + "admin", + "by", + "not_a_mod_or_admin", + "not_an_admin", + "couldnt_find_post", + "not_logged_in", + "site_ban", + "community_ban", + "downvotes_disabled", + "invalid_url", + "locked", + "couldnt_create_comment", + "couldnt_like_comment", + "couldnt_update_comment", + "no_comment_edit_allowed", + "couldnt_save_comment", + "couldnt_get_comments", + "report_reason_required", + "report_too_long", + "couldnt_create_report", + "couldnt_resolve_report", + "invalid_post_title", + "couldnt_create_post", + "couldnt_like_post", + "couldnt_find_community", + "couldnt_get_posts", + "no_post_edit_allowed", + "couldnt_save_post", + "site_already_exists", + "couldnt_update_site", + "invalid_community_name", + "community_already_exists", + "community_moderator_already_exists", + "community_follower_already_exists", + "not_a_moderator", + "couldnt_update_community", + "no_community_edit_allowed", + "system_err_login", + "community_user_already_banned", + "couldnt_find_that_username_or_email", + "password_incorrect", + "registration_closed", + "invalid_password", + "passwords_dont_match", + "captcha_incorrect", + "invalid_username", + "bio_length_overflow", + "couldnt_update_user", + "couldnt_update_private_message", + "couldnt_update_post", + "couldnt_create_private_message", + "no_private_message_edit_allowed", + "post_title_too_long", + "email_already_exists", + "user_already_exists", + "number_of_users_online", + "number_of_subscribers", + "number_of_users", + "unsubscribe", + "subscribe", + "messages", + "banned_users", + "delete_account_confirm", + "new_password", + "verify_password", + "old_password", + "show_avatars", + "search", + "send_message", + "top_day", + "top_week", + "top_month", + "top_year", + "top_all", + "most_comments", + "new_comments", + "active", + "bot_account", + "show_bot_accounts", + "show_read_posts" + ], + + "nb": [ + "settings", + "password", + "email_or_username", + "posts", + "comments", + "modlog", + "community", + "url", + "title", + "body", + "nsfw", + "post", + "save", + "subscribed", + "local", + "all", + "replies", + "mentions", + "from", + "to", + "deleted_by_creator", + "more", + "mark_as_read", + "mark_as_unread", + "reply", + "edit", + "delete", + "restore", + "yes", + "no", + "avatar", + "banner", + "display_name", + "bio", + "email", + "matrix_user", + "sort_type", + "type", + "show_nsfw", + "send_notifications_to_email", + "delete_account", + "saved", + "communities", + "users", + "theme", + "language", + "hot", + "new_", + "old", + "top", + "chat", + "admin", + "by", + "not_a_mod_or_admin", + "not_an_admin", + "couldnt_find_post", + "not_logged_in", + "site_ban", + "community_ban", + "downvotes_disabled", + "invalid_url", + "locked", + "couldnt_create_comment", + "couldnt_like_comment", + "couldnt_update_comment", + "no_comment_edit_allowed", + "couldnt_save_comment", + "couldnt_get_comments", + "report_reason_required", + "report_too_long", + "couldnt_create_report", + "couldnt_resolve_report", + "invalid_post_title", + "couldnt_create_post", + "couldnt_like_post", + "couldnt_find_community", + "couldnt_get_posts", + "no_post_edit_allowed", + "couldnt_save_post", + "site_already_exists", + "couldnt_update_site", + "invalid_community_name", + "community_already_exists", + "community_moderator_already_exists", + "community_follower_already_exists", + "not_a_moderator", + "couldnt_update_community", + "no_community_edit_allowed", + "system_err_login", + "community_user_already_banned", + "couldnt_find_that_username_or_email", + "password_incorrect", + "registration_closed", + "invalid_password", + "passwords_dont_match", + "captcha_incorrect", + "invalid_username", + "bio_length_overflow", + "couldnt_update_user", + "couldnt_update_private_message", + "couldnt_update_post", + "couldnt_create_private_message", + "no_private_message_edit_allowed", + "post_title_too_long", + "email_already_exists", + "user_already_exists", + "number_of_users_online", + "number_of_comments", + "number_of_posts", + "number_of_subscribers", + "number_of_users", + "unsubscribe", + "subscribe", + "messages", + "banned_users", + "delete_account_confirm", + "new_password", + "verify_password", + "old_password", + "show_avatars", + "search", + "send_message", + "top_day", + "top_week", + "top_month", + "top_year", + "top_all", + "most_comments", + "new_comments", + "active", + "bot_account", + "show_bot_accounts", + "show_read_posts" + ], + + "nb_NO": [ + "settings", + "password", + "email_or_username", + "modlog", + "community", + "url", + "title", + "body", + "nsfw", + "save", + "subscribed", + "local", + "all", + "replies", + "mentions", + "from", + "to", + "deleted_by_creator", + "mark_as_read", + "mark_as_unread", + "delete", + "restore", + "yes", + "no", + "bio", + "email", + "matrix_user", + "sort_type", + "type", + "show_nsfw", + "send_notifications_to_email", + "delete_account", + "saved", + "theme", + "language", + "hot", + "new_", + "old", + "top", + "chat", + "admin", + "by", + "not_a_mod_or_admin", + "not_an_admin", + "couldnt_find_post", + "not_logged_in", + "site_ban", + "community_ban", + "downvotes_disabled", + "invalid_url", + "locked", + "couldnt_create_comment", + "couldnt_like_comment", + "couldnt_update_comment", + "no_comment_edit_allowed", + "couldnt_save_comment", + "couldnt_get_comments", + "report_reason_required", + "report_too_long", + "couldnt_create_report", + "couldnt_resolve_report", + "invalid_post_title", + "couldnt_create_post", + "couldnt_like_post", + "couldnt_find_community", + "couldnt_get_posts", + "no_post_edit_allowed", + "couldnt_save_post", + "site_already_exists", + "couldnt_update_site", + "invalid_community_name", + "community_already_exists", + "community_moderator_already_exists", + "community_follower_already_exists", + "not_a_moderator", + "couldnt_update_community", + "no_community_edit_allowed", + "system_err_login", + "community_user_already_banned", + "couldnt_find_that_username_or_email", + "password_incorrect", + "registration_closed", + "invalid_password", + "passwords_dont_match", + "captcha_incorrect", + "invalid_username", + "bio_length_overflow", + "couldnt_update_user", + "couldnt_update_private_message", + "couldnt_update_post", + "couldnt_create_private_message", + "no_private_message_edit_allowed", + "post_title_too_long", + "email_already_exists", + "user_already_exists", + "number_of_users_online", + "number_of_subscribers", + "number_of_users", + "unsubscribe", + "subscribe", + "messages", + "banned_users", + "delete_account_confirm", + "new_password", + "verify_password", + "old_password", + "search", + "top_day", + "top_week", + "top_month", + "top_year", + "top_all", + "most_comments", + "new_comments", + "active", + "show_read_posts" + ], + + "oc": [ + "email_or_username", + "modlog", + "nsfw", + "save", + "subscribed", + "local", + "all", + "from", + "to", + "deleted_by_creator", + "mark_as_read", + "mark_as_unread", + "matrix_user", + "show_nsfw", + "send_notifications_to_email", + "hot", + "old", + "top", + "chat", + "admin", + "not_a_mod_or_admin", + "not_an_admin", + "couldnt_find_post", + "site_ban", + "community_ban", + "downvotes_disabled", + "locked", + "couldnt_create_comment", + "couldnt_like_comment", + "couldnt_update_comment", + "no_comment_edit_allowed", + "couldnt_save_comment", + "couldnt_get_comments", + "report_reason_required", + "report_too_long", + "couldnt_create_report", + "couldnt_resolve_report", + "invalid_post_title", + "couldnt_create_post", + "couldnt_like_post", + "couldnt_find_community", + "couldnt_get_posts", + "no_post_edit_allowed", + "couldnt_save_post", + "site_already_exists", + "couldnt_update_site", + "community_already_exists", + "community_moderator_already_exists", + "community_follower_already_exists", + "not_a_moderator", + "couldnt_update_community", + "no_community_edit_allowed", + "system_err_login", + "community_user_already_banned", + "couldnt_find_that_username_or_email", + "password_incorrect", + "registration_closed", + "invalid_password", + "passwords_dont_match", + "captcha_incorrect", + "bio_length_overflow", + "couldnt_update_user", + "couldnt_update_private_message", + "couldnt_update_post", + "couldnt_create_private_message", + "no_private_message_edit_allowed", + "post_title_too_long", + "email_already_exists", + "number_of_subscribers", + "unsubscribe", + "subscribe", + "banned_users", + "delete_account_confirm", + "top_day", + "top_week", + "top_month", + "top_year", + "top_all", + "most_comments", + "active", + "show_read_posts" + ], + + "pl": [ + "number_of_users_online", + "number_of_comments", + "number_of_posts", + "number_of_subscribers", + "number_of_users" + ], + + "pt_BR": [ + "report_reason_required", + "report_too_long", + "couldnt_create_report", + "couldnt_resolve_report", + "top_all", + "bot_account", + "show_bot_accounts", + "show_read_posts" + ], + + "ru": [ + "number_of_users_online", + "number_of_comments", + "number_of_posts", + "number_of_subscribers", + "number_of_users" + ], + + "sk": [ + "settings", + "password", + "email_or_username", + "modlog", + "community", + "url", + "title", + "body", + "nsfw", + "save", + "subscribed", + "local", + "all", + "replies", + "mentions", + "from", + "to", + "deleted_by_creator", + "more", + "mark_as_read", + "mark_as_unread", + "reply", + "edit", + "delete", + "restore", + "yes", + "no", + "avatar", + "banner", + "display_name", + "bio", + "email", + "matrix_user", + "sort_type", + "type", + "show_nsfw", + "send_notifications_to_email", + "delete_account", + "saved", + "theme", + "language", + "hot", + "new_", + "old", + "top", + "chat", + "admin", + "by", + "not_a_mod_or_admin", + "not_an_admin", + "couldnt_find_post", + "not_logged_in", + "site_ban", + "community_ban", + "downvotes_disabled", + "invalid_url", + "locked", + "couldnt_create_comment", + "couldnt_like_comment", + "couldnt_update_comment", + "no_comment_edit_allowed", + "couldnt_save_comment", + "couldnt_get_comments", + "report_reason_required", + "report_too_long", + "couldnt_create_report", + "couldnt_resolve_report", + "invalid_post_title", + "couldnt_create_post", + "couldnt_like_post", + "couldnt_find_community", + "couldnt_get_posts", + "no_post_edit_allowed", + "couldnt_save_post", + "site_already_exists", + "couldnt_update_site", + "invalid_community_name", + "community_already_exists", + "community_moderator_already_exists", + "community_follower_already_exists", + "not_a_moderator", + "couldnt_update_community", + "no_community_edit_allowed", + "system_err_login", + "community_user_already_banned", + "couldnt_find_that_username_or_email", + "password_incorrect", + "registration_closed", + "invalid_password", + "passwords_dont_match", + "captcha_incorrect", + "invalid_username", + "bio_length_overflow", + "couldnt_update_user", + "couldnt_update_private_message", + "couldnt_update_post", + "couldnt_create_private_message", + "no_private_message_edit_allowed", + "post_title_too_long", + "email_already_exists", + "user_already_exists", + "number_of_users_online", + "number_of_comments", + "number_of_posts", + "number_of_subscribers", + "number_of_users", + "unsubscribe", + "subscribe", + "messages", + "banned_users", + "delete_account_confirm", + "new_password", + "verify_password", + "old_password", + "show_avatars", + "search", + "send_message", + "top_day", + "top_week", + "top_month", + "top_year", + "top_all", + "most_comments", + "new_comments", + "active", + "bot_account", + "show_bot_accounts", + "show_read_posts" + ], + + "sq": [ + "local", + "banner", + "display_name", + "bio", + "not_a_mod_or_admin", + "invalid_url", + "report_reason_required", + "report_too_long", + "couldnt_create_report", + "couldnt_resolve_report", + "invalid_post_title", + "not_a_moderator", + "invalid_password", + "captcha_incorrect", + "bio_length_overflow", + "top_week", + "top_month", + "top_year", + "top_all", + "most_comments", + "new_comments", + "active", + "bot_account", + "show_bot_accounts", + "show_read_posts" + ], + + "sr": [ + "settings", + "password", + "email_or_username", + "posts", + "comments", + "modlog", + "community", + "url", + "title", + "body", + "nsfw", + "post", + "save", + "subscribed", + "local", + "all", + "replies", + "mentions", + "from", + "to", + "deleted_by_creator", + "more", + "mark_as_read", + "mark_as_unread", + "reply", + "edit", + "delete", + "restore", + "yes", + "no", + "avatar", + "banner", + "display_name", + "bio", + "email", + "matrix_user", + "sort_type", + "type", + "show_nsfw", + "send_notifications_to_email", + "delete_account", + "saved", + "communities", + "users", + "theme", + "language", + "hot", + "new_", + "old", + "top", + "chat", + "admin", + "by", + "not_a_mod_or_admin", + "not_an_admin", + "couldnt_find_post", + "not_logged_in", + "site_ban", + "community_ban", + "downvotes_disabled", + "invalid_url", + "locked", + "couldnt_create_comment", + "couldnt_like_comment", + "couldnt_update_comment", + "no_comment_edit_allowed", + "couldnt_save_comment", + "couldnt_get_comments", + "report_reason_required", + "report_too_long", + "couldnt_create_report", + "couldnt_resolve_report", + "invalid_post_title", + "couldnt_create_post", + "couldnt_like_post", + "couldnt_find_community", + "couldnt_get_posts", + "no_post_edit_allowed", + "couldnt_save_post", + "site_already_exists", + "couldnt_update_site", + "invalid_community_name", + "community_already_exists", + "community_moderator_already_exists", + "community_follower_already_exists", + "not_a_moderator", + "couldnt_update_community", + "no_community_edit_allowed", + "system_err_login", + "community_user_already_banned", + "couldnt_find_that_username_or_email", + "password_incorrect", + "registration_closed", + "invalid_password", + "passwords_dont_match", + "captcha_incorrect", + "invalid_username", + "bio_length_overflow", + "couldnt_update_user", + "couldnt_update_private_message", + "couldnt_update_post", + "couldnt_create_private_message", + "no_private_message_edit_allowed", + "post_title_too_long", + "email_already_exists", + "user_already_exists", + "number_of_users_online", + "number_of_comments", + "number_of_posts", + "number_of_subscribers", + "number_of_users", + "unsubscribe", + "subscribe", + "messages", + "banned_users", + "delete_account_confirm", + "new_password", + "verify_password", + "old_password", + "show_avatars", + "search", + "send_message", + "top_day", + "top_week", + "top_month", + "top_year", + "top_all", + "most_comments", + "new_comments", + "active", + "bot_account", + "show_bot_accounts", + "show_read_posts" + ], + + "sr_Latn": [ + "settings", + "email_or_username", + "posts", + "comments", + "modlog", + "title", + "post", + "save", + "subscribed", + "local", + "all", + "replies", + "mentions", + "deleted_by_creator", + "more", + "mark_as_read", + "mark_as_unread", + "reply", + "edit", + "delete", + "restore", + "avatar", + "banner", + "display_name", + "bio", + "sort_type", + "type", + "delete_account", + "saved", + "communities", + "users", + "hot", + "new_", + "old", + "top", + "admin", + "not_a_mod_or_admin", + "not_an_admin", + "couldnt_find_post", + "not_logged_in", + "site_ban", + "community_ban", + "invalid_url", + "locked", + "couldnt_create_comment", + "couldnt_like_comment", + "couldnt_update_comment", + "no_comment_edit_allowed", + "couldnt_save_comment", + "couldnt_get_comments", + "report_reason_required", + "report_too_long", + "couldnt_create_report", + "couldnt_resolve_report", + "invalid_post_title", + "couldnt_create_post", + "couldnt_like_post", + "couldnt_find_community", + "couldnt_get_posts", + "no_post_edit_allowed", + "couldnt_save_post", + "site_already_exists", + "couldnt_update_site", + "invalid_community_name", + "community_already_exists", + "community_moderator_already_exists", + "community_follower_already_exists", + "not_a_moderator", + "couldnt_update_community", + "no_community_edit_allowed", + "system_err_login", + "community_user_already_banned", + "couldnt_find_that_username_or_email", + "password_incorrect", + "invalid_password", + "passwords_dont_match", + "captcha_incorrect", + "invalid_username", + "bio_length_overflow", + "couldnt_update_user", + "couldnt_update_private_message", + "couldnt_update_post", + "couldnt_create_private_message", + "no_private_message_edit_allowed", + "post_title_too_long", + "email_already_exists", + "user_already_exists", + "number_of_users_online", + "number_of_comments", + "number_of_posts", + "number_of_subscribers", + "number_of_users", + "unsubscribe", + "subscribe", + "messages", + "banned_users", + "delete_account_confirm", + "show_avatars", + "search", + "send_message", + "top_day", + "top_week", + "top_month", + "top_year", + "top_all", + "most_comments", + "new_comments", + "active", + "bot_account", + "show_bot_accounts", + "show_read_posts" + ], + + "th": [ + "modlog", + "nsfw", + "subscribed", + "local", + "deleted_by_creator", + "restore", + "display_name", + "matrix_user", + "sort_type", + "show_nsfw", + "send_notifications_to_email", + "hot", + "top", + "not_a_mod_or_admin", + "not_an_admin", + "couldnt_find_post", + "site_ban", + "community_ban", + "downvotes_disabled", + "invalid_url", + "locked", + "couldnt_create_comment", + "couldnt_like_comment", + "couldnt_update_comment", + "no_comment_edit_allowed", + "couldnt_get_comments", + "report_reason_required", + "couldnt_resolve_report", + "invalid_post_title", + "couldnt_like_post", + "couldnt_find_community", + "couldnt_get_posts", + "no_post_edit_allowed", + "site_already_exists", + "couldnt_update_site", + "community_already_exists", + "community_moderator_already_exists", + "community_follower_already_exists", + "not_a_moderator", + "couldnt_update_community", + "no_community_edit_allowed", + "system_err_login", + "community_user_already_banned", + "couldnt_find_that_username_or_email", + "invalid_password", + "captcha_incorrect", + "invalid_username", + "bio_length_overflow", + "couldnt_update_user", + "couldnt_update_private_message", + "couldnt_update_post", + "couldnt_create_private_message", + "no_private_message_edit_allowed", + "user_already_exists", + "number_of_users_online", + "number_of_subscribers", + "banned_users", + "delete_account_confirm", + "top_day", + "top_week", + "top_month", + "top_year", + "top_all", + "most_comments", + "new_comments", + "active" + ], + + "tr": [ + "local", + "banner", + "display_name", + "bio", + "not_a_mod_or_admin", + "invalid_url", + "report_reason_required", + "report_too_long", + "couldnt_create_report", + "couldnt_resolve_report", + "invalid_post_title", + "not_a_moderator", + "invalid_password", + "captcha_incorrect", + "bio_length_overflow", + "top_week", + "top_month", + "top_year", + "top_all", + "most_comments", + "new_comments", + "active", + "bot_account", + "show_read_posts" + ], + + "uk": [ + "local", + "banner", + "display_name", + "bio", + "not_a_mod_or_admin", + "invalid_url", + "report_reason_required", + "report_too_long", + "couldnt_create_report", + "couldnt_resolve_report", + "invalid_post_title", + "not_a_moderator", + "invalid_password", + "captcha_incorrect", + "bio_length_overflow", + "number_of_users_online", + "number_of_comments", + "number_of_posts", + "number_of_subscribers", + "number_of_users", + "top_week", + "top_month", + "top_year", + "top_all", + "most_comments", + "new_comments", + "active", + "bot_account", + "show_bot_accounts", + "show_read_posts" + ], + + "zh": [ + "show_read_posts" + ], + + "zh_Hant": [ + "password", + "email_or_username", + "community", + "url", + "title", + "body", + "nsfw", + "save", + "subscribed", + "local", + "all", + "replies", + "mentions", + "from", + "to", + "restore", + "yes", + "no", + "display_name", + "bio", + "email", + "matrix_user", + "sort_type", + "type", + "show_nsfw", + "send_notifications_to_email", + "saved", + "theme", + "language", + "hot", + "new_", + "old", + "top", + "chat", + "admin", + "by", + "not_a_mod_or_admin", + "not_an_admin", + "couldnt_find_post", + "not_logged_in", + "site_ban", + "community_ban", + "downvotes_disabled", + "invalid_url", + "couldnt_create_comment", + "couldnt_like_comment", + "couldnt_update_comment", + "no_comment_edit_allowed", + "couldnt_save_comment", + "couldnt_get_comments", + "report_reason_required", + "report_too_long", + "couldnt_create_report", + "couldnt_resolve_report", + "invalid_post_title", + "couldnt_create_post", + "couldnt_like_post", + "couldnt_find_community", + "couldnt_get_posts", + "no_post_edit_allowed", + "couldnt_save_post", + "site_already_exists", + "couldnt_update_site", + "community_already_exists", + "community_moderator_already_exists", + "community_follower_already_exists", + "not_a_moderator", + "couldnt_update_community", + "no_community_edit_allowed", + "system_err_login", + "community_user_already_banned", + "couldnt_find_that_username_or_email", + "password_incorrect", + "registration_closed", + "invalid_password", + "passwords_dont_match", + "captcha_incorrect", + "invalid_username", + "bio_length_overflow", + "couldnt_update_user", + "couldnt_update_private_message", + "couldnt_update_post", + "couldnt_create_private_message", + "no_private_message_edit_allowed", + "post_title_too_long", + "email_already_exists", + "user_already_exists", + "number_of_users_online", + "number_of_subscribers", + "number_of_users", + "unsubscribe", + "subscribe", + "messages", + "banned_users", + "delete_account_confirm", + "new_password", + "verify_password", + "old_password", + "search", + "top_day", + "top_week", + "top_month", + "top_year", + "top_all", + "most_comments", + "new_comments", + "active" + ] +} diff --git a/l10n.yaml b/l10n.yaml index 700b719..be9e344 100644 --- a/l10n.yaml +++ b/l10n.yaml @@ -1,9 +1,9 @@ -arb-dir: lib/l10n +arb-dir: assets/l10n output-dir: lib/l10n/gen template-arb-file: intl_en.arb output-localization-file: l10n.dart preferred-supported-locales: [en] output-class: L10n -untranslated-messages-file: lib/l10n/untranslated.json +untranslated-messages-file: assets/l10n/untranslated.json synthetic-package: false nullable-getter: false diff --git a/lib/l10n/intl_fa.arb b/lib/l10n/intl_fa.arb deleted file mode 100644 index 4eda878..0000000 --- a/lib/l10n/intl_fa.arb +++ /dev/null @@ -1,82 +0,0 @@ -{ - "@@locale": "fa", - "settings": "تنظیمات", - "password": "گذرواژه", - "email_or_username": "رایانامه یا نام‌کاربری", - "posts": "مطالب", - "comments": "نظرات", - "title": "عنوان", - "nsfw": "NSFW", - "post": "مطلب", - "save": "ذخیره", - "all": "همه", - "replies": "پاسخ‌ها", - "mentions": "اشاره‌ها", - "deleted_by_creator": "پاک شد", - "mark_as_read": "علامت‌گذاری به عنوان خوانده شده", - "mark_as_unread": "علامت‌گذاری به عنوان خوانده نشده", - "reply": "پاسخ", - "edit": "ویرایش", - "delete": "پاک کردن", - "restore": "بازگردانی", - "yes": "بله", - "no": "خیر", - "avatar": "آواتار", - "email": "رایانامه", - "sort_type": "نوع ترتیب", - "type": "نوع", - "show_nsfw": "نمایش محتوای NSFW", - "send_notifications_to_email": "فرستادن اعلانات به رایانامه", - "delete_account": "پاک کردن حساب", - "communities": "جوامع", - "users": "کاربران", - "language": "زبان", - "hot": "داغ", - "new_": "تازه", - "top": "بالاترین", - "chat": "گپ", - "admin": "مدیر", - "not_an_admin": "مدیر نیستید.", - "couldnt_find_post": "ناتوانی در یافتن مطلب.", - "not_logged_in": "وارد نشده‌اید.", - "site_ban": "فعالیت شما در این پایگاه ممنوع شده است", - "community_ban": "فعالیت شما در این جامعه ممنوع شده است.", - "downvotes_disabled": "رای پایین غیرفعال است", - "locked": "قفل شد", - "couldnt_create_comment": "ناتوانی در ایجاد نظر.", - "couldnt_like_comment": "ناتوانی در پسنیدن نظر.", - "couldnt_update_comment": "ناتوانی در به‌روزرسانی نظر.", - "no_comment_edit_allowed": "مجاز به ویرایش نظر نیستید.", - "couldnt_save_comment": "ناتوانی در ذخیره نظر.", - "couldnt_create_post": "ناتوانی در ایجاد مطلب.", - "couldnt_like_post": "ناتوانی در پسندیدن مطلب.", - "couldnt_find_community": "ناتوانی در یافتن جامعه.", - "couldnt_get_posts": "ناتوانی در دریافت مطالب", - "no_post_edit_allowed": "مجاز به ویرایش مطلب نیستید.", - "couldnt_save_post": "ناتوانی در ذخیره مطلب.", - "site_already_exists": "این پایگاه از قبل وجود داشته است.", - "couldnt_update_site": "ناتوانی در به‌روزرسانی پایگاه.", - "community_already_exists": "این جامعه از قبل وجود داشته است.", - "couldnt_update_community": "ناتوانی در به‌روزرسانی جامعه.", - "no_community_edit_allowed": "مجاز به ویرایش جامعه نیستید.", - "system_err_login": "خطای سامانه. سعی کنید خارج شده و دوباره وارد شوید.", - "couldnt_find_that_username_or_email": "ناتوانی در یافتن این نام کاربری یا رایانامه.", - "password_incorrect": "گذرواژه نادرست.", - "registration_closed": "نام‌نویسی بسته است", - "passwords_dont_match": "گذرواژه‌ها با هم منطبق نیستند.", - "couldnt_update_user": "ناتوانی در به‌روزرسانی کاربر.", - "couldnt_update_post": "ناتوای در به‌روزرسانی مطلب", - "email_already_exists": "این رایانامه از قبل وجود دارد.", - "user_already_exists": "این کاربر از قبل وجود دارد.", - "number_of_users_online": "{count,plural, other{{count} کاربر برخط}}", - "number_of_comments": "{count,plural, other{{count} نظر}}", - "number_of_posts": "{count,plural, other{{count} مطلب}}", - "number_of_users": "{count,plural, other{{count} کاربر}}", - "delete_account_confirm": "هشدار: این کنش، تمام اطلاعات شما را برای همیشه پاک می‌کند. برای تایید، گذرواژه خود را وارد کنید.", - "new_password": "گذرواژه جدید", - "verify_password": "تایید گذرواژه", - "old_password": "پسورد پیشین", - "show_avatars": "نمایش آواتارها", - "search": "جستجو", - "top_day": "بهترین‌های روز" -} diff --git a/lib/l10n/intl_ja.arb b/lib/l10n/intl_ja.arb deleted file mode 100644 index 1816904..0000000 --- a/lib/l10n/intl_ja.arb +++ /dev/null @@ -1,114 +0,0 @@ -{ - "@@locale": "ja", - "settings": "設定", - "password": "パスワード", - "email_or_username": "メールアドレスまたはユーザー名", - "posts": "投稿", - "comments": "コメント", - "modlog": "モデレーションログ", - "community": "コミュニティ", - "url": "URL", - "title": "タイトル", - "body": "本文", - "nsfw": "閲覧注意", - "post": "投稿", - "save": "保存", - "subscribed": "登録済み", - "all": "全て", - "replies": "返信", - "mentions": "言及", - "from": "から", - "to": "宛先", - "deleted_by_creator": "削除済み", - "more": "さらに表示", - "mark_as_read": "既読にする", - "mark_as_unread": "未読にする", - "reply": "返信", - "edit": "編集", - "delete": "削除", - "restore": "復元", - "yes": "はい", - "no": "いいえ", - "avatar": "アバター", - "banner": "バナー", - "display_name": "表示名", - "bio": "自己紹介", - "email": "メールアドレス", - "matrix_user": "Matrix のユーザーアカウント", - "sort_type": "並び順の種類", - "type": "種類", - "show_nsfw": "閲覧注意のコンテンツを表示", - "send_notifications_to_email": "通知をメール送信", - "delete_account": "アカウントを削除", - "saved": "保存済み", - "communities": "コミュニティ", - "users": "ユーザー", - "theme": "テーマ", - "language": "言語", - "hot": "人気", - "new_": "新しい順", - "old": "古い順", - "top": "トップ", - "chat": "会話", - "admin": "管理者", - "by": "投稿者", - "not_an_admin": "管理者ではありません。", - "couldnt_find_post": "投稿が見付かりません。", - "not_logged_in": "ログインしていません。", - "site_ban": "サイトへのアクセスを禁止されています", - "community_ban": "このコミュニティへのアクセスを禁止されています。", - "downvotes_disabled": "反対票を無効化", - "locked": "凍結中", - "couldnt_create_comment": "投稿を作成できませんでした。", - "couldnt_like_comment": "コメントが「いいね」できない。", - "couldnt_update_comment": "コメントが更新されない。", - "no_comment_edit_allowed": "コメントの編集権限がありません。", - "couldnt_save_comment": "コメントが保存されない。", - "couldnt_get_comments": "コメントが取得されない。", - "couldnt_create_post": "投稿ができない。", - "couldnt_like_post": "投稿が「いいね」できない。", - "couldnt_find_community": "コミュニティが見付かりません。", - "couldnt_get_posts": "投稿が取得できない", - "no_post_edit_allowed": "投稿の編集権限がありません。", - "couldnt_save_post": "投稿が保存されない。", - "site_already_exists": "サイトは既に存在します。", - "couldnt_update_site": "サイトが更新されない。", - "community_already_exists": "コミュニティは既に存在します。", - "community_moderator_already_exists": "コミュニティ管理人は既に存在します。", - "community_follower_already_exists": "コミュニティフォロワーは既に存在します。", - "couldnt_update_community": "コミュニティが更新されない。", - "no_community_edit_allowed": "コミュニティの編集許可がありません。", - "system_err_login": "システムエラーが発生しました。一度ログアウトして、再度ログインをお試しください。", - "community_user_already_banned": "コミュニティユーザーは既に禁止されています。", - "couldnt_find_that_username_or_email": "ユーザー名またはメールアドレスが見付かりません。", - "password_incorrect": "パスワードが不正です。", - "registration_closed": "登録は受け付けていません", - "passwords_dont_match": "パスワードが一致しません。", - "bio_length_overflow": "自己紹介は 300 文字までです。", - "couldnt_update_user": "ユーザーが更新されない。", - "couldnt_update_private_message": "プライベートメッセージが更新されない。", - "couldnt_update_post": "投稿が更新されない", - "couldnt_create_private_message": "プライベートメッセージが作成されない。", - "no_private_message_edit_allowed": "プライベートメッセージの編集許可がありません。", - "post_title_too_long": "投稿のタイトルが長すぎます。", - "email_already_exists": "メールアドレスが既に使用されています。", - "user_already_exists": "ユーザーは既に存在します。", - "number_of_users_online": "{count,plural, other{{count} 名のユーザーがオンライン}}", - "number_of_comments": "{count,plural, other{{count} 件のコメント}}", - "number_of_posts": "{count,plural, other{{count} 件の投稿}}", - "number_of_subscribers": "{count,plural, other{{count} 名の登録者}}", - "number_of_users": "{count,plural, other{{count} 名のユーザー}}", - "unsubscribe": "登録解除", - "subscribe": "登録", - "messages": "メッセージ", - "delete_account_confirm": "警告: あなたのデータを全て恒久的に削除します。確認のためパスワードを入力してください。", - "new_password": "新しいパスワード", - "verify_password": "パスワードの確認", - "old_password": "現在のパスワード", - "show_avatars": "アバターを表示", - "search": "検索", - "send_message": "メッセージを送信", - "top_day": "日間トップ", - "active": "活発さ", - "invalid_community_name": "無効な名前です。" -} diff --git a/lib/l10n/intl_oc.arb b/lib/l10n/intl_oc.arb deleted file mode 100644 index 5d404bc..0000000 --- a/lib/l10n/intl_oc.arb +++ /dev/null @@ -1,3 +0,0 @@ -{ - "@@locale": "oc" -} diff --git a/lib/l10n/intl_pt.arb b/lib/l10n/intl_pt.arb deleted file mode 100644 index 0967ef4..0000000 --- a/lib/l10n/intl_pt.arb +++ /dev/null @@ -1 +0,0 @@ -{} diff --git a/lib/l10n/intl_zh_Hant.arb b/lib/l10n/intl_zh_Hant.arb deleted file mode 100644 index 7a09e73..0000000 --- a/lib/l10n/intl_zh_Hant.arb +++ /dev/null @@ -1,20 +0,0 @@ -{ - "@@locale": "zh_Hant", - "posts": "貼文", - "comments": "評論", - "post": "回文", - "more": "更多", - "reply": "回覆", - "edit": "編輯", - "avatar": "虛擬化身", - "banner": "橫幅", - "communities": "社群", - "users": "使用者", - "invalid_community_name": "無效的名稱。", - "number_of_comments": "{count,plural, other{{count} 則評論}}", - "number_of_posts": "{count,plural, other{{count} 個貼文}}", - "show_avatars": "顯示頭像", - "send_message": "發送私人訊息", - "bot_account": "機器人帳號", - "show_bot_accounts": "顯示機器人帳號" -} diff --git a/lib/l10n/l10n.dart b/lib/l10n/l10n.dart index 6c1bba7..709aadb 100644 --- a/lib/l10n/l10n.dart +++ b/lib/l10n/l10n.dart @@ -44,13 +44,13 @@ const _languageNames = { 'oc': 'Occitan', 'pl': 'Polski', 'pt': 'Português', - 'pt_BR': 'Português Brasileiro', + 'pt-BR': 'Português Brasileiro', 'zh': '中文', 'fi': 'Suomi', 'fr': 'Français', 'sv': 'Svenska', 'sq': 'Shqip', - 'sr_Latn': 'srpski', + 'sr-Latn': 'srpski', 'th': 'ภาษาไทย', 'tr': 'Türkçe', 'uk': 'Українська Mова', @@ -58,13 +58,21 @@ const _languageNames = { 'nl': 'Nederlands', 'it': 'Italiano', 'sr': 'Српски', - 'zh_Hant': '繁體中文', + 'zh-Hant': '繁體中文', 'nb': 'Norwegian', - 'nb_NO': 'Norwegian Bokmål', + 'nb-NO': 'Norwegian Bokmål', 'bg': 'български', + 'cs': 'čeština', + 'cy': 'Cymraeg', + 'id': 'Bahasa Indonesia', + 'ml': 'മലയാളം', + 'sk': 'slovenčina', + 'vi': 'Tiếng Việt', + 'bn': 'বাংলা', + 'mnc': 'Manchu', }; extension LanguageName on Locale { /// returns the name of the language in the given language - String get languageName => _languageNames[toString()] ?? toString(); + String get languageName => _languageNames[toLanguageTag()] ?? toLanguageTag(); } diff --git a/lib/l10n/timeago/pl.dart b/lib/l10n/timeago/pl.dart new file mode 100644 index 0000000..ff8b728 --- /dev/null +++ b/lib/l10n/timeago/pl.dart @@ -0,0 +1,45 @@ +import 'package:timeago/timeago.dart'; + +class PlShortMessages implements LookupMessages { + @override + String prefixAgo() => ''; + @override + String prefixFromNow() => ''; + @override + String suffixAgo() => ''; + @override + String suffixFromNow() => ''; + @override + String lessThanOneMinute(int seconds) => 'teraz'; + @override + String aboutAMinute(int minutes) => '1min.'; + @override + String minutes(int minutes) => '${minutes}min.'; + @override + String aboutAnHour(int minutes) => '~1g.'; + @override + String hours(int hours) => '${hours}g.'; + @override + String aDay(int hours) => '~1d.'; + @override + String days(int days) => '${days}d.'; + @override + String aboutAMonth(int days) => '~1mies.'; + @override + String months(int months) => '${months}mies.'; + @override + String aboutAYear(int year) => '~1r.'; + @override + String years(int years) => _pluralize(years, 'lata', 'lat'); + @override + String wordSeparator() => ' '; + + String _pluralize(int n, String form1, String form2) { + // Rules as per https://www.gnu.org/software/gettext/manual/html_node/Plural-forms.html + if (n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 10 || n % 100 >= 20)) { + return '$n $form1'; + } + + return '$n $form2'; + } +} diff --git a/lib/main_common.dart b/lib/main_common.dart index 1272e3d..b5921ef 100644 --- a/lib/main_common.dart +++ b/lib/main_common.dart @@ -4,9 +4,11 @@ import 'package:flutter/material.dart'; import 'package:logging/logging.dart'; import 'package:provider/provider.dart'; import 'package:shared_preferences/shared_preferences.dart'; +import 'package:timeago/timeago.dart'; import 'app.dart'; import 'app_config.dart'; +import 'l10n/timeago/pl.dart'; import 'pages/log_console/log_console_page_store.dart'; import 'stores/accounts_store.dart'; import 'stores/config_store.dart'; @@ -18,6 +20,7 @@ Future mainCommon(AppConfig appConfig) async { final sharedPrefs = await SharedPreferences.getInstance(); _setupLogger(appConfig, logConsoleStore); + _setupTimeago(); final configStore = ConfigStore.load(sharedPrefs); final accountsStore = await AccountsStore.load(); @@ -57,3 +60,74 @@ void _setupLogger(AppConfig appConfig, LogConsolePageStore logConsoleStore) { } }; } + +void _setupTimeago() { + setLocaleMessages('ar', ArMessages()); + setLocaleMessages('ar_short', ArShortMessages()); + setLocaleMessages('az', AzMessages()); + setLocaleMessages('az_short', AzShortMessages()); + setLocaleMessages('ca', CaMessages()); + setLocaleMessages('ca_short', CaShortMessages()); + setLocaleMessages('cs', CsMessages()); + setLocaleMessages('cs_short', CsShortMessages()); + setLocaleMessages('da', DaMessages()); + setLocaleMessages('da_short', DaShortMessages()); + setLocaleMessages('de', DeMessages()); + setLocaleMessages('de_short', DeShortMessages()); + setLocaleMessages('dv', DvMessages()); + setLocaleMessages('dv_short', DvShortMessages()); + setLocaleMessages('en', EnMessages()); + setLocaleMessages('en_short', EnShortMessages()); + setLocaleMessages('es', EsMessages()); + setLocaleMessages('es_short', EsShortMessages()); + setLocaleMessages('fa', FaMessages()); + setLocaleMessages('fr', FrMessages()); + setLocaleMessages('fr_short', FrShortMessages()); + setLocaleMessages('gr', GrMessages()); + setLocaleMessages('gr_short', GrShortMessages()); + setLocaleMessages('he', HeMessages()); + setLocaleMessages('he_short', HeShortMessages()); + setLocaleMessages('hi', HiMessages()); + setLocaleMessages('hi_short', HiShortMessages()); + setLocaleMessages('id', IdMessages()); + setLocaleMessages('it', ItMessages()); + setLocaleMessages('it_short', ItShortMessages()); + setLocaleMessages('ja', JaMessages()); + setLocaleMessages('km', KmMessages()); + setLocaleMessages('km_short', KmShortMessages()); + setLocaleMessages('ko', KoMessages()); + setLocaleMessages('ku', KuMessages()); + setLocaleMessages('ku_short', KuShortMessages()); + setLocaleMessages('mn', MnMessages()); + setLocaleMessages('mn_short', MnShortMessages()); + setLocaleMessages('nl', NlMessages()); + setLocaleMessages('nl_short', NlShortMessages()); + setLocaleMessages('pl', PlMessages()); + setLocaleMessages('pl_short', PlShortMessages()); + setLocaleMessages('ro', RoMessages()); + setLocaleMessages('ro_short', RoShortMessages()); + setLocaleMessages('ru', RuMessages()); + setLocaleMessages('ru_short', RuShortMessages()); + setLocaleMessages('rw', RwMessages()); + setLocaleMessages('rw_short', RwShortMessages()); + setLocaleMessages('sv', SvMessages()); + setLocaleMessages('sv_short', SvShortMessages()); + setLocaleMessages('ta', TaMessages()); + setLocaleMessages('th', ThMessages()); + setLocaleMessages('th_short', ThShortMessages()); + setLocaleMessages('tr', TrMessages()); + setLocaleMessages('uk', UkMessages()); + setLocaleMessages('uk_short', UkShortMessages()); + setLocaleMessages('vi', ViMessages()); + setLocaleMessages('vi_short', ViShortMessages()); + setLocaleMessages('zh', ZhMessages()); + setLocaleMessages('ms-MY', MsMyMessages()); + setLocaleMessages('ms-MY_short', MsMyShortMessages()); + setLocaleMessages('nb-NO', NbNoMessages()); + setLocaleMessages('nb-NO_short', NbNoShortMessages()); + setLocaleMessages('nn-NO', NnNoMessages()); + setLocaleMessages('nn-NO_short', NnNoShortMessages()); + setLocaleMessages('pt-BR', PtBrMessages()); + setLocaleMessages('pt-BR_short', PtBrShortMessages()); + setLocaleMessages('zh-CN', ZhCnMessages()); +} diff --git a/lib/pages/inbox.dart b/lib/pages/inbox.dart index a3ba45f..c32c0fc 100644 --- a/lib/pages/inbox.dart +++ b/lib/pages/inbox.dart @@ -319,8 +319,8 @@ class PrivateMessageTile extends HookWidget { ), const Spacer(), if (pmv.value.privateMessage.updated != null) const Text('🖊 '), - Text(pmv.value.privateMessage.updated?.fancy ?? - pmv.value.privateMessage.published.fancy), + Text(pmv.value.privateMessage.updated?.timeago(context) ?? + pmv.value.privateMessage.published.timeago(context)), const SizedBox(width: 5), Transform( transform: Matrix4Transform() diff --git a/lib/pages/modlog_page.dart b/lib/pages/modlog_page.dart index c364632..fea0079 100644 --- a/lib/pages/modlog_page.dart +++ b/lib/pages/modlog_page.dart @@ -537,7 +537,7 @@ class _ModlogEntry { ), ); }, - child: Center(child: Text(when.fancyShort)), + child: Center(child: Text(when.timeagoShort(context))), ), GestureDetector( onTap: () => goToUser.byId( diff --git a/lib/util/extensions/datetime.dart b/lib/util/extensions/datetime.dart index eaf19ad..90157aa 100644 --- a/lib/util/extensions/datetime.dart +++ b/lib/util/extensions/datetime.dart @@ -1,9 +1,14 @@ -import 'package:timeago/timeago.dart' as timeago; +import 'package:flutter/material.dart'; +import 'package:timeago/timeago.dart'; extension FancyTime on DateTime { /// returns `this` time as a relative, human-readable string. In short format - String get fancyShort => timeago.format(this, locale: 'en_short'); + String timeagoShort(BuildContext context) => format( + this, + locale: '${Localizations.localeOf(context).toLanguageTag()}_short', + ); /// returns `this` time as a relative, human-readable string - String get fancy => timeago.format(this); + String timeago(BuildContext context) => + format(this, locale: Localizations.localeOf(context).toLanguageTag()); } diff --git a/lib/widgets/comment/comment.dart b/lib/widgets/comment/comment.dart index a1c1e30..2857182 100644 --- a/lib/widgets/comment/comment.dart +++ b/lib/widgets/comment/comment.dart @@ -274,7 +274,7 @@ class _CommentWidget extends StatelessWidget { const Text(' · ') else const SizedBox(width: 4), - Text(comment.published.fancy), + Text(comment.published.timeago(context)), ], ), ); diff --git a/lib/widgets/post/post_info_section.dart b/lib/widgets/post/post_info_section.dart index e79f1d5..a3b9bd3 100644 --- a/lib/widgets/post/post_info_section.dart +++ b/lib/widgets/post/post_info_section.dart @@ -100,7 +100,10 @@ class PostInfoSection extends StatelessWidget { post.creator, ), ), - TextSpan(text: ' · ${post.post.published.fancyShort}'), + TextSpan( + text: + ' · ${post.post.published.timeagoShort(context)}', + ), if (post.post.locked) const TextSpan(text: ' · 🔒'), if (post.post.stickied) const TextSpan(text: ' · 📌'), if (post.post.nsfw) const TextSpan(text: ' · '), diff --git a/lib/widgets/user_profile.dart b/lib/widgets/user_profile.dart index be41743..22ce003 100644 --- a/lib/widgets/user_profile.dart +++ b/lib/widgets/user_profile.dart @@ -278,7 +278,7 @@ class _UserOverview extends HookWidget { ), const SizedBox(height: 15), Text( - 'Joined ${userView.person.published.fancy}', + 'Joined ${userView.person.published.timeago(context)}', style: theme.textTheme.bodyText1, ), Row( diff --git a/scripts/gen_l10n_from_string.dart b/scripts/gen_l10n_from_string.dart index 3b116b4..1bcf53f 100644 --- a/scripts/gen_l10n_from_string.dart +++ b/scripts/gen_l10n_from_string.dart @@ -2,11 +2,13 @@ import 'dart:convert'; import 'dart:io'; +import 'migrate_lemmy_l10n.dart'; + const baseFile = 'intl_en.arb'; const autoGenHeader = '// FILE GENERATED AUTOMATICALLY, TO NOT EDIT BY HAND'; Future main(List args) async { - final strings = jsonDecode(await File('lib/l10n/$baseFile').readAsString()) + final strings = jsonDecode(await File('$outDir/$baseFile').readAsString()) as Map; final keys = strings.keys.where((key) => !key.startsWith('@')).toSet(); @@ -21,7 +23,8 @@ Future main(List args) async { // ignore_for_file: constant_identifier_names import 'package:flutter/material.dart'; -import 'package:flutter_gen/gen_l10n/l10n.dart'; + +import 'gen/l10n.dart'; abstract class L10nStrings { ${keys.map((key) => " static const $key = '$key';").join('\n')} @@ -30,7 +33,7 @@ ${keys.map((key) => " static const $key = '$key';").join('\n')} extension L10nFromString on String { String tr(BuildContext context) { switch (this) { -${keysWithoutVariables.map((key) => " case L10nStrings.$key:\n return L10n.of(context)!.$key;").join('\n')} +${keysWithoutVariables.map((key) => " case L10nStrings.$key:\n return L10n.of(context).$key;").join('\n')} default: return this; diff --git a/scripts/migrate_lemmy_l10n.dart b/scripts/migrate_lemmy_l10n.dart index 7f5290f..878bb68 100644 --- a/scripts/migrate_lemmy_l10n.dart +++ b/scripts/migrate_lemmy_l10n.dart @@ -182,6 +182,9 @@ const toMigrate = <_>[ const repoName = 'lemmy-translations'; const baseLanguage = 'en'; const flutterIntlPrefix = 'intl_'; +final outDir = RegExp('^arb-dir: (.+)') + .firstMatch(File('l10n.yaml').readAsStringSync())! + .group(1)!; Future main(List args) async { final force = args.contains('-f') || args.contains('--force'); @@ -200,7 +203,7 @@ Future main(List args) async { await Process.run('npx', [ 'prettier', - 'lib/l10n/*.arb', + '$outDir/*.arb', '--parser', 'json', '--write', @@ -250,7 +253,7 @@ Future>> loadLemmyStrings() async { /// Map> + some metadata Future>> loadLemmurStrings() async { - final translationsDir = Directory('lib/l10n'); + final translationsDir = Directory(outDir); final translations = >{}; await for (final file in translationsDir.list()) { @@ -371,7 +374,7 @@ Future save(Map> lemmurTranslations) async { } for (final language in lemmurTranslations.keys) { - await File('lib/l10n/$flutterIntlPrefix$language.arb') + await File('$outDir/$flutterIntlPrefix$language.arb') .writeAsString(jsonEncode(lemmurTranslations[language])); } }